cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sergey Beryozkin <sberyoz...@gmail.com>
Subject Re: cxf 2.3.1 and JBoss 6 problem
Date Fri, 15 Apr 2011 14:31:32 GMT
Hi, does the issue persists even after you remove all the references to
jaxrs: from the beans.xml, do you have jaxws endpoint initailized ?

Sergey

On Fri, Apr 15, 2011 at 3:27 PM, Matt Shostak <mshostak@potomacfusion.com>wrote:

>  Thanks Sergey.
>
>
>
> In Jboss 6 Final, there are cxf*.jar files located in common/lib and
> client.  There are also several jbossws-cxf*.jar files in a few deployer
> directories.  I had only been putting cxf-rt-frontend-jaxrs.jar in
> common/lib but now I’ve placed it client as well.  And the imports are back
> in my cxf-beans.xml.  I then tried running Jboss, but it got a failure
> because it couldn’t find Spring’s ApplicationContextListener.  So I added
> the Spring jars that are in my .war to the common/lib area, and tried
> again.  This time I got this error, which is pretty much what I’ve been
> seeing in my previous attempts throughout this ordeal:
>
>
>
> org.springframework.beans.factory.BeanDefinitionStoreException:
>
> Unexpected exception parsing XML document from ServletContext resource
> [/WEB-INF/cxf-beans.xml];
>
> nested exception is org.springframework.beans.FatalBeanException:
>
> Class [org.apache.cxf.jaxrs.spring.NamespaceHandler] for namespace [
> http://cxf.apache.org/jaxrs]
>
> does not implement the
> [org.springframework.beans.factory.xml.NamespaceHandler] interface
>
>                 at
> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:412)
>
>
>
> After this failure I put the Spring jars in the same places as the cxf
> jars, and got the same failure again.
>
> To me, it appears from this message that there’s some sort of mismatch
> between the cxf version and the spring version.   I have cxf 2.3.1 and
> Spring 3.0.5.  I haven’t found anything in the cxf documentation telling me
> one way or another which version of Spring I can use.
>
>
>
> Still looking for ideas…
>
>
>
> Thanks,
>
>
>
> Matt
>
>
>
>
>
>
>
>
>
>
>
> *From:* Sergey Beryozkin [mailto:sberyozkin@gmail.com]
> *Sent:* Friday, April 15, 2011 3:41 AM
> *To:* Matt Shostak
> *Cc:* users@cxf.apache.org
>
> *Subject:* Re: cxf 2.3.1 and JBoss 6 problem
>
>
>
> Hi Matt
>
> Alessio provided the info but I just misled you as I got confused :). With
> CXF 2.3.1 the import is needed, in 2.4.0 it is not required. Now the
> question is how to have this import resolved. I referred to common/lib, but
> I guess you need to put the cxf-rt-frontend-jaxrs.jar only to the folder
> where other CXF libraries are located - I don't recall the locations, it is
> probably where the deployers are configured, probably in /server. Hopefully
> that can fix it.
> RestEasy also supports Spring integration but I'm not sure how that can be
> used alongside the cxf configuration. You may want to explore that path too
> if adding the jaxrs frontend to other cxf libs won't help.
>
> Cheers, Sergey
>
> On Thu, Apr 14, 2011 at 9:13 PM, Matt Shostak <mshostak@potomacfusion.com>
> wrote:
>
>
>
> Thanks for the info Sergey.  Yes, it is indeed a jaxrs problem, not a jaxws
> problem.  I tried your suggestions.  I removed this line
>
>
>
> <import resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml"/>
>
>
>
> from my cxf-beans.xml.   I also made sure my .war file contains no cxf
> jars.   I started with a fresh Jboss 6 installation and copied
> cxf-bundle-jaxrs-2.3.1.jar and cxf-rt-frontend-jaxrs-2.3.1.jar into
> common/lib, and also copied my spring*.jar files into common/lib, but I
> still get this error when I start Jboss:
>
>
>
> org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected
> exception parsing XML document from ServletContext resource
> [/WEB-INF/cxf-beans.xml]; nested exception is
> org.springframework.beans.FatalBeanException:
>
> Class [org.apache.cxf.jaxrs.spring.NamespaceHandler] for namespace [
> http://cxf.apache.org/jaxrs] does not implement the
> [org.springframework.beans.factory.xml.NamespaceHandler] interface
>
>                 at
> org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:412)
>
> …
>
>
>
>
>
> Any ideas?
>
>
>
> Thanks,
>
>
>
> Matt
>
>
>
>
>
>
>
> *From:* Sergey Beryozkin [mailto:sberyozkin@gmail.com]
> *Sent:* Thursday, April 14, 2011 5:58 AM
> *To:* users@cxf.apache.org
> *Cc:* Alessio Soldano; Matt Shostak
> *Subject:* Re: cxf 2.3.1 and JBoss 6 problem
>
>
>
> Hi
>
> Haven't seen it was about the problem with CXF JAX-RS imports.
> Yes, remove that import, and if you'd like to use CXF JAX-RS then you'll
> probably need to copy cxf jaxrs bundle or frontend only to the common lib
> area
>
> Cheers, Sergey
>
> On Thu, Apr 14, 2011 at 11:45 AM, Alessio Soldano <asoldano@redhat.com>
> wrote:
>
> JBoss AS 6 includes JBossWS-CXF by default, which internally used Apache
> CXF for jaxws functionalities.
> The jax-rs libs of CXF are not pulled in because of RestEasy.
> You're right in not including the cxf libs in your deployment; please take
> a look at the jbossws-cxf documentation regarding how to setup your endpoint
> using the spring configuration:
> http://community.jboss.org/wiki/JBossWS-StackCXFUserGuide#Server_Side_Integration_Customization.
In particular, make sure Spring is installed on your JBoss AS, you should
> not need those imports in the beans file and check your web.xml (again see
> the documentation,
> http://community.jboss.org/docs/DOC-13972#Web_Service_Endpoints)
>
> An alternative is to install JBossWS-Native to JBoss AS 6 and go on using
> your app the way it is.
> Cheers
> Alessio
>
> On 04/13/2011 10:02 PM, Matt Shostak wrote:
>
> Hi,
>
> I'm trying to deploy my .war file on Jboss 6.  It works on Jboss 5.1.0.  I
> was building with CXF 2.2.10 and Spring 3.0.1.  Since Jboss 6 uses CXF
> 2.3.1, I changed the build to use CXF 2.3.1 and Spring 3.0.5.  I've also set
> it so that none of the CXF jars are included in my .war.  When I put my new
> .war file in server/default/deploy and start Jboss, I get this error:
>
> org.springframework.beans.factory.parsing.BeanDefinitionParsingException:
> Configuration problem: Failed to import bean definitions from URL location
> [classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml]
> Offending resource: ServletContext resource [/WEB-INF/cxf-beans.xml];
> nested exception is
> org.springframework.beans.factory.BeanDefinitionStoreException: IOException
> parsing XML document from class path resource
> [META-INF/cxf/cxf-extension-jaxrs-binding.xml]; nested exception is
> java.io.FileNotFoundException: class path resource
> [META-INF/cxf/cxf-extension-jaxrs-binding.xml] cannot be opened because it
> does not exist
>                 at
> org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68)
>
>
> The cxf-extension-jaxrs-binding.xml used to be found in
> cxf-bundle-jaxrs-2.2.10.jar back when I was building with 2.2.10 for Jboss
> 5.1.0.  Now for Jboss 6, however, that xml file does not exist among the
> cxf*.jar files in common/lib.  My cxf-beans.xml file has the following:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns="http://www.springframework.org/schema/beans"
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>        xmlns:jaxrs="http://cxf.apache.org/jaxrs"
>        xmlns:context="http://www.springframework.org/schema/context"
>        xmlns:jaxws="http://cxf.apache.org/jaxws"
>
>        xsi:schemaLocation="
>        http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans.xsd
>        http://cxf.apache.org/jaxrs http://cxf.apache.org/schemas/jaxrs.xsd
>        http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
>        http://www.springframework.org/schema/context
> http://www.springframework.org/schema/context/spring-context.xsd">
>
>     <import resource="classpath:META-INF/cxf/cxf.xml"/>
>     <import
> resource="classpath:META-INF/cxf/cxf-extension-jaxrs-binding.xml"/>
>     <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
>     <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>
>
> Obviously cxf-extension-jaxrs-binding.xml is now a problem, but if I simply
> remove that line from cxf-beans.xml I get a new error:
>
> org.springframework.beans.factory.parsing.BeanDefinitionParsingException:
> Configuration problem: Unable to locate Spring NamespaceHandler for XML
> schema namespace [http://cxf.apache.org/jaxrs]
> Offending resource: ServletContext resource [/WEB-INF/cxf-beans.xml]
>
> So can anyone tell me how exactly am I supposed to refer to these cxf*.xml
> files in my cxf-beans.xml?  Any help would be greatly appreciated.
>
> Thanks,
>
> Matt
>
>
>
> --
> Alessio Soldano
> Web Service Lead, JBoss
>
>
>
>
> --
> Sergey Beryozkin
>
> Application Integration Division of Talend <http://www.talend.com/>
> http://sberyozkin.blogspot.com
>
>
>



-- 
Sergey Beryozkin

Application Integration Division of Talend <http://www.talend.com/>
http://sberyozkin.blogspot.com

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message