Hi,
I have a ws server that wrote by XFire1.2.6, use the default databinding
aegis.
and the thirdparty user wrote ws client wrote by CXF2.4.
Now the communication between the CXF client and XFire server encountered
something wrong:
the CXF client cannot deserialize the soap response:
The interface is:
public interface CusAssetService {
public String cusAssetString();
}
--------------the xfire response -----------------
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Body>
<ns1:cusAssetStringResponse xmlns:ns1="http://service.cus.ws">
<ns1:out>5</ns1:out>
</ns1:cusAssetStringResponse>
</soap:Body>
</soap:Envelope>
---------------------------------------------------
And I test with cxf server also with the aegis databinding, but the cxf client
deserialize response success.
--------------the cxf response -----------------
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ns1:cusAssetStringResponse xmlns:ns1="http://service.cus.ws/">
<return>5</return>
</ns1:cusAssetStringResponse>
</soap:Body>
</soap:Envelope>
---------------------------------------------------
------------------CXF client config---------------------------------
<bean id="client" class="ws.cus.service.CusAssetService"
factory-bean="clientFactory" factory-method="create"/>
<bean id="clientFactory" class="org.apache.cxf.frontend.ClientProxyFactoryBean">
<property name="serviceClass" value="ws.cus.service.CusAssetService"/>
<property name="address"
value="http://localhost:8080/xfire_server/cusAsset.ws"/>
<property name="serviceFactory" ref="jaxWsServiceFactoryBean"></property>
</bean>
<bean id="jaxWsServiceFactoryBean"
class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean" scope="prototype">
<property name="dataBinding" ref="aegisBinding" />
<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>
<bean id="aegisBinding"
class="org.apache.cxf.aegis.databinding.AegisDatabinding"
scope="prototype"></bean>
------------------------------------------------------------------------
Anyone know what happens? why it can't work.
p.s. now the xfire can get the parameter successful
thanks a lot
(forgive me for my poor english. )
inthendsun