I've come across a problem that I'm sure we've seen before but I can't
put my finger on it.
Write a composite without wstx-asl on the classpath...
<zdef2107778102:composite xmlns=""
xmlns:zdef2107778102="http://docs.oasis-open.org/ns/opencsa/sca/200912"
target Namespace="http://tuscany.apache.org/xmlns/sca/1.1" name="endpoint">
<zdef2107778 1 :component xmlns=""
xmlns:ns2="http://www.tuscany.apache.org/itests/interface/match"
name="DistributedServiceComponent" uri="DistributedServiceComponent"
XX requires="SOAP.v1_2 clientAuthentication.transport"
policySets="ns2:BasicAuthenticationPolicySet">
<zdef2107778102:service xmlns=""
name="ServiceComponent" requires="clientAuthentication">
<zdef2107778102:interface.java
interface="org.apache.tuscany.sca.itest.interfaces.ServiceComponent"
remotable="true"
callbackInterface="org.apache.tuscany.sca.itest.interfaces.CallbackInterface">
</zdef2107778102:interface.java>
<zdef2107778102:binding.ws
requires="zdef2107778102:SOAP.v1_2" policy
Sets="ns2:BasicAuthenticationPolicySet"
name="ServiceComponent"
uri="http://localhost:8081/DistributedServiceComponent/ServiceComponent">
</zdef2107778102:binding.ws>
<callback
xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912">
<binding.ws requires="SOAP.v1_2"
policySets="ns2:BasicAuthenticationPolicySet"
name="ServiceComponent">
</binding.ws>
</callback>
</zdef2107778102:service>
</zdef2107778102:component>
</zdef2107778102:composite>
Write a composite withwstx-asl on the classpath...
<composite xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912"
targetNamespace="http://tuscany.apache.org/xmlns/sca/1.1" name="endpoint">
<component name="DistributedServiceComponent"
uri="DistributedServiceComponent"
XX requires="SOAP.v1_2 clientAuthentication.transport"
xmlns:ns2="http://www.tuscany.apache.org/itests/interface/match"
policySets="ns2:BasicAuthenticationPolicySet">
<service name="ServiceComponent" requires="clientAuthentication">
<interface.java
interface="org.apache.tuscany.sca.itest.interfaces.ServiceComponent"
remotable="true"
callbackInterface="org.apache.tuscany.sca.itest.interfaces.CallbackInterface"
/>
<binding.ws requires="SOAP.v1_2"
policySets="ns2:BasicAuthenticationPolicySet"
name="ServiceComponent"
uri="http://localhost:8081/DistributedServiceComponent/ServiceComponent"
/>
<callback>
<binding.ws requires="SOAP.v1_2"
policySets="ns2:BasicAuthenticationPolicySet"
name="ServiceComponent" />
</callback>
</service>
</component>
</composite>
I've marked line XX as an example of the problem. We have code in the
stream writer that tries to retrieve the prefix from a QName URI when
no prefix is provided. Without wstx this fails and you're left with
attribute values in the wrong namespace (note the non-wstx version
uses a prefix for the oasis namespace and the wstx version doesn't).
Ring any bells for anyone?
Simon
--
Apache Tuscany committer: tuscany.apache.org
Co-author of a book about Tuscany and SCA: tuscanyinaction.com