Yeah. It works now. Its my bad. Sorry about that.
BUt I have another problem. When I execute that method, I get the following
exception.
Caught SOAPException (SOAP-ENV:Client): No data.
What does this mean? I double checked that my soap method exists in the
descriptor and the implementation also exists on the server side. But the
call doesn't reach the server at all.
Praveen
----- Original Message -----
From: "Scott Nichol" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, January 03, 2003 2:28 PM
Subject: Re: Soap With attachments example
> This sample that I created from you code works for me, i.e. it does not
> throw an NPE.
>
> Scott Nichol
>
> import java.io.*;
> import java.util.*;
> import java.net.*;
> import org.w3c.dom.*;
> import org.xml.sax.*;
> import org.apache.soap.util.xml.*;
> import org.apache.soap.util.mime.*;
> import org.apache.soap.*;
> import org.apache.soap.transport.*;
> import org.apache.soap.encoding.*;
> import org.apache.soap.encoding.soapenc.*;
> import org.apache.soap.rpc.*;
> import org.apache.soap.messaging.*;
> import javax.activation.*;
> import javax.mail.internet.*;
> import javax.xml.parsers.*;
>
> public class TestAttachments {
> public static void main(String[] args) {
> try {
> URL url = new URL(args[0]);
>
> // Build the call.
> SOAPMappingRegistry smr = new SOAPMappingRegistry();
> Call call = new Call();
> call.setSOAPMappingRegistry(smr);
> call.setTargetObjectURI("urn:MyServiceName");
> call.setMethodName("myMethodName");
> call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
>
> byte[] sourceBytes = new byte[0];
>
> Vector params = new Vector();
> DataSource ds = new ByteArrayDataSource(sourceBytes,
> "application/octet-stream");
> DataHandler dh = new DataHandler(ds);
> params.addElement(new Parameter("source",
> javax.activation.DataHandler.class, dh, null));
>
> DataSource ds2 = new ByteArrayDataSource(sourceBytes,
> "application/octet-stream");
> DataHandler dh2 = new DataHandler(ds);
> params.addElement(new Parameter("thumb",
> javax.activation.DataHandler.class,
> dh2, null));
>
> call.setParams(params);
>
> // Invoke the call.
> Response resp;
>
> try {
> resp = call.invoke(url, "");
> //System.out.println("Response is: " + resp);
> } catch (SOAPException e) {
> System.err.println("Caught SOAPException");
> e.printStackTrace();
> }
> } catch (Exception e) {
> e.printStackTrace();
> }
> }
> }
>
>
> --
> To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
>
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>