Hi all axis-users,
I wanted to get on the client side a bean created on the server side.

The bean is described as follow :

public class XMLRepresentation implements java.io.Serializable {

 private byte[] xmlRepresentation_;

 public XMLRepresentation() {
 }

public XMLRepresentation(Object representation) {
createXMLRepresentation(representation);//fill the byte[] with a representation.toString().getBytes();
}


 public byte[] getXMLRepresentation() {
   return (byte[])xmlRepresentation_.clone();
 }
}

In order to get it on the client side, I created a service corresponding to the method :
public XMLRepresentation createXmlRepresentation()
throws ServiceException {
XMLRepresentation rep = new XMLRepresentation(getRepresentation());
System.out.println(rep);
return rep;
}


my deploy.wsdd file contains the line :
<beanMapping qname="myNS:XMLRepresentation" xmlns:myNS="urn:ConfiguratorManager" languageSpecificType="java:XMLRepresentation"/>


On the client side, I do :
QName qn = new QName("urn:ConfiguratorManager", "XMLRepresentation" );
call.registerTypeMapping(XMLRepresentation.class, qn,
new org.apache.axis.encoding.ser.BeanSerializerFactory(XMLRepresentation.class, qn), new org.apache.axis.encoding.ser.BeanDeserializerFactory(XMLRepresentation.class, qn));


call.setOperationName(new QName("http://soapinterop.org/";, "createXmlRepresentation"));
XMLRepresentation rep = (XMLRepresentation)conveyor.invoke(new Object[] {});



EveryThing seems to work well except the fact that the byte array is null!!
I know that, on the server side, the byte array is conformed.
It seems that the byte array isn't serialized from the server to the client.



I hope that I've clearly exposed my problem and that somebody will help me.

Thank by advance
Karim



Reply via email to