HI! After a first look, I would say you should use Xerces and not Crimson as XML parser.
Regards, Thomas > -----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 > > >