Error while doing a post using nntp provider
yllee75 <[email protected]>
| Newsgroups | gmane.comp.java.classpath.extensions.javamail |
|---|---|
| Message-ID | <[email protected]> |
When I try to post a new article using GNU JavaMail release 1.0, I got the following error DEBUG: getProvider(): javax.mail.Provider[TRANSPORT,nntp-post,gnu.mail.providers.nntp.NNTPTransport,[email protected]] nntp: <200 NNTP-Server Classic Hamster Vr. 2.0 (Build 2.0.0.1) (post ok) says: Hi! nntp: >AUTHINFO USER yllee nntp: <381 More authentication information required nntp: >AUTHINFO PASS password nntp: <281 Authentication accepted nntp: >POST nntp: <340 send article to be posted. End with <CR-LF>.<CR-LF> javax.mail.MessagingException: ISO8859_1 ; nested exception is: java.io.UnsupportedEncodingException: ISO8859_1 at gnu.mail.providers.nntp.NNTPTransport.sendMessage(NNTPTransport.java:206) at TestPosting2.main(TestPosting2.java:28) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:78) nested exception is: java.io.UnsupportedEncodingException: ISO8859_1 at sun.io.Converters.getConverterClass(Converters.java:215) at sun.io.Converters.newConverter(Converters.java:248) at sun.io.CharToByteConverter.getConverter(CharToByteConverter.java:64) at sun.nio.cs.StreamEncoder$ConverterSE.<init>(StreamEncoder.java:189) at sun.nio.cs.StreamEncoder$ConverterSE.<init>(StreamEncoder.java:172) at sun.nio.cs.StreamEncoder.forOutputStreamWriter(StreamEncoder.java:72) at java.io.OutputStreamWriter.<init>(OutputStreamWriter.java:82) at gnu.mail.handler.Text.writeTo(Text.java:141) at javax.activation.ObjectDataContentHandler.writeTo(ObjectDataContentHandler.java:155) at javax.activation.DataHandler.writeTo(DataHandler.java:280) at javax.mail.internet.MimeMessage.writeTo(MimeMessage.java:1697) at javax.mail.internet.MimeMessage.writeTo(MimeMessage.java:1639) at gnu.mail.providers.nntp.NNTPTransport.sendMessage(NNTPTransport.java:195) at TestPosting2.main(TestPosting2.java:28) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:78) java.io.UnsupportedEncodingException: ISO8859_1 at sun.io.Converters.getConverterClass(Converters.java:215) at sun.io.Converters.newConverter(Converters.java:248) at sun.io.CharToByteConverter.getConverter(CharToByteConverter.java:64) at sun.nio.cs.StreamEncoder$ConverterSE.<init>(StreamEncoder.java:189) at sun.nio.cs.StreamEncoder$ConverterSE.<init>(StreamEncoder.java:172) at sun.nio.cs.StreamEncoder.forOutputStreamWriter(StreamEncoder.java:72) at java.io.OutputStreamWriter.<init>(OutputStreamWriter.java:82) at gnu.mail.handler.Text.writeTo(Text.java:141) at javax.activation.ObjectDataContentHandler.writeTo(ObjectDataContentHandler.java:155) at javax.activation.DataHandler.writeTo(DataHandler.java:280) at javax.mail.internet.MimeMessage.writeTo(MimeMessage.java:1697) at javax.mail.internet.MimeMessage.writeTo(MimeMessage.java:1639) at gnu.mail.providers.nntp.NNTPTransport.sendMessage(NNTPTransport.java:195) at TestPosting2.main(TestPosting2.java:28) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:324) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:78) Process finished with exit code 0 Below is the sample code try { Properties props = new Properties(); Session session = Session.getDefaultInstance(props); session.setDebug(true); // create message javax.mail.internet.MimeMessage message = new javax.mail.internet.MimeMessage(session); message.setFrom(new javax.mail.internet.InternetAddress("[email protected]")); Address[] recipients = {new NewsAddress("test")}; message.setRecipients(MimeMessage.RecipientType.NEWSGROUPS, recipients); message.setSubject("Test"); message.setText("This is a test.", "iso-8859-1"); URLName url = new URLName("nntp-post://yllee:password@localhost"); // get transport Transport transport = session.getTransport(url); transport.connect(); transport.sendMessage(message, message.getAllRecipients()); transport.close(); } catch (MessagingException e) { e.printStackTrace(); Exception e2 = e.getNextException(); if (e2 != null) { e2.printStackTrace(); } } Thank you.