Hi,
I have exactly the same problem like you, I have already mailed to the
Sandesha developer list. The problem is that Sandesha does not support
global addressing handlers, because addressing is handled internally.
Maybe you should write to this list, maybe they will work on getting
this solved. Another possibility would be to configure Kandula without
using global addressing handlers but I don't know if this is possible.
Hi,
my goal is to develop an example using both kandula and sandesha on
axis 1.3
I've made a client that calls a service A which in turn invokes a
service B in
a reliabile and transactional way.
I've used separately both frameworks and all seem to work, but then I
tried to
join kandula and sandesha using the following client config wsdd file
for the
service A:
<?xml version="1.0" encoding="UTF-8"?>
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<globalConfiguration>
<parameter name="adminPassword" value="admin"/>
<parameter name="enableNamespacePrefixOptimization" value="true"/>
<parameter name="disablePrettyXML" value="true"/>
<parameter name="sendMultiRefs" value="true"/>
<parameter name="sendXsiTypes" value="true"/>
<parameter name="attachments.implementation"
value="org.apache.axis.attachments.AttachmentsImpl"/>
<parameter name="sendXMLDeclaration" value="true"/>
<!-- handler kandula -->
<requestFlow>
<handler
type="java:org.apache.axis.message.addressing.handler.AddressingHandler"
/>
<handler type="java:org.apache.kandula.coordinator.at.TxHandler" />
</requestFlow>
<responseFlow>
<handler
type="java:org.apache.axis.message.addressing.handler.AddressingHandler"
/>
</responseFlow>
</globalConfiguration>
<!-- handler sandesha -->
<handler name="RMSender" type="java:org.apache.sandesha.client.RMSender"/>
<transport name="java"
pivot="java:org.apache.axis.transport.java.JavaSender"/>
<transport name="http"
pivot="java:org.apache.axis.transport.http.HTTPSender"/>
<transport name="local"
pivot="java:org.apache.axis.transport.local.LocalSender"/>
<transport name="RMTransport" pivot="RMSender"/>
</deployment>
The following deploy wsdd file for service A:
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<service name="Coordinatore" provider="java:RPC">
<parameter name="className" value="kandulaClient.Coordinatore"/>
<parameter name="allowedMethods" value="*" />
<requestFlow>
<handler
type="java:org.apache.axis.message.addressing.handler.AddressingHandler"
/>
<handler type="java:org.apache.kandula.coordinator.at.TxHandler" />
</requestFlow>
<responseFlow>
<handler
type="java:org.apache.axis.message.addressing.handler.AddressingHandler"
/>
</responseFlow>
<transport name="local"
pivot="java:org.apache.axis.transport.local.LocalSender"/>
<transport name="java"
pivot="java:org.apache.axis.transport.java.JavaSender"/>
<typeMapping
xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
encodingStyle=""
qname="wsa:EndpointReference"
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
type="java:org.apache.axis.message.addressing.EndpointReferenceType"/>
<typeMapping
xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"
deserializer="org.apache.axis.encoding.ser.BeanDeserializerFactory"
encodingStyle=""
qname="wsa:ReferencePropertiesType"
serializer="org.apache.axis.encoding.ser.BeanSerializerFactory"
type="java:org.apache.axis.message.addressing.ReferencePropertiesType"/>
<typeMapping
xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
encodingStyle=""
qname="wsa:Address"
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
type="java:org.apache.axis.message.addressing.Address"/>
<typeMapping
xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
encodingStyle=""
qname="wsa:PortType"
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
type="java:org.apache.axis.message.addressing.PortType" />
<typeMapping
xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"
deserializer="org.apache.axis.encoding.ser.SimpleDeserializerFactory"
encodingStyle=""
qname="wsa:ServiceNameType"
serializer="org.apache.axis.encoding.ser.SimpleSerializerFactory"
type="java:org.apache.axis.message.addressing.ServiceNameType" />
</service>
<service name="RMService" provider="Handler">
<requestFlow>
<handler
type="java:org.apache.sandesha.ws.rm.handlers.RMServerRequestHandler"></handler>
<handler
type="java:org.apache.axis.message.addressing.handler.AddressingHandler"></handler>
</requestFlow>
<parameter name="handlerClass"
value="org.apache.sandesha.ws.rm.providers.RMClientProvider"/>
<parameter name="className" value="org.apache.sandesha.client.RMService"/>
<parameter name="allowedMethods" value="*"/>
<parameter name="scope" value="request"/>
</service>
</deployment>
and for the service B :
<deployment xmlns="http://xml.apache.org/axis/wsdd/"
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
<service name="Servizio1" provider="Handler">
<requestFlow>
<handler
type="java:org.apache.sandesha.ws.rm.handlers.RMServerRequestHandler"></handler>
<handler
type="java:org.apache.axis.message.addressing.handler.AddressingHandler"></handler>
</requestFlow>
<parameter name="handlerClass"
value="org.apache.sandesha.ws.rm.providers.RMProvider"/>
<parameter name="className" value="kandulaServizio1.Servizio1"/>
<parameter name="allowedMethods" value="*"/>
<parameter name="scope" value="request"/>
</service>
</deployment>
I get the following error from the server :
AxisFault
faultCode:
{http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: org.apache.axis.types.URI$MalformedURIException: Cannot
initialize URI with empty parameters.
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}stackTrace:org.apache.axis.types.URI$MalformedURIException:
Cannot initialize URI with empty parameters.
at org.apache.axis.types.URI.initialize(URI.java:614)
at org.apache.axis.types.URI.<init>(URI.java:311)
...........
any suggestion ?
Thanks Valerio
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]