activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Strachan" <james.strac...@gmail.com>
Subject Re: Failure in wire format negotiation
Date Mon, 11 Jun 2007 13:54:56 GMT
With some development work this could work in the future; but usually
you should upgrade the broker first (not the client).

The broker can typically deal with older clients; though the broker
doesn't always deal with newer clients than it. (Its also usually way
simpler to upgrade the broker than the client, as there's usually far
fewer brokers than clients).


On 6/11/07, Manuel Teira <mteira@tid.es> wrote:
> Hello.
>
> Trying to connect from a 4.1.1 client (running as a servlet in a Tomcat
> container) to a 4.0.2 broker, I'm getting the following stack trace in
> the server:
>
> Exception in thread "ActiveMQ Transport: tcp:///127.0.0.1:50548"
> java.lang.IllegalArgumentException: Invalid version: 2, could not load
> org.apache.activemq.openwire.v2.MarshallerFactory
>         at
> org.apache.activemq.openwire.OpenWireFormat.setVersion(OpenWireFormat.java:329)
>         at
> org.apache.activemq.openwire.OpenWireFormat.renegociatWireFormat(OpenWireFormat.java:569)
>         at
> org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:108)
>         at
> org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:122)
>         at
> org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:87)
>         at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:127)
>         at java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.ClassNotFoundException:
> org.apache.activemq.openwire.v2.MarshallerFactory
>         at
> org.apache.activemq.util.ClassLoading.loadClass(ClassLoading.java:104)
>         at
> org.apache.activemq.openwire.OpenWireFormat.setVersion(OpenWireFormat.java:327)
>         ... 6 more
> Exception in thread "ActiveMQ Transport: tcp:///127.0.0.1:50550"
> java.lang.IllegalArgumentException: Invalid version: 2, could not load
> org.apache.activemq.openwire.v2.MarshallerFactory
>         at
> org.apache.activemq.openwire.OpenWireFormat.setVersion(OpenWireFormat.java:329)
>         at
> org.apache.activemq.openwire.OpenWireFormat.renegociatWireFormat(OpenWireFormat.java:569)
>         at
> org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:108)
>         at
> org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:122)
>         at
> org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:87)
>         at
> org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:127)
>         at java.lang.Thread.run(Unknown Source)
> Caused by: java.lang.ClassNotFoundException:
> org.apache.activemq.openwire.v2.MarshallerFactory
>         at
> org.apache.activemq.util.ClassLoading.loadClass(ClassLoading.java:104)
>         at
> org.apache.activemq.openwire.OpenWireFormat.setVersion(OpenWireFormat.java:327)
>         ... 6 more
>
> Shouldn't they negociate the wire format and fallback to the highest
> known at both sides?
>
> Logs from the negotiation attempt at the server:
>
>
> [DEBUG][2007/06/11.13:26:40.075][ActiveMQ Transport Server:
> tcp://dispacher-ps:61635]Sending: WireFormatInfo { version=1,
> properties={TightEncodingEnabled=true, TcpNoDelayEnabled=true,
> SizePrefixDisabled=false, StackTraceEnabled=true,
> MaxInactivityDuration=30000, CacheEnabled=true}, magic=[A,c,t,i,v,e,M,Q]}
> [DEBUG][2007/06/11.13:26:40.077][ActiveMQ Transport:
> tcp:///127.0.0.1:50546]Received WireFormat: WireFormatInfo { version=2,
> properties={TightEncodingEnabled=true, CacheSize=1024,
> TcpNoDelayEnabled=true, SizePrefixDisabled=false,
> StackTraceEnabled=true, MaxInactivityDuration=30000, CacheEnabled=true},
> magic=[A,c,t,i,v,e,M,Q]}
> [DEBUG][2007/06/11.13:26:40.077][ActiveMQ Transport:
> tcp:///127.0.0.1:50546]tcp:///127.0.0.1:50546 before negotiation:
> OpenWireFormat{version=1, cacheEnabled=false, stackTraceEnabled=false,
> tightEncodingEnabled=false, sizePrefixDisabled=false}
> [DEBUG][2007/06/11.13:26:55.080][ActiveMQ Transport Server:
> tcp://dispacher-ps:61635]Transport failed: java.io.IOException: Wire
> format negociation timeout: peer did not send his wire format.(Wire
> format negociation timeout: peer did not send his wire format.)
>
>
> In the client side, just a java.io.EOFException trying to create the JMS
> Session.
>
> Any idea?
>
> Regards.
>
>
>


-- 
James
-------
http://macstrac.blogspot.com/

Mime
View raw message