6 Replies Latest reply on Feb 12, 2005 6:22 PM by Vishal Sharma

    Axis1.2/Axis 1.1 integration with Jboss 4.0

    Vishal Sharma Expert

      Hi,

      I'm looking for some hlep in integating Axis-1.2 /Axis-1.1 with Jboss-4.0 and some doubts on few queries :-) .

      As i understand Jboss4.0 comes with jboss-ws4ee.sar which is J2ee-1.4 compliant web services and uses apache axis as its underlying core (not sure which version though, i think i read some where it is using 1.2 )

      1. Is there a way to remove J2EE-1.4 style web services from jboss and plugin apache-axis 1.2 into it. (As jboss is modular it should be allowed :-))

      (I did try removing jboss-ws4ee.sar from deploy and stopping the
      mbean to monior this and its dependency on Ejb deployer from jboss-service.xml im conf directory)

      2. Are there any doc/wikis/help is available how to integrate axis1.1/1.2 with Jboss4.0.

      3 . If i deploy web servies using JbossWS is it portable on other app server with j2ee1.4 compliant, (reason i asked this because Jboss.net was not portable) so i'm not sure if Jboss (Cool) guys have added some jboss specific stuff in it as well.

      I did try the normal (with Jboss-3.x series) way of integrating axis-1..1/1.2 by dropping axis in deploy directory, which makes the "axis test page happy", but falis on looking at the default web service end points.
      (My understanding is it is looking for client- axis-config.xml and server- axis-config.xml because of new style of web services, plz correct me if thats wrong.

      This is what i get when I try to acess the default end points which are shipped with Axis.
      ------------------------------------------------------------------------------------------------------------
      16:22:03,312 ERROR [EngineConfigurationFactoryServlet] Unable to find config file. Creating new servlet engine config file: /WEB-INF/server-config.wsdd
      16:22:03,392 FATAL [InternalException] Exception:
      org.apache.axis.ConfigurationException: org.apache.axis.ConfigurationException: No engine configuration file - aborting!
      org.apache.axis.ConfigurationException: No engine configuration file - aborting!
      at org.apache.axis.configuration.FileProvider.configureEngine(FileProvider.java:224)

      ------------------------------------------------------------------------------------------------------------

      I hope my questions and doubts make some sense, and hopefully someone out there
      will be able to provide his/her invaluable wisdom and that wiil be very helpful for the community out there....

      Cheers....
      Vishal



      .


        • 1. Re: Axis1.2/Axis 1.1 integration with Jboss 4.0
          Anil Saldanha Master

          1. Is there a way to remove J2EE-1.4 style web services from jboss and plugin apache-axis 1.2 into it. (As jboss is modular it should be allowed :-))

          You will have to totally remove JBossWS from JBoss 4.x and bring in Axis 1.2 as a Web Application running on tomcat. JBoss4 currently uses Axis 1.1 (that has been updated to provide J2EE 1.4 compliance). Currently JBossWS is writing its own stack => Axis will not be used by JBoss in the next few months.

          2. If i deploy web servies using JbossWS is it portable on other app server with j2ee1.4 compliant, (reason i asked this because Jboss.net was not portable) so i'm not sure if Jboss (Cool) guys have added some jboss specific stuff in it as well.

          As long as u write J2EE compliant webservices code, you should be able to port it across J2EE vendors.

          Look at the wiki: http://www.jboss.org/wiki/Wiki.jsp?page=JBossWS for more information.

          • 2. Re: Axis1.2/Axis 1.1 integration with Jboss 4.0
            Vishal Sharma Expert

            Hi Anil,

            Thanks for that reply, that does help.:)

            You will have to totally remove JBossWS from JBoss 4.x and bring in Axis 1.2 as a Web Application running on tomcat. ---
            when u say that do u mean deploy axia as war in deploy directory or add in tomcat.sar.
            because i did try adding it as a war in deploy but failed.

            I presuem once this doubt is clear then it should be okay and its a matter of cofiguring it.
            Any help on configuring wiil be good, i mean if there are specific things to be done with axis in Jboss4.0.

            Vishall

            • 3. Re: Axis1.2/Axis 1.1 integration with Jboss 4.0
              Vishal Sharma Expert

              Okie Guys,

              I have got this going now.

              Jboss4.0 with Axis-1.1 and steps will be same with Axis1.2Rc2 (dont expect hassels with that).

              Before staeting Jboss4.0 steps to be carried out.

              1. Remove jboss-ws4ee.sar from default/deploy directory.
              2. Go to default/conf/jboss-service.xml
              and hide/comment the mbean area with web service.

              <!--mbean code="org.jboss.web.WebService"
               name="jboss:service=WebService">
               <attribute name="Port">8083</attribute>
               <attribute name="DownloadServerClasses">true</attribute>
               <attribute name="Host">${jboss.bind.address}</attribute>
               <attribute name="BindAddress">${jboss.bind.address}</attribute>
               </mbean-->
               <!-- Should resources and non-EJB classes be downloadable -->
              


              This will stop MBean for Jboss Web service not to be loaded /registerd in JMX.

              3. Go to default/deploy/ejb-deployer.xml and hide/comment thi s
              line which depnds on WebService Mbeans as it wil not be loaded in JMX now.
              <!--depends optional-attribute-name="WebServiceName">jboss:service=WebService</depends-->
              

              This is at the bottom of this file.

              4. Go to webbapss directory which comes with axis bundle. Under webapps
              there is axis directory. Rename it to axis.war. (As this will make deployment
              scanner to think it its as a .war file :-)

              5. Now copy the webapps diretory under default/deploy.

              6. Copy jaxrpc.jar and saaj.jar from webapps/axis.war/WEB-INF/lib/ directory
              to default/deploy/jbossweb-tomcat50.sar/.
              Once copied u can actually remove these jars from axis.war/WEB-INF/lib area
              (no need of duplication as it will consume more memory) also u can
              remove log4j.jar as jboss has already got it.

              7. Now the final trick....
              export this variable ---
              export JBOSS_CLASSPATH=$JBOSS_HOME/server/default/lib/javax.servlet.jar


              8. And now run yr Jboss.

              If u see this message in the logs while starting Jboss - dont worry about it ;-)
              (This is not windows !!!)
              10:51:12,135 ERROR [EngineConfigurationFactoryServlet] Unable to find config file. Creating new servlet engine config file: /WEB-INF/server-config.wsdd


              This is done on Fedora Core -3 and using /usr/java/j2sdk1.4.2_05/.

              Note : One draw back of this approach is that we will be using web service which will be compliant with J2ee-1.3 standards even though as JBoss 4.0 is J2EE-1.4 compliant and implements web services using JSR-109.

              I hope people can now get this going and help them with this.


              Cheers....
              Vishal
              http://www.tusc.com.au/tuorial/html/index.html


              • 5. Re: Axis1.2/Axis 1.1 integration with Jboss 4.0
                Anil Saldanha Master

                Vishal,
                why are you commenting out the WebService at port 8083? That is used by RMI in JBoss. It is not related to webservices.

                Anil

                • 6. Re: Axis1.2/Axis 1.1 integration with Jboss 4.0
                  Vishal Sharma Expert

                  Hi Anil,

                  Thanks for that invaluable info., this leads to my next question then :-)
                  I didnt realize that stopping MBean for Web Service, wil stop the stop the RMi port.

                  Now u can probably answer my query here.

                  1. Then how to stop the Web Service MBean in this context.
                  2. Where do u control the RMI port setting for JBoss from ??
                  I know ho to change the RMI port for JNDI name service only.

                  Sorry for asking this as admin side of JBoss is a new venture :-)