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.&lt;init&gt;(URI.java:311)

...........

 

any suggestion ?

Thanks Valerio

Reply via email to