Hi! This is my first post to the Mina ML. I am currently evaluating Mina and Vysper. I am trying to setup the basic XMPP PubSub demo as described here:
http://www.igniterealtime.org/community/message/196048#196048 I'm running Vysper 0.5, and using the Smackx-pubsub-0.6 client library, all on the same host. Using the users created in ServerMain I am able to connect to my local Vysper instance, however when I execute the following line the connection is terminated and my client dies: Node myNode = manager.createNode("TestNode", form); Error message is: java.net.SocketException: Connection closed by remote host at sun.security.ssl.SSLSocketImpl.checkWrite(SSLSocketImpl.java:1301) at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:62) at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:220) at sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:290) at sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:294) at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:140) at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:229) at java.io.BufferedWriter.flush(BufferedWriter.java:253) at org.jivesoftware.smack.PacketWriter.writePackets(PacketWriter.java:274) at org.jivesoftware.smack.PacketWriter.access$000(PacketWriter.java:40) at org.jivesoftware.smack.PacketWriter$1.run(PacketWriter.java:87) java.io.EOFException: no more data available - expected end tag </stream:stream> to close start tag <stream:stream> from line 1, parser stopped on END_TAG seen ...to="[email protected]/ba1f394ff13848a6879468a34a85b585"></presence>... @1:934 at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:3035) at org.xmlpull.mxp1.MXParser.more(MXParser.java:3046) at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1144) at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093) at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:368) at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:44) at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:76) No response from server.: at org.jivesoftware.smackx.packet.SyncPacketSend.getReply(SyncPacketSend.java:50) at org.jivesoftware.smackx.packet.SyncPacketSend.getReply(SyncPacketSend.java:61) at org.jivesoftware.smackx.pubsub.PubSubManager.sendPubsubPacket(PubSubManager.java:324) at org.jivesoftware.smackx.pubsub.PubSubManager.sendPubsubPacket(PubSubManager.java:318) at org.jivesoftware.smackx.pubsub.PubSubManager.createNode(PubSubManager.java:134) at org.apache.vysper.demo.pubsub.client.PubsubHelloWorld.run(PubsubHelloWorld.java:36) at org.apache.vysper.demo.pubsub.client.PubsubHelloWorld.main(PubsubHelloWorld.java:21) And Vysper tells me this: 14:42:55,966 | INFO | org.apache.vysper.xmpp.modules.core.im.handler.PresenceAvailabilityHandler | [email protected]/ba1f394ff13848a6879468a34a85b585 has become available 14:43:01,202 | DEBUG | org.apache.vysper.xmpp.protocol.SessionStateHolder | session state changed to = CLOSED 14:43:01,203 | WARN | org.apache.mina.filter.logging.LoggingFilter | EXCEPTION : org.apache.mina.core.write.WriteToClosedSessionException at org.apache.mina.core.polling.AbstractPollingIoProcessor.clearWriteRequestQueue(AbstractPollingIoProcessor.java:573) at org.apache.mina.core.polling.AbstractPollingIoProcessor.removeNow(AbstractPollingIoProcessor.java:525) at org.apache.mina.core.polling.AbstractPollingIoProcessor.removeSessions(AbstractPollingIoProcessor.java:497) at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:61) at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:974) at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:636) 14:43:01,203 | WARN | org.apache.vysper.mina.XmppIoHandlerAdapter | error caught on transportation layer: {} org.apache.mina.core.write.WriteToClosedSessionException at org.apache.mina.core.polling.AbstractPollingIoProcessor.clearWriteRequestQueue(AbstractPollingIoProcessor.java:573) at org.apache.mina.core.polling.AbstractPollingIoProcessor.removeNow(AbstractPollingIoProcessor.java:525) at org.apache.mina.core.polling.AbstractPollingIoProcessor.removeSessions(AbstractPollingIoProcessor.java:497) at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:61) at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:974) at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) at java.lang.Thread.run(Thread.java:636) 14:43:01,205 | WARN | org.apache.vysper.mina.codec.StanzaWriterProtocolEncoder | unhandled StanzaWriterProtocolEncoder.dispose() 14:43:01,206 | WARN | org.apache.vysper.xmpp.modules.core.base.handler.XMPPCoreStanzaHandler | no 'from' attribute, and cannot uniquely determine sending resource for initiating entity [email protected] in session 17cca8fbfbed4bab9f265fc609019357 14:43:01,206 | DEBUG | org.apache.vysper.xmpp.protocol.SessionStateHolder | session state changed to = CLOSED Here is the whole PubSub Helloworld class adapted from the ignite post: http://pastebin.com/ui7gHUfg I'm less interested in debugging this demo code rather I am trying to get to get the basics of XMPP PubSub working with Vysper. Any tips/suggestions/working solutions would be greatly appreciated . thx ken
