In our program, we have two web services. One webservice (calling
webservice) uses 'stub' class of the other webservice (called
webservice) to contact and get some data from it (called webservice).
The received data (to the calling webservice) is an XML string
describing the 'zip' format data. While trying to unzip the data, it
throws the following exception.
I am using tomcat-4.1.18 and apache webservices.
I would greatly appreciate your suggestions regarding this.
thanks,
CODE DETAILS
============
edu.vt.vbi.xml.attachments.Attachments as =
buildTreesAuto(attxml);
edu.vt.vbi.xml.attachments.Attachment a =
as.getAttachment(0);
size = Integer.parseInt((a.getMessage()).getLength());
System.out.println("***********The attachment size is: " +
size);
// parse xml for attachment or normal xml data
// if normal xml data parsable, work as normal else
//parse attachment as following
MessageContext mc = call.getMessageContext();
System.out.println("After getMessageContext");
org.apache.axis.Message m = mc.getCurrentMessage();
System.out.println("After getMessage: " +
m.countAttachments());
java.util.Iterator ai = m.getAttachments();
EXCEPTION DETAILS
=================
***********The attachment size is: 5439150
After getMessageContext
After getMessage: 0
15 [Thread-5] ERROR axis.Message - Exception:
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: java.io.IOException: No such file or directory
faultActor: null
faultNode: null
faultDetail:
stackTrace: java.io.IOException: No such file or directory
at java.io.UnixFileSystem.createFileExclusively(Native Method)
at java.io.File.checkAndCreate(File.java:1313)
at java.io.File.createTempFile(File.java:1401)
at org.apache.axis.attachments.ManagedMemoryDataSource.flushToDisk(ManagedMemoryDataSource.java:$
at org.apache.axis.attachments.ManagedMemoryDataSource.write(ManagedMemoryDataSource.java:307)
at org.apache.axis.attachments.ManagedMemoryDataSource.<init>(ManagedMemoryDataSource.java$
at org.apache.axis.attachments.MultiPartRelatedInputStream.readTillFound(MultiPartRelatedInputSt$
at org.apache.axis.attachments.MultiPartRelatedInputStream.readAll(MultiPartRelatedInputStream.j$
at org.apache.axis.attachments.MultiPartRelatedInputStream.getAttachments(MultiPartRelatedInputS$
at org.apache.axis.attachments.AttachmentsImpl.mergeinAttachments(AttachmentsImpl.java:192)
at org.apache.axis.attachments.AttachmentsImpl.getAttachments(AttachmentsImpl.java:394)
at org.apache.axis.Message.getAttachments(Message.java:562)
at edu.vt.vbi.util.InvokeService.getAttachments(Unknown
Source)
at edu.vt.vbi.pathport.server.webservice.mummer.VbidasSoapBindingStub.getFeature(Unknown
Source)
at edu.vt.vbi.pathport.server.webservice.mummer.MummerImpl.getDASData(Unknown
Source)
at edu.vt.vbi.pathport.server.webservice.mummer.MummerImpl.callMummer(Unknown
Source)
at edu.vt.vbi.pathport.server.webservice.mummer.MummerImpl.defaultMumAna(Unknown
Source)
at edu.vt.vbi.pathport.server.webservice.mummer.ws.MummerSoapBindingImpl.defaultMumAna(Unknown
S$
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:385)
at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:293)
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:332)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:156)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:126)
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:469)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:315)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:766)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:339)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:$
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPip$
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPip$
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPip$
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPip$
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPip$
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPip$
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Proto$
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)
at java.lang.Thread.run(Thread.java:536)