You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by sachinverma <sa...@oodlestechnologies.com> on 2014/06/02 14:22:15 UTC
CXF 2.7.11 xfire compatibility.
I am upgrading my XFire web service logic to CXF 2.7.11 using simple frontend
due to annotation-less structure of course.
But CXF and XFire autogenerated namespaces (targetNamespace in wsdl) for web
services are different as CXF add an extra '/' forward slash. As mentioned
here <http://cxf.apache.org/docs/aegis-databinding-20x.html> , I updated
my XML to :
<bean id="aegisCompatibilityFactoryBean"
class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean">
<property name="serviceConfigurations">
<list>
<bean class="org.apache.cxf.jaxws.support.JaxWsServiceConfiguration" />
<bean
class="org.apache.cxf.aegis.databinding.XFireCompatibilityServiceConfiguration"
/>
<bean class="org.apache.cxf.service.factory.DefaultServiceConfiguration"
/>
</list>
</property>
</bean>
<simple:server id="scheduleService"
serviceClass="com.my.world.ScheduleWebService"
address="/ScheduleWebService">
<simple:serviceBean>
<bean
class="com.my.world.impl.ScheduleWebServiceImpl">
</bean>
</simple:serviceBean>
<simple:serviceFactory>
<ref bean="aegisCompatibilityFactoryBean" />
</simple:serviceFactory>
<simple:dataBinding> <bean
class="org.apache.cxf.aegis.databinding.AegisDatabinding"
/> </simple:dataBinding>
But still I am getting '/' in my namespace. Do CXF 2.7.11 still supports
XFire namespace?
Please help.
--
View this message in context: http://cxf.547215.n5.nabble.com/CXF-2-7-11-xfire-compatibility-tp5744595.html
Sent from the cxf-user mailing list archive at Nabble.com.
Re: CXF 2.7.11 xfire compatibility.
Posted by sachinverma <sa...@oodlestechnologies.com>.
Thanks for taking interest Sir.
I tried
<bean depends-on="scheduleService"
class="com.resolution.scheduler.service.webservice.impl.WebServicesOptimiser">
<property name="serviceBean" ref="scheduleService"></property>
</bean>
And in method:
public void setServiceBean(Object serviceBean) {
ServerFactoryBeanDefinitionParser.SpringServerFactoryBean
sf=(ServerFactoryBeanDefinitionParser.SpringServerFactoryBean)serviceBean;
List config=sf.getServiceFactory().getConfigurations();
config.add(0,new XFireCompatibilityServiceConfiguration());
}
It still add the addition forward slash.
--
View this message in context: http://cxf.547215.n5.nabble.com/CXF-2-7-11-xfire-compatibility-tp5744595p5744606.html
Sent from the cxf-user mailing list archive at Nabble.com.
Re: CXF 2.7.11 xfire compatibility.
Posted by Sachin Verma <sa...@oodlestechnologies.com>.
Tried already no luck.
On 2 Jun 2014 19:28, "Daniel Kulp" <dk...@apache.org> wrote:
>
> I think you have to move the XFireCompatibilityServiceConfiguration bean
> to before the JaxWsServiceConfiguration. It’s a “first one to return a
> value wins” thing so you need to make sure the XFire version gets a chance
> to return the old xfire namespace before the JAX-WS algorithms kick in.
>
> Dan
>
>
> On Jun 2, 2014, at 8:22 AM, sachinverma <
> sachin.verma@oodlestechnologies.com> wrote:
>
> > I am upgrading my XFire web service logic to CXF 2.7.11 using simple
> frontend
> > due to annotation-less structure of course.
> >
> > But CXF and XFire autogenerated namespaces (targetNamespace in wsdl) for
> web
> > services are different as CXF add an extra '/' forward slash. As
> mentioned
> > here <http://cxf.apache.org/docs/aegis-databinding-20x.html> , I
> updated
> > my XML to :
> >
> >
> > <bean id="aegisCompatibilityFactoryBean"
> > class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean">
> > <property name="serviceConfigurations">
> > <list>
> > <bean
> class="org.apache.cxf.jaxws.support.JaxWsServiceConfiguration" />
> > <bean
> >
> >
> class="org.apache.cxf.aegis.databinding.XFireCompatibilityServiceConfiguration"
> > />
> > <bean
> class="org.apache.cxf.service.factory.DefaultServiceConfiguration"
> > />
> > </list>
> > </property>
> > </bean>
> > <simple:server id="scheduleService"
> > serviceClass="com.my.world.ScheduleWebService"
> > address="/ScheduleWebService">
> > <simple:serviceBean>
> > <bean
> >
> class="com.my.world.impl.ScheduleWebServiceImpl">
> > </bean>
> > </simple:serviceBean>
> > <simple:serviceFactory>
> > <ref bean="aegisCompatibilityFactoryBean" />
> > </simple:serviceFactory>
> > <simple:dataBinding> <bean
> > class="org.apache.cxf.aegis.databinding.AegisDatabinding"
> > /> </simple:dataBinding>
> >
> >
> >
> > But still I am getting '/' in my namespace. Do CXF 2.7.11 still supports
> > XFire namespace?
> >
> > Please help.
> >
> >
> >
> > --
> > View this message in context:
> http://cxf.547215.n5.nabble.com/CXF-2-7-11-xfire-compatibility-tp5744595.html
> > Sent from the cxf-user mailing list archive at Nabble.com.
>
> --
> Daniel Kulp
> dkulp@apache.org - http://dankulp.com/blog
> Talend Community Coder - http://coders.talend.com
>
>
Re: CXF 2.7.11 xfire compatibility.
Posted by Daniel Kulp <dk...@apache.org>.
I think you have to move the XFireCompatibilityServiceConfiguration bean to before the JaxWsServiceConfiguration. It’s a “first one to return a value wins” thing so you need to make sure the XFire version gets a chance to return the old xfire namespace before the JAX-WS algorithms kick in.
Dan
On Jun 2, 2014, at 8:22 AM, sachinverma <sa...@oodlestechnologies.com> wrote:
> I am upgrading my XFire web service logic to CXF 2.7.11 using simple frontend
> due to annotation-less structure of course.
>
> But CXF and XFire autogenerated namespaces (targetNamespace in wsdl) for web
> services are different as CXF add an extra '/' forward slash. As mentioned
> here <http://cxf.apache.org/docs/aegis-databinding-20x.html> , I updated
> my XML to :
>
>
> <bean id="aegisCompatibilityFactoryBean"
> class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean">
> <property name="serviceConfigurations">
> <list>
> <bean class="org.apache.cxf.jaxws.support.JaxWsServiceConfiguration" />
> <bean
>
> class="org.apache.cxf.aegis.databinding.XFireCompatibilityServiceConfiguration"
> />
> <bean class="org.apache.cxf.service.factory.DefaultServiceConfiguration"
> />
> </list>
> </property>
> </bean>
> <simple:server id="scheduleService"
> serviceClass="com.my.world.ScheduleWebService"
> address="/ScheduleWebService">
> <simple:serviceBean>
> <bean
> class="com.my.world.impl.ScheduleWebServiceImpl">
> </bean>
> </simple:serviceBean>
> <simple:serviceFactory>
> <ref bean="aegisCompatibilityFactoryBean" />
> </simple:serviceFactory>
> <simple:dataBinding> <bean
> class="org.apache.cxf.aegis.databinding.AegisDatabinding"
> /> </simple:dataBinding>
>
>
>
> But still I am getting '/' in my namespace. Do CXF 2.7.11 still supports
> XFire namespace?
>
> Please help.
>
>
>
> --
> View this message in context: http://cxf.547215.n5.nabble.com/CXF-2-7-11-xfire-compatibility-tp5744595.html
> Sent from the cxf-user mailing list archive at Nabble.com.
--
Daniel Kulp
dkulp@apache.org - http://dankulp.com/blog
Talend Community Coder - http://coders.talend.com