[jboss-user] [Remoting] - java.net.SocketException: Connection reset
mrbalde
do-not-reply at jboss.com
Wed Oct 29 09:36:55 EDT 2008
Hi all,
I hope someone can help me to understand following problem. We use JBoss 4.2.3 with JBoss Remoting 2.2.2.SP8 and JDK 1.6.0.07. We use Linux on the server side and Windows on the client side. We have a Swing client which connects to JBoss and invokes methods on stateless session beans. We use EJB3 stateless session beans. From time to time our users get following exception:
| org.jboss.remoting.CannotConnectException: Can not get connection to server. Problem establishing socket connection for InvokerLocator [socket://10.10.81.1:3873/?clientMaxPoolSize=300&socket.check_connection=true&timeout=600000]
| at org.jboss.remoting.transport.socket.MicroSocketClientInvoker.transport(MicroSocketClientInvoker.java:579)
| at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:122)
| at org.jboss.remoting.Client.invoke(Client.java:1634)
| at org.jboss.remoting.Client.invoke(Client.java:548)
| at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:62)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:67)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:53)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:74)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.stateless.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:107)
| at $Proxy5.invoke(Unknown Source)
| at com.xyz.core.tunnel.TunnelProxy.invoke(TunnelProxy.java:92)
| at $Proxy20.findIntelli(Unknown Source)
| at com.xyz.zyx.seaimport.client.SeaImportHomeModel.search(SeaImportHomeModel.java:175)
| at com.xyz.core.desktop.SearchableHomeModel$SearchTask.doInBackground(SearchableHomeModel.java:367)
| at com.xyz.core.desktop.SearchableHomeModel$SearchTask.doInBackground(SearchableHomeModel.java:342)
| at org.jdesktop.swingworker.SwingWorker$1.call(Unknown Source)
| at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
| at java.util.concurrent.FutureTask.run(Unknown Source)
| at org.jdesktop.swingworker.SwingWorker.run(Unknown Source)
| at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
| at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
| at java.lang.Thread.run(Unknown Source)
| Caused by: java.lang.reflect.InvocationTargetException
| at sun.reflect.GeneratedConstructorAccessor31.newInstance(Unknown Source)
| at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
| at java.lang.reflect.Constructor.newInstance(Unknown Source)
| at org.jboss.remoting.transport.socket.SocketClientInvoker.createClientSocket(SocketClientInvoker.java:157)
| at org.jboss.remoting.transport.socket.MicroSocketClientInvoker.getConnection(MicroSocketClientInvoker.java:854)
| at org.jboss.remoting.transport.socket.MicroSocketClientInvoker.transport(MicroSocketClientInvoker.java:569)
| at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:122)
| at org.jboss.remoting.Client.invoke(Client.java:1634)
| at org.jboss.remoting.Client.invoke(Client.java:548)
| at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:62)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:67)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.security.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:53)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:74)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.stateless.StatelessRemoteProxy.invoke(StatelessRemoteProxy.java:107)
| at $Proxy5.invoke(Unknown Source)
| at com.xyz.core.tunnel.TunnelProxy.invoke(TunnelProxy.java:92)
| at $Proxy20.findIntelli(Unknown Source)
| at com.xyz.zyx.seaimport.client.SeaImportHomeModel.search(SeaImportHomeModel.java:175)
| at com.xyz.core.desktop.SearchableHomeModel$SearchTask.doInBackground(SearchableHomeModel.java:367)
| at com.xyz.core.desktop.SearchableHomeModel$SearchTask.doInBackground(SearchableHomeModel.java:342)
| at org.jdesktop.swingworker.SwingWorker$1.call(Unknown Source)
| at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
| at java.util.concurrent.FutureTask.run(Unknown Source)
| at org.jdesktop.swingworker.SwingWorker.run(Unknown Source)
| at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
| at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
| at java.lang.Thread.run(Unknown Source)
| at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:74)
| ... 21 more
| Caused by: java.net.SocketException: Connection reset
| at java.net.SocketInputStream.read(Unknown Source)
| at java.io.BufferedInputStream.fill(Unknown Source)
| at java.io.BufferedInputStream.read1(Unknown Source)
| at java.io.BufferedInputStream.read(Unknown Source)
| at java.io.ObjectInputStream$PeekInputStream.read(Unknown Source)
| at java.io.ObjectInputStream$PeekInputStream.readFully(Unknown Source)
| at java.io.ObjectInputStream$BlockDataInputStream.readShort(Unknown Source)
| at java.io.ObjectInputStream.readStreamHeader(Unknown Source)
| at java.io.ObjectInputStream.<init>(Unknown Source)
| at org.jboss.remoting.loading.ObjectInputStreamWithClassLoader.<init>(ObjectInputStreamWithClassLoader.java:95)
| at org.jboss.remoting.serialization.impl.java.JavaSerializationManager.createInput(JavaSerializationManager.java:54)
| at org.jboss.remoting.marshal.serializable.SerializableUnMarshaller.getMarshallingStream(SerializableUnMarshaller.java:72)
| at org.jboss.remoting.marshal.serializable.SerializableUnMarshaller.getMarshallingStream(SerializableUnMarshaller.java:55)
| at org.jboss.remoting.transport.socket.ClientSocketWrapper.createInputStream(ClientSocketWrapper.java:179)
| at org.jboss.remoting.transport.socket.ClientSocketWrapper.createStreams(ClientSocketWrapper.java:162)
| at org.jboss.remoting.transport.socket.ClientSocketWrapper.<init>(ClientSocketWrapper.java:66)
| at sun.reflect.GeneratedConstructorAccessor31.newInstance(Unknown Source)
| at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
| at java.lang.reflect.Constructor.newInstance(Unknown Source)
| at org.jboss.remoting.transport.socket.SocketClientInvoker.createClientSocket(SocketClientInvoker.java:157)
| at org.jboss.remoting.transport.socket.MicroSocketClientInvoker.getConnection(MicroSocketClientInvoker.java:854)
| at org.jboss.remoting.transport.socket.MicroSocketClientInvoker.transport(MicroSocketClientInvoker.java:569)
| at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:122)
| at org.jboss.remoting.Client.invoke(Client.java:1634)
| at org.jboss.remoting.Client.invoke(Client.java:548)
| at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:62)
| ... 21 more
|
Our configuration of the DefaultEjb3Connector looks like this:
| <mbean code="org.jboss.remoting.transport.Connector"
| name="jboss.remoting:type=Connector,name=DefaultEjb3Connector,handler=ejb3">
| <depends>jboss.aop:service=AspectDeployer</depends>
| <attribute name="Configuration">
| <config>
| <invoker transport="socket">
| <attribute name="numAcceptThreads">2</attribute>
| <attribute name="maxPoolSize">400</attribute>
| <attribute name="clientMaxPoolSize" isParam="true">300</attribute>
| <attribute name="timeout" isParam="true">600000</attribute>
| <attribute name="serverBindAddress">${jboss.bind.address}</attribute>
| <attribute name="serverBindPort">3873</attribute>
| <attribute name="backlog">200</attribute>
| <attribute name="socket.check_connection" isParam="true">true</attribute>
| </invoker>
| <handlers>
| <handler subsystem="AOP">org.jboss.aspects.remoting.AOPRemotingInvocationHandler</handler>
| </handlers>
| </config>
| </attribute>
| </mbean>
|
The client has following jars in its classpath:
ejb3-persistence.jar
hibernate-annotations.jar
hibernate-client.jar
jnp-client.jar
jboss-common-client.jar
jbosssx-client.jar
jboss-ejb3-client.jar
jboss-aop-jdk50-client.jar
jboss-aspect-jdk50-client.jar
jboss-remoting.jar
jboss-serialization.jar
jboss-transaction-client.jar
concurrent.jar
jboss-j2ee.jar
jbossmq-client.jar
jboss-ejb3x.jar
We get this exception also with the default configuration of DefaultEjb3Connector. If the user retries his last action everything seems to work again. But as I said from time to time this exception occurs and we just don't know what may be the cause for this problem. We tested the configuration of our routers and firewalls and everything is properly configured and work as expected. The problem occurs only with our client which connects to JBoss. All other applications work without problems.
I hope some of you may explain, what may cause this exception.
Thanks in advance and best regards,
Andrej
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4185397#4185397
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4185397
More information about the jboss-user
mailing list