Hi ,
My requirement is to get a pdf from a service. The server sends a pdf and
the client has to store the same in the file system. But i am unable to save
the pdf in a location i want instead of the windows temp folder. Can some
one help me on this pls. I have attached the Service class, the client and
the wsdd.

// Service Class
public class PDFAttachmentsService {

        public DataHandler sendPdfs() throws MalformedURLException {

                String filename = "C:/EDDHome/1_52043_1.pdf";
                DataHandler dataHandler = new DataHandler(new 
FileDataSource(filename));

                return dataHandler;
        }
}

// Client Class
public class PDFAttachment {
        
        public static void main(String args[]) {
                try {
                        Service service = new Service();

                        Call call = (Call) service.createCall();

                        call
                                
.setTargetEndpointAddress("http://localhost:8080/axis/services/urn:PDFAttachmentsService";);

                        call.setOperationName(new 
QName("urn:PDFAttachmentsService",
                                        "sendPdfs")); 

                        QName qnameAttachment = new 
QName("urn:PDFAttachmentsService",
                                        "DataHandler");
                        call.registerTypeMapping(PDFAttachment.class, 
qnameAttachment,
                                        JAFDataHandlerSerializerFactory.class,
                                        
JAFDataHandlerDeserializerFactory.class);

                        call.setReturnType(qnameAttachment);

                        Object ret = call.invoke(new Object[] {});

                        if (null == ret) {
                                System.out.println("Received null ");
                                throw new AxisFault("", "Received null", null, 
null);
                        }

                        if (ret instanceof String) {
                                System.out.println("Received problem response 
from server: "
                                                + ret);
                                throw new AxisFault("", (String) ret, null, 
null);
                        }

                        if (!(ret instanceof DataHandler)) {
                                // The wrong type of object that what was 
expected.
                                System.out.println("Received problem response 
from server:"
                                                + ret.getClass().getName());
                                throw new AxisFault("",
                                                "Received problem response from 
server:"
                                                                + 
ret.getClass().getName(), null, null);

                        }

                        DataHandler rdh = (DataHandler) ret;

                        System.out.println("Received thro :" + 
rdh.getClass().getName());
                } catch (Exception e) {
                        System.err.println(e);
                        e.printStackTrace();
                }
        }
}

// WSDD file
<!-- This deploys PDF attachment service.  -->
<deployment xmlns="http://xml.apache.org/axis/wsdd/";
xmlns:java="http://xml.apache.org/axis/wsdd/providers/java";
xmlns:ns1="urn:PDFAttachmentsService" >
  <service name="urn:PDFAttachmentsService" provider="java:RPC" >
    <parameter name="className"
value="samples.pdfattachments.PDFAttachmentsService"/>
    <parameter name="allowedMethods" value="sendPdfs"/>
    <parameter name="dataHandler" type="ns1:DataHandler"/>    

 <typeMapping
deserializer="org.apache.axis.encoding.ser.JAFDataHandlerDeserializerFactory"
   languageSpecificType="java:javax.activation.DataHandler"
qname="ns1:DataHandler"
   
serializer="org.apache.axis.encoding.ser.JAFDataHandlerSerializerFactory" 
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/";
     />
  </service>

</deployment>

-- 
View this message in context: 
http://www.nabble.com/Axis---Using-attachments-tf4860902.html#a13910296
Sent from the Axis - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to