1 2 Previous Next 20 Replies Latest reply on Jun 20, 2010 8:46 AM by kobiianko Go to original post
      • 15. Re: unified invoker does not work on JBOSS AS 5.1.0GA
        jaikiran

        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

          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

            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

              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

                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 more

                 

                 

                on 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

                  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

                  1 2 Previous Next