Thanks Sietse for the idea.... But the problem with this is every time when i
run the client, it gives me a diff temp file name.... I cant really keep on
changing the file name in the client code.... Any other ideas or suggestions
?
sietsenicolaas.tenhoeve wrote:
>
> You have the link to the file so that shouldn't be a problem.
>
> You can do something like:
> File tempFile = new File("path/to/file.ATT");
> //Read stuff and create file with good name.
> tempFile.delete();
>
> This is quite basic stuff imho. Using google or the API should be
> clarifying.
>
> Bye,
> Sietse
>
> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Sent: 28 November 2007 13:19
> To: [email protected]
> Subject: RE: Axis 1.4 - Attachments Problem
>
>
> Hi Sietse,
> Thanks for the suggestion..
> How to get rid of the temp file which gets stored whenever i execute the
> client ? Do you have any idea regarding this ?
>
>
> sietsenicolaas.tenhoeve wrote:
>>
>> Hi,
>>
>> Then you have to watch for the mapping of the Datasource interface to
>> xml. It seems that there is some missing functionality (the filename
>> isn't set correctly or writing it to a file uses another name).
>>
>> You can probably work around it by adding the filename as a string a
>> call the method with the code snippet on the server side. After that
>> you can use it on the client side to create a correct named file.
>>
>> Sietse
>>
>> -----Original Message-----
>> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
>> Sent: 28 November 2007 12:41
>> To: [email protected]
>> Subject: RE: Axis 1.4 - Attachments Problem
>>
>>
>> Hi,
>> Thanks for replying.
>> When i used rdh.getDataSource().getName(), i get the name of the .att
>> file which gets stored by default in the temp folder. Something like
>> this, C:\DOCUME~1\ctr5654\LOCALS~1\Temp\Axis42312.att
>>
>> How can i get the original name of the file i.e., the source file name
> ?
>>
>>
>> sietsenicolaas.tenhoeve wrote:
>>>
>>> Hi Vaibhav,
>>>
>>> Since you have a DataHandler instance you can ask it the name.
>>> E.g. rdh.getDataSource().getName();
>>>
>>> According to the API: DataSources encapsulating files may choose to
>>> return the filename of the object. (Typically this would be the last
>>> component of the filename, not an entire pathname.)
>>>
>>> Regards,
>>> Sietse
>>>
>>>
>>> -----Original Message-----
>>> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
>>> Sent: 28 November 2007 11:54
>>> To: [email protected]
>>> Subject: Axis 1.4 - Attachments Problem
>>>
>>>
>>> Hi,
>>> My Requirement is to receive a PDF file from a server which sends a
>>> pdf file as an attachment. I am able to download the pdf as an
>>> attachment but not with the correct file name. And also whenever i
>>> try
>>
>>> to receive the PDF using a client program, a copy of the file with
>>> .ATT attachment is stored in temp folder.
>>> Can anyone help me on this ?
>>> I have attached the Service class, Client and WSDD.
>>>
>>> Service Class
>>> ---------------
>>> import java.net.MalformedURLException;
>>>
>>> import javax.activation.DataHandler;
>>> import javax.activation.DataSource;
>>> import javax.activation.FileDataSource;
>>>
>>> public class PDFAttachmentsService {
>>>
>>> public DataHandler sendPdfs() throws MalformedURLException {
>>>
>>> DataSource ds = new FileDataSource("C:/XYZ.pdf");
>>> DataHandler dataHandler = new DataHandler(ds);
>>> 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:PD
>>> F
>>> At
>>> tachmentsService");
>>>
>>> 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;
>>> FileOutputStream outputStream = new
>>> FileOutputStream("D:/CopiedPDF.pdf");
>>> rdh.writeTo(outputStream);
>>> outputStream.flush();
>>> outputStream.close();
>>> } 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.JAFDataHandlerDeserializer
>>> F
>>> ac
>>> tory"
>>> languageSpecificType="java:javax.activation.DataHandler"
>>> qname="ns1:DataHandler"
>>>
>>> serializer="org.apache.axis.encoding.ser.JAFDataHandlerSerializerFact
>>> o
>>> ry
>>> "
>>> encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
>>> />
>>> </service>
>>>
>>> </deployment>
>>>
>>> --
>>> View this message in context:
>>> http://www.nabble.com/Axis-1.4---Attachments-Problem-tf4887980.html#a
>>> 1
>>> 39
>>> 90733
>>> Sent from the Axis - User mailing list archive at Nabble.com.
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>
>>>
>>>
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Axis-1.4---Attachments-Problem-tf4887980.html#a1
>> 39
>> 91477
>> Sent from the Axis - User mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>>
>
> --
> View this message in context:
> http://www.nabble.com/Axis-1.4---Attachments-Problem-tf4887980.html#a139
> 92200
> Sent from the Axis - User mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
--
View this message in context:
http://www.nabble.com/Axis-1.4---Attachments-Problem-tf4887980.html#a13994046
Sent from the Axis - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]