1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Soap Nachricht: Premature end of file

  • Eristoff
  • 14. Dezember 2005 um 14:23
  • Unerledigt
  • Eristoff
    9
    Eristoff
    Mitglied
    Reaktionen
    1
    Punkte
    886
    Beiträge
    127
    • 14. Dezember 2005 um 14:23
    • #1

    Hallo!

    Ich habe zwei Anwendungen die uA. SOAP Nachrichten austauschen. Also Appl. 1 sendet SOAP Nachricht an Appl. 2, diese übernimmt sie und sendet eine SOAP Nachricht zurück. Beide Applikationen laufen am gleichen Webserver.
    Appl. 2 kann die Nachricht von Appl. 1 problemlos parsen. Die Antwort von Appl. 2 kann von Appl. 1 aber nicht mehr geparst werden. Folgender Fehler tritt auf:

    Code
    14.12.2005 14:12:01 com.sun.xml.messaging.saaj.soap.EnvelopeFactory createEnvelope
    SCHWERWIEGEND: SAAJ0511: Umschlag kann aus angegebener Quelle nicht erstellt werden
    2005-12-14 14:12:01,331 ERROR [RMI TCP Connection(2)-194.37.75.123 at.lfrz.replication.utils.ReplicationHelper.getValues
    ByTagName,131] - Unable to create envelope from given source:
    com.sun.xml.messaging.saaj.SOAPExceptionImpl: Unable to create envelope from given source:
            at com.sun.xml.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:111)
            at com.sun.xml.messaging.saaj.soap.ver1_2.SOAPPart1_2Impl.createEnvelopeFromSource(SOAPPart1_2Impl.java:39)
            at com.sun.xml.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:98)
            at at.lfrz.replication.utils.ReplicationHelper.getValuesByTagName(ReplicationHelper.java:114)
            at at.lfrz.replication.utils.ReplicationHelper.checkSOAPReply(ReplicationHelper.java:34)
            at at.lfrz.replication.utils.QueueListener.onMessage(QueueListener.java:62)
            at org.exolab.jms.client.JmsMessageConsumer.onMessage(JmsMessageConsumer.java:292)
            at org.exolab.jms.client.JmsSession.execute(JmsSession.java:669)
            at org.exolab.jms.client.JmsSession.onMessage(JmsSession.java:607)
            at org.exolab.jms.client.rmi.RmiJmsSessionStub.onMessage(RmiJmsSessionStub.java:539)
            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:585)
            at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
            at sun.rmi.transport.Transport$1.run(Transport.java:153)
            at java.security.AccessController.doPrivileged(Native Method)
            at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
            at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
            at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
            at java.lang.Thread.run(Thread.java:595)
    Caused by: javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: Premature end of file.
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:650)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:279)
            at com.sun.xml.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:97)
            ... 20 more
    Caused by: org.xml.sax.SAXParseException: Premature end of file.
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1269)
            at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:584)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:638)
            ... 22 more
    CAUSE:
    javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: Premature end of file.
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:650)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:279)
            at com.sun.xml.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:97)
            at com.sun.xml.messaging.saaj.soap.ver1_2.SOAPPart1_2Impl.createEnvelopeFromSource(SOAPPart1_2Impl.java:39)
            at com.sun.xml.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:98)
            at at.lfrz.replication.utils.ReplicationHelper.getValuesByTagName(ReplicationHelper.java:114)
            at at.lfrz.replication.utils.ReplicationHelper.checkSOAPReply(ReplicationHelper.java:34)
            at at.lfrz.replication.utils.QueueListener.onMessage(QueueListener.java:62)
            at org.exolab.jms.client.JmsMessageConsumer.onMessage(JmsMessageConsumer.java:292)
            at org.exolab.jms.client.JmsSession.execute(JmsSession.java:669)
            at org.exolab.jms.client.JmsSession.onMessage(JmsSession.java:607)
            at org.exolab.jms.client.rmi.RmiJmsSessionStub.onMessage(RmiJmsSessionStub.java:539)
            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:585)
            at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
            at sun.rmi.transport.Transport$1.run(Transport.java:153)
            at java.security.AccessController.doPrivileged(Native Method)
            at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
            at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
            at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
            at java.lang.Thread.run(Thread.java:595)
    Caused by: org.xml.sax.SAXParseException: Premature end of file.
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1269)
            at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:584)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:638)
            ... 22 more
    ---------
    org.xml.sax.SAXParseException: Premature end of file.
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1269)
            at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:584)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:638)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:279)
            at com.sun.xml.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:97)
            at com.sun.xml.messaging.saaj.soap.ver1_2.SOAPPart1_2Impl.createEnvelopeFromSource(SOAPPart1_2Impl.java:39)
            at com.sun.xml.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:98)
            at at.lfrz.replication.utils.ReplicationHelper.getValuesByTagName(ReplicationHelper.java:114)
            at at.lfrz.replication.utils.ReplicationHelper.checkSOAPReply(ReplicationHelper.java:34)
            at at.lfrz.replication.utils.QueueListener.onMessage(QueueListener.java:62)
            at org.exolab.jms.client.JmsMessageConsumer.onMessage(JmsMessageConsumer.java:292)
            at org.exolab.jms.client.JmsSession.execute(JmsSession.java:669)
            at org.exolab.jms.client.JmsSession.onMessage(JmsSession.java:607)
            at org.exolab.jms.client.rmi.RmiJmsSessionStub.onMessage(RmiJmsSessionStub.java:539)
            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:585)
            at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
            at sun.rmi.transport.Transport$1.run(Transport.java:153)
            at java.security.AccessController.doPrivileged(Native Method)
            at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
            at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
            at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
            at java.lang.Thread.run(Thread.java:595)
    CAUSE:
    javax.xml.transform.TransformerException: org.xml.sax.SAXParseException: Premature end of file.
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:650)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:279)
            at com.sun.xml.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:97)
            at com.sun.xml.messaging.saaj.soap.ver1_2.SOAPPart1_2Impl.createEnvelopeFromSource(SOAPPart1_2Impl.java:39)
            at com.sun.xml.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:98)
            at at.lfrz.replication.utils.ReplicationHelper.getValuesByTagName(ReplicationHelper.java:114)
            at at.lfrz.replication.utils.ReplicationHelper.checkSOAPReply(ReplicationHelper.java:34)
            at at.lfrz.replication.utils.QueueListener.onMessage(QueueListener.java:62)
            at org.exolab.jms.client.JmsMessageConsumer.onMessage(JmsMessageConsumer.java:292)
            at org.exolab.jms.client.JmsSession.execute(JmsSession.java:669)
            at org.exolab.jms.client.JmsSession.onMessage(JmsSession.java:607)
            at org.exolab.jms.client.rmi.RmiJmsSessionStub.onMessage(RmiJmsSessionStub.java:539)
            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:585)
            at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
            at sun.rmi.transport.Transport$1.run(Transport.java:153)
            at java.security.AccessController.doPrivileged(Native Method)
            at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
            at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
            at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
            at java.lang.Thread.run(Thread.java:595)
    Caused by: org.xml.sax.SAXParseException: Premature end of file.
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1269)
            at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:584)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:638)
            ... 22 more
    ---------
    org.xml.sax.SAXParseException: Premature end of file.
            at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1269)
            at org.xml.sax.helpers.XMLFilterImpl.parse(XMLFilterImpl.java:333)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transformIdentity(TransformerImpl.java:584)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:638)
            at com.sun.org.apache.xalan.internal.xsltc.trax.TransformerImpl.transform(TransformerImpl.java:279)
            at com.sun.xml.messaging.saaj.soap.EnvelopeFactory.createEnvelope(EnvelopeFactory.java:97)
            at com.sun.xml.messaging.saaj.soap.ver1_2.SOAPPart1_2Impl.createEnvelopeFromSource(SOAPPart1_2Impl.java:39)
            at com.sun.xml.messaging.saaj.soap.SOAPPartImpl.getEnvelope(SOAPPartImpl.java:98)
            at at.lfrz.replication.utils.ReplicationHelper.getValuesByTagName(ReplicationHelper.java:114)
            at at.lfrz.replication.utils.ReplicationHelper.checkSOAPReply(ReplicationHelper.java:34)
            at at.lfrz.replication.utils.QueueListener.onMessage(QueueListener.java:62)
            at org.exolab.jms.client.JmsMessageConsumer.onMessage(JmsMessageConsumer.java:292)
            at org.exolab.jms.client.JmsSession.execute(JmsSession.java:669)
            at org.exolab.jms.client.JmsSession.onMessage(JmsSession.java:607)
            at org.exolab.jms.client.rmi.RmiJmsSessionStub.onMessage(RmiJmsSessionStub.java:539)
            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:585)
            at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
            at sun.rmi.transport.Transport$1.run(Transport.java:153)
            at java.security.AccessController.doPrivileged(Native Method)
            at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
            at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
            at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
            at java.lang.Thread.run(Thread.java:595)
    Alles anzeigen



    Der Fehler tritt im getEnvelope(); von folgendem Code auf:

    Code
    final SOAPPart soapPart = msg.getSOAPPart();
    final SOAPEnvelope envelope = soapPart.getEnvelope();
    final SOAPBody soapBody = envelope.getBody();
    final NodeList nodeList = soapBody.getElementsByTagName(tagName);



    erzeugung einer SOAP Nachricht:

    Code
    final MessageFactory mf = MessageFactory.newInstance();
    msg = mf.createMessage();
    final SOAPPart soapPart = msg.getSOAPPart();
    final SOAPEnvelope envelope = soapPart.getEnvelope();
    final SOAPBody body = envelope.getBody();



    ich hoffe jemand kann mir helfen, verzweifle schön langsam...

  • KeinWunder
    7
    KeinWunder
    Mitglied
    Punkte
    490
    Beiträge
    90
    • 14. Dezember 2005 um 17:06
    • #2

    ich tipp auf einen XML Fehler in der Nachricht
    hatte mal einen ähnlichen Fehler (hatte zwar nichts mit SOAP zu tun aber mit XML)

    Four stages of acceptance:
    1.) this is worthless nonsense
    2.) this is interesting, but perverse, point of view
    3.) this is true, but quite unimportant
    4.) I alwas said so
    J.B.S. Haldane

  • duracell
    5
    duracell
    Mitglied
    Punkte
    220
    Beiträge
    40
    • 14. Dezember 2005 um 17:43
    • #3

    hatte auch mal ein ähnliches problem mit XMLRPC. das lag meines wissens damals an einem character, das nicht dem angegebenen Content-Type entsprach - also check mal die message auf sonderzeichen, und ob du die richtige codierung gewählt hast.

  • Eristoff
    9
    Eristoff
    Mitglied
    Reaktionen
    1
    Punkte
    886
    Beiträge
    127
    • 14. Dezember 2005 um 20:26
    • #4

    daran hab ich auch schon gedacht.
    ausser den (generierten) soap tags hat die nachricht(soap body) folgenden aufbau:
    <code>ok</code>
    <text>successful update</text>

  • Eristoff
    9
    Eristoff
    Mitglied
    Reaktionen
    1
    Punkte
    886
    Beiträge
    127
    • 15. Dezember 2005 um 07:54
    • #5

    genaugenommen sieht die nachricht folgendermaßen aus:

    XML
    <?xml version="1.0" encoding="UTF-8"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2002/06/soap-envelope"><SOAP-ENV:Header/><SOAP-ENV:Body><code>ok</code><text>successful update</text></SOAP-ENV:Body></SOAP-ENV:Envelope>
  • Eristoff
    9
    Eristoff
    Mitglied
    Reaktionen
    1
    Punkte
    886
    Beiträge
    127
    • 15. Dezember 2005 um 10:49
    • #6

    fehler gefunden (i bin a volltrottl)

    hab in der konfiguration noch einen 2. Client (App2) aktiviert gehabt, der aber down war und dessen Antwort sicher keine SOAP Nachricht war

  • duracell
    5
    duracell
    Mitglied
    Punkte
    220
    Beiträge
    40
    • 16. Dezember 2005 um 09:06
    • #7

    gut gemacht. arbeite ab jänner auch mit soap. bin schon gespannt, womit ich zu kämpfen haben werde.

  • Eristoff
    9
    Eristoff
    Mitglied
    Reaktionen
    1
    Punkte
    886
    Beiträge
    127
    • 16. Dezember 2005 um 09:26
    • #8

    falls java im spiel ist, kann ich dir die jre 1.5 empfehlen. im vergleich zur 1.4 hat sich bez. soap einiges geändert

  • Maximilian Rupp 27. Dezember 2024 um 12:06

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Rechtliches

Impressum

Datenschutzerklärung