Hi,

My system currently is Jboss 2.4.0.23 running on Linux and client running in VAJ 3.5.3 in Win2000. And I am  still trying to get JBossMQ to work at least little bit. Does anyone have better luck and have it actually working? What protocol you use RMI, OIL or UIL?

Our system desing is so that clients call methods in stateful session bean that can cause JMS messages to sent out to all clients (ObjectMessage into Topic), message are beeing sent from this stateful bean or from stateless bean it calls.

When testing with 2 clients and with RMI get 100% times following message into server console and other client stops receiving messages. For three it so far has been so that one client stops receiving messages and 2 continue receiving them, but haven't done so much testing with 3 and at least once not single one of my clients received any messages..
 

<Server console output>
[Default] JBoss 2.4 BETA(Rel_2_4_0_23) Started in 0m:49s
[Default] SpyConnectionFactoryObjectFactory->getObjectInstance()
[Default] SpyDestinationObjectFactory->getObjectInstance()
[Default] Starting the the Client Thread Pool
[Default] SpyConnectionFactoryObjectFactory->getObjectInstance()
[Default] SpyDestinationObjectFactory->getObjectInstance()
[Default] SpyConnectionFactoryObjectFactory->getObjectInstance()
[Default] SpyDestinationObjectFactory->getObjectInstance()
[Default] Starting connection, ClientID=ID3
[ClientConsumer] Could not send messages to a receiver.
java.lang.Exception: java.lang.IllegalArgumentException
        java.lang.Throwable()
        java.lang.Exception()
        java.lang.RuntimeException()
        java.lang.IllegalArgumentException()
        java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object [])
        void sun.rmi.server.UnicastServerRef.dispatch(java.rmi.Remote, java.rmi.server.RemoteCall)
        java.lang.Object sun.rmi.transport.Transport$1.run()
        java.lang.Object java.security.AccessController.doPrivileged(java.security.PrivilegedExceptionAction, java.security.AccessControlContext)
        boolean sun.rmi.transport.Transport.serviceCall(java.rmi.server.RemoteCall)
        void sun.rmi.transport.tcp.TCPTransport.handleMessages(sun.rmi.transport.Connection, boolean)
        void sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run()
        void java.lang.Thread.run()
 
 
        at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:245)
        at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:220)
        at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:122)
        at org.jbossmq.distributed.server.ConnectionReceiverRMIImpl_Stub.receive(Unknown Source)
        at org.jbossmq.server.ClientConsumer.run(ClientConsumer.java:357)
        at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:642)
        at java.lang.Thread.run(Thread.java:484)
[JMSServer] The connection to client ID2 failed.
</server console output>
 

Default OIL is worse.. it receives messages quite happily for while, until it throws 3 times same exception (all clients get same 3 and it is always same 3 no matter how many messages have been delivered). And after this all clients stop receiving messages.

<exception>
java.io.EOFException
 java.lang.Throwable()
 java.lang.Exception()
 java.io.IOException()
 java.io.EOFException()
 byte java.io.DataInputStream.readByte()
 byte java.io.ObjectInputStream.readByte()
 void org.jbossmq.distributed.server.ConnectionReceiverOIL.run()
 void java.lang.Thread.run()
</exception>

And when close clients (and release resources) get following output to console window.

<output>
Default] ejbRemove()
[Default] Closing sessions, ClientID=ID13
[Default] Closed sessions
[Default] Disconnecting from server
[Default] Disconnected from server
[Default]       Done.
[Default] ejbRemove()
[Default] Closing sessions, ClientID=ID12
[Default] Closed sessions
[Default] Disconnecting from server
[Default] Disconnected from server
[Default]       Done.
[Default] IOException while reading the answer
[Default] java.io.EOFException
[Default]       at java.io.ObjectInputStream.readByte(ObjectInputStream.java:1907)
[Default]
[Default]       at org.jbossmq.distributed.server.ConnectionReceiverOILClient.waitAnswer(ConnectionReceiverOILClient.java:85)
[Default]
[Default]       at org.jbossmq.distributed.server.ConnectionReceiverOILClient.receive(ConnectionReceiverOILClient.java:128)
[Default]
[Default]       at org.jbossmq.server.ClientConsumer.run(ClientConsumer.java:357)
[Default]
[Default]       at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:642)
[Default]
[Default]       at java.lang.Thread.run(Thread.java:484)
[Default]
[ClientConsumer] Could not send messages to a receiver.
java.rmi.RemoteException: Cannot contact the remote object
        at org.jbossmq.distributed.server.ConnectionReceiverOILClient.waitAnswer(ConnectionReceiverOILClient.java:95)
        at org.jbossmq.distributed.server.ConnectionReceiverOILClient.receive(ConnectionReceiverOILClient.java:128)
        at org.jbossmq.server.ClientConsumer.run(ClientConsumer.java:357)
        at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:642)
        at java.lang.Thread.run(Thread.java:484)
[JMSServer] The connection to client ID7 failed.
[ClientConsumer] Could not send messages to a receiver.
java.io.IOException: Broken pipe
        at java.net.SocketOutputStream.socketWrite(Native Method)
        at java.net.SocketOutputStream.write(SocketOutputStream.java:83)
        at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:72)
        at java.io.BufferedOutputStream.write(BufferedOutputStream.java:116)
        at java.io.ObjectOutputStream.drain(ObjectOutputStream.java:1477)
        at java.io.ObjectOutputStream.setBlockData(ObjectOutputStream.java:1500)
        at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:407)
        at org.jbossmq.distributed.server.ConnectionReceiverOILClient.receive(ConnectionReceiverOILClient.java:127)
        at org.jbossmq.server.ClientConsumer.run(ClientConsumer.java:357)
        at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:642)
        at java.lang.Thread.run(Thread.java:484)
[JMSServer] The connection to client ID7 failed.

</output>
 

--
    jK.MkIII _______________________________________________ JBoss-user mailing list [EMAIL PROTECTED] http://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to