You are viewing a plain text version of this content. The canonical link for it is here.
Posted to sandesha-dev@ws.apache.org by Valerio Vianello <va...@yahoo.it> on 2006/07/13 15:52:58 UTC

sandesha and kandula

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