Hi Jackey, I had the same problem too. Until someone from the ActiveMQ Team responded to try out the new 5.1
Guess what? I m not getting those funny messages anymore. Refer by searching this text: ActiveMQConnection:1653 - Async exception with no exception listener: java.net.SocketException: socket closed Regards Hatta Jackey Ding wrote: > > Hi, > > I have an application which having an web service using SOAP/JMS connect > to > activeMQ. When no client call that WS too long, the error will happen. It > seems like the JMS Channel open too long with no message transport on it. > > 2008-4-25 13:19:22 org.apache.activemq.ActiveMQConnection onAsyncException > 警告: Async exception with no exception listener: > org.apache.activemq.transport.InactivityIOException: Channel was inactive > for too long: localhost/12 > 7.0.0.1:61616 > org.apache.activemq.transport.InactivityIOException: Channel was inactive > for too long: localhost/127.0.0.1:61616 > at > org.apache.activemq.transport.InactivityMonitor$4.run(InactivityMonitor.java:108) > 2008-4-25 13:19:22 > org.apache.cxf.transport.jms.JMSDestination$JMSListenerThread run > 警告: Null message received from message consumer. > 2008-4-25 13:19:22 org.apache.activemq.ActiveMQConnection onAsyncException > 警告: Async exception with no exception listener: java.net.SocketException: > socket closed > java.net.SocketException: socket closed > at java.net.SocketInputStream.socketRead0(Native Method) > at java.net.SocketInputStream.read(SocketInputStream.java:129) > at > org.apache.activemq.transport.tcp.TcpBufferedInputStream.fill(TcpBufferedInputStream.java:50) > at > org.apache.activemq.transport.tcp.TcpBufferedInputStream.read(TcpBufferedInputStream.java:58) > at java.io.DataInputStream.readInt(DataInputStream.java:353) > at > org.apache.activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:268) > at > org.apache.activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java:192) > at > org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:184) > at > org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:172) > at java.lang.Thread.run(Thread.java:595) > > > My WSDL is as below > > <?xml version="1.0" encoding="UTF-8"?> > <!-- > Licensed to the Apache Software Foundation (ASF) under one > or more contributor license agreements. See the NOTICE file > distributed with this work for additional information > regarding copyright ownership. The ASF licenses this file > to you under the Apache License, Version 2.0 (the > "License"); you may not use this file except in compliance > with the License. You may obtain a copy of the License at > > http://www.apache.org/licenses/LICENSE-2.0 > > Unless required by applicable law or agreed to in writing, > software distributed under the License is distributed on an > "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY > KIND, either express or implied. See the License for the > specific language governing permissions and limitations > under the License. > --> > <wsdl:definitions name="JMSGreeterService" > targetNamespace="http://cxf.apache.org/jms_greeter" > xmlns="http://schemas.xmlsoap.org/wsdl/" > xmlns:jms="http://cxf.apache.org/transports/jms" > xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" > xmlns:tns="http://cxf.apache.org/jms_greeter" > xmlns:xsd="http://www.w3.org/2001/XMLSchema" > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" > xmlns:x1="http://cxf.apache.org/jms_greeter/types"> > <wsdl:types> > <schema targetNamespace="http://cxf.apache.org/jms_greeter/types" > xmlns="http://www.w3.org/2001/XMLSchema" > elementFormDefault="qualified"> > <element name="sayHi"> > <complexType/> > </element> > <element name="sayHiResponse"> > <complexType> > <sequence> > <element name="responseType" type="xsd:string"/> > </sequence> > </complexType> > </element> > <element name="greetMe"> > <complexType> > <sequence> > <element name="requestType" type="xsd:string"/> > </sequence> > </complexType> > </element> > <element name="greetMeResponse"> > <complexType> > <sequence> > <element name="responseType" type="xsd:string"/> > </sequence> > </complexType> > </element> > <element name="greetMeOneWay"> > <complexType> > <sequence> > <element name="requestType" type="xsd:string"/> > </sequence> > </complexType> > </element> > </schema> > </wsdl:types> > > > <wsdl:message name="sayHiRequest"> > <wsdl:part element="x1:sayHi" name="in"/> > </wsdl:message> > <wsdl:message name="sayHiResponse"> > <wsdl:part element="x1:sayHiResponse" name="out"/> > </wsdl:message> > <wsdl:message name="greetMeRequest"> > <wsdl:part element="x1:greetMe" name="in"/> > </wsdl:message> > <wsdl:message name="greetMeResponse"> > <wsdl:part element="x1:greetMeResponse" name="out"/> > </wsdl:message> > <wsdl:message name="greetMeOneWayRequest"> > <wsdl:part element="x1:greetMeOneWay" name="in"/> > </wsdl:message> > > <wsdl:portType name="JMSGreeterPortType"> > <wsdl:operation name="sayHi"> > <wsdl:input message="tns:sayHiRequest" name="sayHiRequest"/> > <wsdl:output message="tns:sayHiResponse" > name="sayHiResponse"/> > </wsdl:operation> > > <wsdl:operation name="greetMe"> > <wsdl:input message="tns:greetMeRequest" > name="greetMeRequest"/> > <wsdl:output message="tns:greetMeResponse" > name="greetMeResponse"/> > </wsdl:operation> > > <wsdl:operation name="greetMeOneWay"> > <wsdl:input message="tns:greetMeOneWayRequest" > name="greetMeOneWayRequest"/> > </wsdl:operation> > </wsdl:portType> > > <wsdl:binding name="JMSGreeterPortBinding" > type="tns:JMSGreeterPortType"> > <soap:binding style="document" transport=" > http://cxf.apache.org/transport/jms"/<http://cxf.apache.org/transport/jms%22/> >> > > <wsdl:operation name="greetMe"> > <soap:operation soapAction="" style="document"/> > <wsdl:input name="greetMeRequest"> > <soap:body use="literal"/> > </wsdl:input> > <wsdl:output name="greetMeResponse"> > <soap:body use="literal"/> > </wsdl:output> > </wsdl:operation> > > <wsdl:operation name="sayHi"> > <soap:operation soapAction="" style="document"/> > <wsdl:input name="sayHiRequest"> > <soap:body use="literal"/> > </wsdl:input> > <wsdl:output name="sayHiResponse"> > <soap:body use="literal"/> > </wsdl:output> > </wsdl:operation> > > <wsdl:operation name="greetMeOneWay"> > <soap:operation soapaction="" style="document"/> > <wsdl:input name="greetMeOneWayRequest"> > <soap:body use="literal"/> > </wsdl:input> > </wsdl:operation> > </wsdl:binding> > > <wsdl:service name="JMSGreeterService"> > <wsdl:port binding="tns:JMSGreeterPortBinding" > name="GreeterPort"> > <jms:address > destinationStyle="queue" > jndiConnectionFactoryName="ConnectionFactory" > > jndiDestinationName="dynamicQueues/test.cxf.jmstransport.queue"> > > <jms:JMSNamingProperty > name="java.naming.factory.initial" > value="org.apache.activemq.jndi.ActiveMQInitialContextFactory"/> > <jms:JMSNamingProperty name="java.naming.provider.url" > value="tcp://yfgm-2003b:61616"/> > > </jms:address> > </wsdl:port> > </wsdl:service> > </wsdl:definitions> > > Thanks & best regards > Jackey > > -- View this message in context: http://www.nabble.com/What-cause-this-error-happen--tp16930799s2354p16931890.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.