5 Replies Latest reply on May 13, 2010 8:14 AM by asoldano

    jBoss 5 and CXF 2.2.7

    bmelloni

      We have been successfully using CXF 2.2.2 and 2.2.7 on jBoss 4.3 for about 9 months.  Works beautifully on jBoss 4.3.  It is simply a question of dropping the jars for cxf and its dependencies on our 'library' SAR where we put all open source libraries.  Some of our apps absolutely require the NTLM authentication support included in 2.2.7.

       

      jBoss 5 (EAP in our case, equivalent to the normal 5.1) includes CXF 2.2.2 but does not officially fully support it.  Unfortunately, that seems worse than not including it at all.  When I tried to deploy the 2.2.7 and a CXF-aware application in the same way as we did on jBoss 4.3, it drove jBoss nuts.  CPU utilization went to 100% and jBoss ceased to function.  We ended up having to reboot windows.  My guess that the problem was caused by a conflict between CXF 2.2.7 and the 2.2.2 version included in jBoss.

       

      Are we stuck with jBoss 4.3 and will have to wait until jBoss 5 gets an updated (2.2.7 or higher) and supported version of CXF?  Or has somebody been successful at using a version of CXF higher than 2.2.2 on jBoss 5?  Any hints would be greatly welcomed.

        • 1. Re: jBoss 5 and CXF 2.2.7
          jim.ma

          Did you try the latest jbossws-cxf-3.3.0.CR2 (http://anonsvn.jboss.org/repos/jbossws/stack/cxf/tags/jbossws-cxf-3.3.0.CR2)?  It includes the cxf 2.2.6 .   Because there is a regression issue in cxf 2.2.7 , we will ship the cxf 2.2.8 in the next release.  Let me know if jbossws-cxf-3.3.0.CR2 works for the NTLM authentication in JBoss 5.

          • 2. Re: jBoss 5 and CXF 2.2.7
            bmelloni

            It seems that CXF does not come included in the jBoss 5 distribution and that I had deployed CXF 2.2.7 correctly.

             

            The hanging and 100% CPU issue came from some problem with the native components service.bat.  For some reason, even though run.bat loads the memory settings from run.conf correctly, when service.bat calls run.bat... the memory settings aren't loaded from run.conf and the server runs out of memory, causing all of the issues.

             

            I couldn't figure out why or how to fix it "the right way", but I hacked run.bat to force the parameters into the call to startup jBoss... and the issue went away.

             

            I will be testing the web service soon.  If you don't see a further post from me you can assume that cxf 2.2.7 works fine on jBoss 5.

            • 3. Re: jBoss 5 and CXF 2.2.7
              asoldano

              Bruno Melloni wrote:

               

              The hanging and 100% CPU issue came from some problem with the native components service.bat.  For some reason, even though run.bat loads the memory settings from run.conf correctly, when service.bat calls run.bat... the memory settings aren't loaded from run.conf and the server runs out of memory, causing all of the issues.

               

              I couldn't figure out why or how to fix it "the right way", but I hacked run.bat to force the parameters into the call to startup jBoss... and the issue went away.

               

              You might want to create a JBAS jira for this, if there's a problem with service.bat script for windows, that could be fixed.

               

              I will be testing the web service soon.  If you don't see a further post from me you can assume that cxf 2.2.7 works fine on jBoss 5.

              Thanks. Btw, I assume you're not using JBossWS-CXF, but actually directly deploying Apache CXF on JBossAS, right?

              You might want to consider using the JBossWS integration (JBossWS-CXF) for future applications.

              Currently you need to manually install JBossWS-CXF on top of JBossAS, as it comes with the JBossWS-Native stack installed by default instead (at least for now).

              • 4. Re: jBoss 5 and CXF 2.2.7
                bmelloni

                No need for me to create a jira entry.  I have been in communication with jBoss support and they are looking into it already.  But since CXF isn't fully supported by jBoss yet, I posted here to get additional useful input from the community.

                 

                Looks like in windows jBoss is 'supposed to' load the parms from run.conf.bat (instead of run.conf), but it doesn't do so successuflly.  Also, while run.conf comes with the 'recommended values', run.conf.bat still has the old values and so we need to adjust them ourselves (still, they didn't get loaded from there - that is probably a bug).  My guess is that all of this will get fixed by the next release.  Even with these issues it is nice to have a jBoss-supplied Windows Service component.

                 

                I considered moving to JBossWS-CXF, but since it isn't fully supported by jBoss yet... at this time I get better support from the authors by using the Apache CXF.  I also have a critical dependency on NTLM authentication... which wasn't 100% right until CXF 2.2.7.  Still, thanks for the suggestion Alessio... I will follow it when the time is right.

                 

                I am curious as to what customizations JBossWS-CXF brings to CXF.  Perhaps something to make it work better in a cluster?

                • 5. Re: jBoss 5 and CXF 2.2.7
                  asoldano

                  As to what customizations JBossWS-CXF adds on top of vanilla Apache CXF, I'd say those are basically of two kinds:

                  • proper integration with JBoss AS (seamless support for EJB3 endpoints, JSR 109 v.1.2 impl [*], webserviceref injection in ejb3, JAAS integration [*] ...)
                  • JBoss WebService Framework (WSF) additions (support for JAXBIntroductions, common address rewrite, common jbossws management, common jbossws jaxws tooling, common jbossws api for using JSR-261, ...)

                   

                  [*] completed in JBossWS 3.3.0, which should be released by the end of May 2010