You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by Dejan Markic <De...@mobik.si> on 2009/10/05 10:19:26 UTC
WSDL2Java generated client not picking up interceptors
Hello all!
I'm banging my head with this one for over a week. I've created services with WSDL2Java applied interceptors to it to use WSS and all works fine. Now I want to run clients also and I can't seem to get interceptors working.
I've created client from WSDL with (WSDL2Java) and configured the cxf.xml like you see in attached file.
When I try to configure jaxws:client like:
<jaxws:client id="{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort" createdFromAPI="true">
<jaxws:inInterceptors>
<bean class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor" />
<ref local="wssInInterceptor" />
</jaxws:inInterceptors>
<jaxws:outInterceptors>
<bean class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor" />
<ref local="wssOutInterceptor" />
</jaxws:outInterceptors>
</jaxws:client>
I get an error when I try to run the client like this: java mobik.np.NetworkOperatorWS_NetworkOperatorWSImplPort_Client
Exception in thread "main" java.lang.RuntimeException: org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 99 in XML document from file [/var/lib/tomcat5.5/webapps/np/WEB-INF/classes/cxf.xml] is invalid; nested exception is org.xml.sax.SAXParseException: cvc-datatype-valid.1.2.1: '{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort' is not a valid value for 'NCName'.
If I set jaxws:client like this:
<jaxws:client id="client" name="{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort" createdFromAPI="true">
<jaxws:inInterceptors>
<bean class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor" />
<ref local="wssInInterceptor" />
</jaxws:inInterceptors>
<jaxws:outInterceptors>
<bean class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor" />
<ref local="wssOutInterceptor" />
</jaxws:outInterceptors>
</jaxws:client>
Then client is working, but security headers are not added, so I guess interceptors are not used at all?!
Any clues on how to get interceptors working?
Thank you and kind regards,
Dejan
RE: WSDL2Java generated client not picking up interceptors
Posted by Dejan Markic <De...@mobik.si>.
Hello Dan!
All I needed to do was to remove SAAJ stuff from my jaxws:client and it started working.
Thanks a lot!
Kind regards,
Dejan
-----Original Message-----
From: Daniel Kulp [mailto:dkulp@apache.org]
Sent: Monday, October 05, 2009 8:39 PM
To: users@cxf.apache.org
Cc: Dejan Markic
Subject: Re: WSDL2Java generated client not picking up interceptors
On Mon October 5 2009 9:00:01 am Dejan Markic wrote:
> Hello!
>
> Got that working.
>
> Setting: <jaxws:client
> name="{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort"
> createdFromAPI="true"> without "id", pulls this configuration when using
> direct call eg: java
> mobik.np.NetworkOperatorWS_NetworkOperatorWSImplPort_Client
>
> Now I'm wondering, I'm trying to call this also from JSP, again it calls it
> alright, but without security headers. How should I configure the web.xml
> and/or cxf.xml to use interceptors?!
Most likely, You'll need to manually configure/create a Bus prior to the
client creation to make sure the proper config file is picked up. Not really
sure though.
Something like:
URL url = getResource("/WEB-INF/cxf.xml")
SpringBusFactory.createBus(url)
then create the clients and such.
One more note: with 2.1.x, you don't need to configure in the SAAJ stuff.
WSS4J interceptors will automatically do that as needed.
Dan
>
> Thanks and kind regards,
> Dejan
>
> -----Original Message-----
> From: Dejan Markic [mailto:Dejan.Markic@mobik.si]
> Sent: Monday, October 05, 2009 10:19 AM
> To: users@cxf.apache.org
> Subject: WSDL2Java generated client not picking up interceptors
>
> Hello all!
>
> I'm banging my head with this one for over a week. I've created services
> with WSDL2Java applied interceptors to it to use WSS and all works fine.
> Now I want to run clients also and I can't seem to get interceptors
> working. I've created client from WSDL with (WSDL2Java) and configured the
> cxf.xml like you see in attached file.
>
> When I try to configure jaxws:client like:
> <jaxws:client
> id="{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort"
> createdFromAPI="true"> <jaxws:inInterceptors>
> <bean
> class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor" /> <ref
> local="wssInInterceptor" />
> </jaxws:inInterceptors>
> <jaxws:outInterceptors>
> <bean class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor"
> /> <ref local="wssOutInterceptor" />
> </jaxws:outInterceptors>
> </jaxws:client>
>
> I get an error when I try to run the client like this: java
> mobik.np.NetworkOperatorWS_NetworkOperatorWSImplPort_Client Exception in
> thread "main" java.lang.RuntimeException:
> org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException:
> Line 99 in XML document from file
> [/var/lib/tomcat5.5/webapps/np/WEB-INF/classes/cxf.xml] is invalid; nested
> exception is org.xml.sax.SAXParseException: cvc-datatype-valid.1.2.1:
> '{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort' is
> not a valid value for 'NCName'.
>
> If I set jaxws:client like this:
> <jaxws:client id="client"
> name="{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort"
> createdFromAPI="true"> <jaxws:inInterceptors> <bean
> class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor" /> <ref
> local="wssInInterceptor" />
> </jaxws:inInterceptors>
> <jaxws:outInterceptors>
> <bean class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor"
> /> <ref local="wssOutInterceptor" />
> </jaxws:outInterceptors>
> </jaxws:client>
>
> Then client is working, but security headers are not added, so I guess
> interceptors are not used at all?!
>
> Any clues on how to get interceptors working?
>
> Thank you and kind regards,
> Dejan
>
--
Daniel Kulp
dkulp@apache.org
http://www.dankulp.com/blog
Re: WSDL2Java generated client not picking up interceptors
Posted by Daniel Kulp <dk...@apache.org>.
On Mon October 5 2009 9:00:01 am Dejan Markic wrote:
> Hello!
>
> Got that working.
>
> Setting: <jaxws:client
> name="{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort"
> createdFromAPI="true"> without "id", pulls this configuration when using
> direct call eg: java
> mobik.np.NetworkOperatorWS_NetworkOperatorWSImplPort_Client
>
> Now I'm wondering, I'm trying to call this also from JSP, again it calls it
> alright, but without security headers. How should I configure the web.xml
> and/or cxf.xml to use interceptors?!
Most likely, You'll need to manually configure/create a Bus prior to the
client creation to make sure the proper config file is picked up. Not really
sure though.
Something like:
URL url = getResource("/WEB-INF/cxf.xml")
SpringBusFactory.createBus(url)
then create the clients and such.
One more note: with 2.1.x, you don't need to configure in the SAAJ stuff.
WSS4J interceptors will automatically do that as needed.
Dan
>
> Thanks and kind regards,
> Dejan
>
> -----Original Message-----
> From: Dejan Markic [mailto:Dejan.Markic@mobik.si]
> Sent: Monday, October 05, 2009 10:19 AM
> To: users@cxf.apache.org
> Subject: WSDL2Java generated client not picking up interceptors
>
> Hello all!
>
> I'm banging my head with this one for over a week. I've created services
> with WSDL2Java applied interceptors to it to use WSS and all works fine.
> Now I want to run clients also and I can't seem to get interceptors
> working. I've created client from WSDL with (WSDL2Java) and configured the
> cxf.xml like you see in attached file.
>
> When I try to configure jaxws:client like:
> <jaxws:client
> id="{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort"
> createdFromAPI="true"> <jaxws:inInterceptors>
> <bean
> class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor" /> <ref
> local="wssInInterceptor" />
> </jaxws:inInterceptors>
> <jaxws:outInterceptors>
> <bean class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor"
> /> <ref local="wssOutInterceptor" />
> </jaxws:outInterceptors>
> </jaxws:client>
>
> I get an error when I try to run the client like this: java
> mobik.np.NetworkOperatorWS_NetworkOperatorWSImplPort_Client Exception in
> thread "main" java.lang.RuntimeException:
> org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException:
> Line 99 in XML document from file
> [/var/lib/tomcat5.5/webapps/np/WEB-INF/classes/cxf.xml] is invalid; nested
> exception is org.xml.sax.SAXParseException: cvc-datatype-valid.1.2.1:
> '{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort' is
> not a valid value for 'NCName'.
>
> If I set jaxws:client like this:
> <jaxws:client id="client"
> name="{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort"
> createdFromAPI="true"> <jaxws:inInterceptors> <bean
> class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor" /> <ref
> local="wssInInterceptor" />
> </jaxws:inInterceptors>
> <jaxws:outInterceptors>
> <bean class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor"
> /> <ref local="wssOutInterceptor" />
> </jaxws:outInterceptors>
> </jaxws:client>
>
> Then client is working, but security headers are not added, so I guess
> interceptors are not used at all?!
>
> Any clues on how to get interceptors working?
>
> Thank you and kind regards,
> Dejan
>
--
Daniel Kulp
dkulp@apache.org
http://www.dankulp.com/blog
RE: WSDL2Java generated client not picking up interceptors
Posted by Dejan Markic <De...@mobik.si>.
Hello!
Got that working.
Setting: <jaxws:client name="{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort" createdFromAPI="true"> without "id", pulls this configuration when using direct call eg:
java mobik.np.NetworkOperatorWS_NetworkOperatorWSImplPort_Client
Now I'm wondering, I'm trying to call this also from JSP, again it calls it alright, but without security headers. How should I configure the web.xml and/or cxf.xml to use interceptors?!
Thanks and kind regards,
Dejan
-----Original Message-----
From: Dejan Markic [mailto:Dejan.Markic@mobik.si]
Sent: Monday, October 05, 2009 10:19 AM
To: users@cxf.apache.org
Subject: WSDL2Java generated client not picking up interceptors
Hello all!
I'm banging my head with this one for over a week. I've created services with WSDL2Java applied interceptors to it to use WSS and all works fine. Now I want to run clients also and I can't seem to get interceptors working.
I've created client from WSDL with (WSDL2Java) and configured the cxf.xml like you see in attached file.
When I try to configure jaxws:client like:
<jaxws:client id="{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort" createdFromAPI="true">
<jaxws:inInterceptors>
<bean class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor" />
<ref local="wssInInterceptor" />
</jaxws:inInterceptors>
<jaxws:outInterceptors>
<bean class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor" />
<ref local="wssOutInterceptor" />
</jaxws:outInterceptors>
</jaxws:client>
I get an error when I try to run the client like this: java mobik.np.NetworkOperatorWS_NetworkOperatorWSImplPort_Client
Exception in thread "main" java.lang.RuntimeException: org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 99 in XML document from file [/var/lib/tomcat5.5/webapps/np/WEB-INF/classes/cxf.xml] is invalid; nested exception is org.xml.sax.SAXParseException: cvc-datatype-valid.1.2.1: '{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort' is not a valid value for 'NCName'.
If I set jaxws:client like this:
<jaxws:client id="client" name="{http://cdb.services.np.aek.seavus.com/}NetworkOperatorWS_ImplPort" createdFromAPI="true"> <jaxws:inInterceptors>
<bean class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor" />
<ref local="wssInInterceptor" />
</jaxws:inInterceptors>
<jaxws:outInterceptors>
<bean class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor" />
<ref local="wssOutInterceptor" />
</jaxws:outInterceptors>
</jaxws:client>
Then client is working, but security headers are not added, so I guess interceptors are not used at all?!
Any clues on how to get interceptors working?
Thank you and kind regards,
Dejan