[Remoting] - Remoting idletimeout not working
by koganty
We are running JBoss 4.0.5 with EJB3 RC9 on JDK1.6 with Remoting 1.4.6.
Our standalone client uses the socket transport to connect to the server and invoke methods on the EJB3 SLSB.
What I see is that the SocketInvoker threads are created to handle the client requests, but these threads just linger around and never go away even long after their idleTimeout.
Below is the connector configuration:
| <mbean code="org.jboss.remoting.transport.Connector"
| name="jboss.remoting:type=Connector,name=DefaultEjb3Connector,handler=ejb3"
| display-name="Socket transport Connector">
| <depends>jboss.aop:service=AspectDeployer</depends>
| <attribute name="Configuration">
| <config>
| <invoker transport="socket">
| <attribute name="serverBindPort">${jboss.ejb3.remoting.port}</attribute>
| <attribute name="maxPoolSize">100</attribute>
| <attribute name="backlog">50</attribute>
| </invoker>
| <handlers>
| <handler subsystem="AOP">org.jboss.aspects.remoting.AOPRemotingInvocationHandler</handler>
| </handlers>
| </config>
| </attribute>
| </mbean>
|
|
And here is the thread dump for SocketInvoker:
Thread: SocketServerInvokerThread-10.255.48.46-6 : priority:5, demon:false, threadId:5910, threadState:WAITING, threadLockName:org.jboss.remoting.transport.socket.ServerThread@371ad0java.lang.Object.wait(Native Method)java.lang.Object.wait(Object.java:485)org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:282)Thread: SocketServerInvokerThread-10.255.48.46-7 : priority:5, demon:false, threadId:5912, threadState:WAITING, threadLockName:org.jboss.remoting.transport.socket.ServerThread@86ea8djava.lang.Object.wait(Native Method)java.lang.Object.wait(Object.java:485)org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:282)Thread: SocketServerInvokerThread-10.255.48.46-8 : priority:5, demon:false, threadId:5915, threadState:WAITING, threadLockName:org.jboss.remoting.transport.socket.ServerThread@7e8acjava.lang.Object.wait(Native Method)java.lang.Object.wait(Object.java:485)org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:282)Thread: SocketServerInvokerThread-10.255.48.46-9 : priority:5, demon:false, threadId:5927, threadState:WAITING, threadLockName:org.jboss.remoting.transport.socket.ServerThread@12975c1java.lang.Object.wait(Native Method)java.lang.Object.wait(Object.java:485)org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:282)Thread: SocketServerInvokerThread-10.255.48.46-10 : priority:5, demon:false, threadId:5928, threadState:WAITING, threadLockName:org.jboss.remoting.transport.socket.ServerThread@b41410java.lang.Object.wait(Native Method)java.lang.Object.wait(Object.java:485)org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:282)Thread: SocketServerInvokerThread-10.255.48.46-11 : priority:5, demon:false, threadId:5937, threadState:WAITING, threadLockName:org.jboss.remoting.transport.socket.ServerThread@69e46ajava.lang.Object.wait(Native Method)java.lang.Object.wait(Object.java:485)org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:282)Thread: SocketServerInvokerThread-10.255.48.46-12 : priority:5, demon:false, threadId:5945, threadState:WAITING, threadLockName:org.jboss.remoting.transport.socket.ServerThread@9ba0f7java.lang.Object.wait(Native Method)java.lang.Object.wait(Object.java:485)org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:282)Thread: SocketServerInvokerThread-10.255.48.46-13 : priority:5, demon:false, threadId:5946, threadState:WAITING, threadLockName:org.jboss.remoting.transport.socket.ServerThread@15e0c9ejava.lang.Object.wait(Native Method)java.lang.Object.wait(Object.java:485)org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:282)
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4015540#4015540
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4015540
19Â years, 2Â months
[JBoss and NetBeans] - Re: NameNotFoundException: DefaultDS not bound - Entity Unit
by htran_888
Hi L,
Success at last after having upgraded JBoss to 4.0.5 (full support for EJB 3.0) which may have fixed the problem. Anyhow the main sticking point was not referencing TravelAgentBean correctly using JNDI. Below is the only slight modification needed from the original code from the Client:
Context ctx = getInitialContext();
| Object ref = (TravelAgentRemote) ctx.lookup("TravelAgentBean/remote");
| TravelAgentRemote dao = (TravelAgentRemote)
| PortableRemoteObject.narrow(ref,TravelAgentRemote.class);
or
InitialContext ctx = new InitialContext();
| TravelAgentRemote dao = (TravelAgentRemote) ctx.lookup("TravelAgentBean/remote");
No need for any JNDI bootstraping properties as in EJB 2.1 or earlier.
Likewise, I didn't need these libraries in the Client's classpath either:
/client/jboss-j2ee.jar
/client/jbossall-client.jar
/server/default/lib/jnpserver.jar
/lib/jboss-common.jar.
I also learnt a lot on creating EJB using Netbeans & JBoss to lookup JNDI that was largely my problem.
Again a Big thank you for all your suggestions,
Henry
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4015534#4015534
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4015534
19Â years, 2Â months