Hi,

I'm trying to use the dynamic client to send and receive complex types. I created an AegisBindingProvider, created the binding to my complex objects and registered the binding provider on the service. The sending of the complex objects succeeds. However when receiving back a complex object, if the namespace of the complex object and the namespace of the reply match, then the complex object is returned successfully. If the namespaces don't match then I get a DocumentImpl object containing the information of the complex type. What I wanted to ask is whether this is the expected behavior or whether I'm doing something wrong. Can the Dynamic Client be configured to always return a complex object even when the namespace doesn't match that of the return message?

Info:
I'm using Xfire 1.2.6, JDK 5

Code: This is a code snippet of what I'm doing:

Map complexTypes = (Map) event.getEndpoint().getProperty("complexTypes");
Object[] beans = complexTypes.keySet().toArray();

AegisBindingProvider bp = (AegisBindingProvider) client.getService().getBindingProvider();
TypeMapping typeMapping = bp.getTypeMapping(client.getService());

       // for each complex type
       for (int i = 0; i < beans.length; i++)
       {
           BeanType bt = new BeanType();
String[] queue = ((String) complexTypes.get(beans[i])).split(":", 2);
           bt.setSchemaType(new QName(queue[1], queue[0]));
bt.setTypeClass(Class.forName(beans[i].toString())); typeMapping.register(bt);
       }


Thanks and regards
Marie Rizzo

---------------------------------------------------------------------
To unsubscribe from this list please visit:

   http://xircles.codehaus.org/manage_email

Reply via email to