On Thursday 17 October 2002 10:00, Thomas Börkel wrote: > > After a first look, I would say you should use Xerces and not > Crimson as XML parser.
That does not work either. But the error message is different. I will file a bug report. AxisFault faultCode: {http://xml.apache.org/axis/}Server.userException faultString: org.xml.sax.SAXParseException: Content is not allowed in prolog. faultActor: null faultDetail: stackTrace: org.xml.sax.SAXParseException: Content is not allowed in prolog. at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1162) at javax.xml.parsers.SAXParser.parse(SAXParser.java:345) at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:232) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:546) at org.apache.axis.Message.getSOAPEnvelope(Message.java:377) at org.apache.axis.client.Call.invokeEngine(Call.java:2132) at org.apache.axis.client.Call.invoke(Call.java:2102) at org.apache.axis.client.Call.invoke(Call.java:1851) at org.apache.axis.client.Call.invoke(Call.java:1777) at org.apache.axis.client.Call.invoke(Call.java:1315) at Client.main(Client.java:23) org.xml.sax.SAXParseException: Content is not allowed in prolog. at org.apache.axis.AxisFault.makeFault(AxisFault.java:120) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:551) at org.apache.axis.Message.getSOAPEnvelope(Message.java:377) at org.apache.axis.client.Call.invokeEngine(Call.java:2132) at org.apache.axis.client.Call.invoke(Call.java:2102) at org.apache.axis.client.Call.invoke(Call.java:1851) at org.apache.axis.client.Call.invoke(Call.java:1777) at org.apache.axis.client.Call.invoke(Call.java:1315) at Client.main(Client.java:23) Caused by: org.xml.sax.SAXParseException: Content is not allowed in prolog. at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1162) at javax.xml.parsers.SAXParser.parse(SAXParser.java:345) at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:232) at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:546) ... 7 more > > > > -----Original Message----- > > From: Matthias Brunner [mailto:[EMAIL PROTECTED]] > > Sent: Mittwoch, 16. Oktober 2002 16:45 > > To: [EMAIL PROTECTED] > > Subject: Attachments > > > > > > Hello, > > > > this is a repost since I did not get any replies from the user > > list. I looked at the attachments sample but realised that I > > cannot pass a DataHandler object between the functions because > > the client will eventually be written using MSSOAP and not axis. > > Then I read part of the SAAJ specification. > > Now I am quite confused. If I understood the spec correctly, the > > following code should be possible (and sufficient) for using > > attachments. Should this work and the Exception I get is due to > > axis not correctly implementing the spec? Or is it me who is > > wrong? > > > > Server: > > public class MyService { > > public String call() > > { > > SOAPMessage msg = > > > > MessageContext.getCurrentContext().getResponseMessage(); > > msg.addAttachmentPart(msg.createAttachmentPart("string1", > > "text/plain")); > > > > return "string2"; > > } > > } > > > > Client: > > > > ... > > call.setOperationName("call"); > > Object[] args = new Object[] {}; > > String ret = (String) call.invoke(args); > > ... > > > > > > I see in tcpmon that there IS attachment content (which seems to > > be correct) but nevertheless there is a SAXParseException thrown > > on client side. Did I make any mistakes? > > > > Software: Axis 1.0, Tomcat 4.1.12, JDK 1.4.1, Linux > > > > > > Stack trace: > > AxisFault > > faultCode: {http://xml.apache.org/axis/}Server.userException > > faultString: org.xml.sax.SAXParseException: Document root > > missing faultActor: null > > faultDetail: > > stackTrace: org.xml.sax.SAXParseException: Document root > > missing > > at > > org.apache.crimson.parser.Parser2.fatal(Parser2.java:3182) at > > org.apache.crimson.parser.Parser2.fatal(Parser2.java:3170) at > > org.apache.crimson.parser.Parser2.parseInternal(Parser2.java:501 > >) at org.apache.crimson.parser.Parser2.parse(Parser2.java:305) at > > org.apache.crimson.parser.XMLReaderImpl.parse(XMLReaderImpl.java > >:442) at javax.xml.parsers.SAXParser.parse(SAXParser.java:345) at > > org.apache.axis.encoding.DeserializationContextImpl.parse(Dese > > rializationContextImpl.java:232) > > at > > org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:546) > > at > > org.apache.axis.Message.getSOAPEnvelope(Message.java:377) at > > org.apache.axis.client.Call.invokeEngine(Call.java:2132) at > > org.apache.axis.client.Call.invoke(Call.java:2102) at > > org.apache.axis.client.Call.invoke(Call.java:1851) at > > org.apache.axis.client.Call.invoke(Call.java:1777) at > > org.apache.axis.client.Call.invoke(Call.java:1315) at > > test.TestClient.main(TestClient.java:123) > > > > Cheers! > > -- > > Matthias Brunner <[EMAIL PROTECTED]> > > PGP FP 7862 32B3 3B75 292A F76F 5042 8587 21AB 5B89 D501 > > Check out http://blumenstrasse.vol.at/~mb/gpgkey.asc -- Matthias Brunner <[EMAIL PROTECTED]> PGP FP 7862 32B3 3B75 292A F76F 5042 8587 21AB 5B89 D501 Check out http://blumenstrasse.vol.at/~mb/gpgkey.asc