axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sandeep" <sadva...@binghamton.edu>
Subject Sending a String
Date Mon, 14 Jun 2004 21:09:23 GMT
Hello,

I have deployed a web-service which accepts a string argument from my client
and saves it to the local file system. This string is actually a class file
which I plan to load it at the server on the fly. 

In doing so, I receive an error as org.xml.sax.SAXParseException: An invalid
XML character (Unicode: 0x0) was found in the element content of the
document.

Bode snippet on the client is:

File f = new File("Test.class");
byte[] buffer = new byte[(int)f.length()];
BufferedInputStream inFromDisk = new BufferedInputStream(
							new
FileInputStream(f));
inFromDisk.read(buffer,0,(int)f.length());
String check = new String(buffer); 
//check is my string object containing the Test.class file

....

Options options = new Options(args);
String endpointURL = options.getURL();
args = options.getRemainingArgs();
Service  service = new Service();
Call     call    = (Call) service.createCall();
call.setTargetEndpointAddress( new java.net.URL(endpointURL) );
call.setOperationName( new QName("MyService", "serviceMethod") );
call.addParameter( "arg1", XMLType.XSD_STRING, ParameterMode.IN);

//call.setReturnType( org.apache.axis.encoding.XMLType.XSD_STRING );

call.invoke( new Object[] { check } ); //sending my string object
            
...

I believe that in order to send the byte codes as a parameter, I need to
apply encoding before I call the invoke method. Not being sure, I wanted to
explore any other way around by putting this Q on the group.

Any suggestions will be appreciated?

Thanks,

Sandeep Advani
Grid Research Lab, Binghamton University


Mime
View raw message