-
15. Re: unified invoker does not work on JBOSS AS 5.1.0GA
jaikiran May 24, 2010 3:48 AM (in response to kobiianko)Kobi Ianko wrote:
actually I have the same problem with a clean JBOSS AS 5.1.0GA (and 4.2.3), with no EAR, WAR, JAR of my own, just followd the jboss configuration in the article. (slippet my mined, cause I've tryed it so many time with so many configurations)
so you can try to reproduce it with a clean version of jboss, no user application needed, just follow the steps I've written previously.
Tried this http://community.jboss.org/wiki/EJB3overHTTPHTTPSinJBossAS-5 today on a clean installation of AS-5.1.0. I don't run into any issues.
Then I checked what this post was about http://community.jboss.org/message/365858#365858. Tried to reproduce it that way, by changing all http ports from 8080 to some other value (like 8180). Works fine again. The only way, that I was able to reproduce this exception was when, I messed up my configuration by creating a mismatch between the port values across config files. So you run into this error, if in one config file (web.xml) you specify port 8180
<servlet-class>org.jboss.remoting.transport.servlet.web.ServerInvokerServlet</servlet-class> <init-param> <param-name>locatorUrl</param-name> <param-value>servlet://${jboss.bind.address}:8180/servlet-invoker/ServerInvokerServlet</param-value>
and in other config file (servlet-invoker-service.xml) you specify a different port:
<mbean code="org.jboss.remoting.transport.Connector" name="jboss.remoting:service=connector,transport=servlet" display-name="Servlet transport Connector"> <attribute name="InvokerLocator">servlet://${jboss.bind.address}:8280/servlet-invoker/ServerInvokerServlet</attribute>
This won't work and will throw the exception you are seeing:
javax.servlet.ServletException: Can not find servlet server invoker with same locator as specified (servlet://localhost.localdomain:8180/servlet-invoker/ServerInvokerServlet?) at org.jboss.remoting.transport.servlet.web.ServerInvokerServlet.getInvokerFromInvokerUrl(ServerInvokerServlet.java:223) at org.jboss.remoting.transport.servlet.web.ServerInvokerServlet.init(ServerInvokerServlet.java:74) at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1048) at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:950) at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4122)
By the way, this has already been mentioned in that wiki:
"Quote from http://community.jboss.org/wiki/EJB3overHTTPHTTPSinJBossAS-5 " :
These servlets are passed a "locatorUrl" init-param which should match the "InvokerLocator" attribute of the Remoting connectors that we create in the next step. -
16. Re: unified invoker does not work on JBOSS AS 5.1.0GA
kobiianko May 24, 2010 5:07 AM (in response to jaikiran)Hi Jaikiran,
This actually works, but correct me if I'm wrong, this configuration does not provide JMS over http support,
so I don't really understand what is the differnce between it and the "http-invoker.sar" that comes with the JBOSS install.
My error is a result of the article: http://community.jboss.org/wiki/EJBJMSandJNDIoverHTTPwithUnifiedInvoker
I understand that the UnifiedInvoker does provide JMS over http support.
Could you please repruduce it again with the instructions on this article, and the instructions on my first post on this thread.
10x, and I know I'm nagging, but this it's really critical for my and my application.
10x again, Kobi
-
17. Re: unified invoker does not work on JBOSS AS 5.1.0GA
kobiianko Jun 8, 2010 4:34 AM (in response to kobiianko)back on this issue, can anybody reproduce and confirm this.
following the steps in the first post.
10x
-
18. Re: unified invoker does not work on JBOSS AS 5.1.0GA
kobiianko Jun 8, 2010 10:19 AM (in response to kobiianko)just noticed that http://community.jboss.org/wiki/EJBOverHTTPWithLegacyInvoker
which worked for JBoss 4.0.5 (without JMS, only EJB over http), in JBoss5.1.0 it uses port 4446 as well as port 80(or 8080 by default) to access the client.
in the sniffer(using wireshark sniffer) I can see packets related to Remoting on port 4446 as well as packets on port 80
on JBoss4.0.5 it used only port 80(or 8080).
so what I assumed to be my last resort solution is not valid.
really desperate here for some help!
-
19. Re: unified invoker does not work on JBOSS AS 5.1.0GA
kobiianko Jun 10, 2010 4:08 AM (in response to kobiianko)one more update,
from the stack trace I've attached you can see that I'm having errors on EJB3 and SSL-EJB3,
because I use EJB 2.1 on my jboss5.1.0 I've removed the EJB3 and SSL EJB3 MBEANs from the "http-uinvoker.sar"
and now the server boot is clean of errors.
now when I connect with the client to the server via:
providerURL == http://172.18.18.20:80/unified-invoker/JNDIFactory
I get on the server side this exception:
2010-06-10 10:58:37 [http-0.0.0.0-80-107] ERROR [localhost].[/unified-invoker].[ServerInvokerServlet] - Servlet.service() for servlet ServerInvokerServlet threw exception
java.lang.reflect.UndeclaredThrowableException
at $Proxy273.processRequest(Unknown Source)
at org.jboss.remoting.transport.servlet.web.ServerInvokerServlet.processRequest(ServerInvokerServlet.java:404)
at org.jboss.remoting.transport.servlet.web.ServerInvokerServlet.processRequest(ServerInvokerServlet.java:142)
at org.jboss.remoting.transport.servlet.web.ServerInvokerServlet.doPost(ServerInvokerServlet.java:171)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:190)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:92)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Caused by: javax.management.InstanceNotFoundException: jboss.remoting:service=invoker,transport=servlet is not registered.
at org.jboss.mx.server.registry.BasicMBeanRegistry.get(BasicMBeanRegistry.java:526)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:662)
at javax.management.MBeanServerInvocationHandler.invoke(MBeanServerInvocationHandler.java:288)
... 26 moreon the client side I get http 501 error.
looks like I'm mising the service "Mbean" == jboss.remoting:service=invoker,transport=servlet
looking at the jmx console I didn't found this service at all.
-
20. Re: unified invoker does not work on JBOSS AS 5.1.0GA
kobiianko Jun 20, 2010 8:46 AM (in response to kobiianko)finally got it to work,
for EJB2.1 follow the instruction on this post:
http://community.jboss.org/message/304730
for EJB3 follow this wiki page:
http://community.jboss.org/wiki/EJB3overHTTPHTTPSinJBossAS-5