Unexpected XML reader state

Hi,
I've written a simple web services and encountered the following error when I run it:
java.rmi.RemoteException: received fault: "Internal Server Error (deserializatio
n error: deserialization error: unexpected XML reader state. expected: END but f
ound: START)" (code: "Server" namespace: "http://schemas.xmlsoap.org/soap/envelo
pe/"); nested exception is:
at com.sun.xml.rpc.client.StreamingSender._raiseFaul (StreamingSender.java:321)
at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:211)
Any suggestion? Thanks
William

This happens when the elements of the object being
serialized are not sent in the order specified. You
should generate your server side artifacts using the
service endpoint interface and then publish your
endpoint. Then use wscompile and generate the client
side artifacts using the published WSDL from the step
above. The published WSDL document will specify the
order that things are to be serialized. Do not
generate client artifacts directly from the service
endpoint interface unless you use the -gen:both option
and you use thoses generated server side artifacts as
well.I've checked that my version of jwsdp using is 1.0-ea2, is the above solution suitable to this version?
William

Similar Messages

  • Error: unexpected XML reader state. expected: END but found: START:

    I am getting following error while invoking method 'GetVersionInfo' (.net web service over dll) which takes one input parameter(string) and gives two output parameters(both short):
    ERROR at line 1:
    ORA-29532: Java call terminated by uncaught Java exception: deserialization
    error: unexpected XML reader state. expected: END but found: START:
    {UPPLink}pnVersionMajor
    ORA-06512: at "SYS.UTL_DBWS", line 388
    ORA-06512: at "SYS.UTL_DBWS", line 385
    ORA-06512: at line 40
    Expected Request is as follows:
    POST /UPPLink/UPPLink.asmx HTTP/1.1
    Host: 172.16.1.38
    Content-Type: text/xml; charset=utf-8
    Content-Length: length
    SOAPAction: "UPPLink/GetVersionInfo"
    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
    <GetVersionInfo xmlns="UPPLink">
    <ignore>string</ignore>
    </GetVersionInfo>
    </soap:Body>
    </soap:Envelope>
    EXpected Response is as follows:
    HTTP/1.1 200 OK
    Content-Type: text/xml; charset=utf-8
    Content-Length: length
    <?xml version="1.0" encoding="utf-8"?>
    <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
    <GetVersionInfoResponse xmlns="UPPLink">
    <GetVersionInfoResult>
    <pnVersionMajor>short</pnVersionMajor>
    <pnVersionMinor>short</pnVersionMinor>
    </GetVersionInfoResult>
    </GetVersionInfoResponse>
    </soap:Body>
    </soap:Envelope>
    The PL/SQL code I am using is as follows:
    DECLARE
    service_ sys.utl_dbws.SERVICE;
    call_ sys.UTL_DBWS.call;
    service_qname sys.utl_dbws.QNAME;
    port_qname sys.utl_dbws.QNAME;
    operation_qname sys.utl_dbws.QNAME;
    string_type_qname sys.utl_dbws.QNAME;
    number_type_qname sys.utl_dbws.QNAME;
    retx ANYDATA;
    strEntry VARCHAR2(100);
    retx_string VARCHAR2(100);
    majorVersion NUMBER;
    minorVersion NUMBER;
    params sys.utl_dbws.ANYDATA_LIST;
    v_outputs sys.utl_dbws.anydata_list;
    BEGIN
    dbms_output.put_line('Starting Function');
    service_qname := sys.utl_dbws.to_qname(null, 'UPPLink');
    strEntry := 'vab';
    dbms_output.put_line('Creating Service');
    service_ := sys.utl_dbws.create_service(HTTPURITYPE('http://172.16.1.38/UPPLink/UPPLink.asmx?WSDL'), service_qname);
    dbms_output.put_line('Creating Operation');
    operation_qname := sys.utl_dbws.to_qname(null, 'GetVersionInfo');
    dbms_output.put_line('Calling Service');
    call_ := sys.utl_dbws.create_call(service_, null, operation_qname);
    sys.utl_dbws.set_property(call_, 'SOAPACTION_USE', 'true');
    sys.utl_dbws.set_property(call_, 'SOAPACTION_URI', 'UPPLink/GetVersionInfo');
    sys.utl_dbws.set_property(call_, 'OPERATION_STYLE', 'rpc');
    string_type_qname := sys.utl_dbws.to_qname('http://www.w3.org/2001/XMLSchema', 'string');
    number_type_qname := sys.utl_dbws.to_qname('http://www.w3.org/2001/XMLSchema', 'short');
    sys.utl_dbws.add_parameter(call_, 'ignore', string_type_qname, 'ParameterMode.IN');
    sys.utl_dbws.add_parameter(call_, 'pnVersionMinor', number_type_qname, 'ParameterMode.OUT');
    sys.utl_dbws.set_return_type(call_, number_type_qname);
    params(0) := ANYDATA.convertvarchar2(strEntry);
    dbms_output.put('Invoking with Input Parameter: ');
    dbms_output.put_line(ANYDATA.ACCESSVARCHAR2(params(0)));
    retx := sys.utl_dbws.invoke(call_, params);
    dbms_output.put_line('Invoke complete');
    majorVersion := retx.accessnumber;
    dbms_output.put_line('Major Version ' || majorVersion);
    v_outputs := SYS.utl_dbws.get_output_values(call_);
    minorVersion := ANYDATA.AccessNumber(v_outputs(1));
    dbms_output.put_line('Minor Version ' || minorVersion);
    sys.utl_dbws.release_service(service_);
    END;
    /

    Actually, the name needs to match what is specified in the WSDL file.

  • JAX-RPC deserialization error: unexpected XML reader state

    Guys,
    Trying to write a Jax-Rpc client that consumes a web service hosted on WebLogic 7.1 talking soap 1.1. I can bind to that service using Apache SOAP - so I don't think that service is returning invalid XML.
    Is there something in my client's classpath that's old or not compatible ?
    Getting the following exception
    java.rmi.RemoteException: Runtime exception; nested exception is:
    deserialization error: unexpected XML reader state. expected: END but found: START: stockSymb
    ol
    deserialization error: unexpected XML reader state. expected: END but found: START: stockSymbol
    at com.sun.xml.rpc.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:209)
    at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerIm
    pl.java:115)
    at trader.TraderServicePort_buy_ResponseStruct_SOAPSerializer.doDeserialize(TraderServicePort
    buyResponseStruct_SOAPSerializer.java:37)
    at com.sun.xml.rpc.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:165)
    at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerIm
    pl.java:115)
    at trader.TraderServicePort_Stub._deserialize_buy(TraderServicePort_Stub.java:180)
    at trader.TraderServicePort_Stub._readFirstBodyElement(TraderServicePort_Stub.java:153)
    at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:168)
    at trader.TraderServicePort_Stub.buy(TraderServicePort_Stub.java:115)
    at portal.jsp._portal._test.__TestJaxrpc._jspService(__TestJaxrpc.java:83)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:120)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:138)
    at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:945)
    at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:909)
    at weblogic.servlet.internal.ServletContextManager.invokeServlet(ServletContextManager.java:2
    69)
    at weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.java:392)
    at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:274)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:130)
    CAUSE:
    unexpected XML reader state. expected: END but found: START: stockSymbol
    at com.sun.xml.rpc.streaming.XMLReaderUtil.verifyReaderState(XMLReaderUtil.java:49)
    at trader.TradeResult_SOAPSerializer.doDeserialize(TradeResult_SOAPSerializer.java:66)
    at com.sun.xml.rpc.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:165)
    at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerIm
    pl.java:115)
    at trader.TraderServicePort_buy_ResponseStruct_SOAPSerializer.doDeserialize(TraderServicePort
    buyResponseStruct_SOAPSerializer.java:37)
    at com.sun.xml.rpc.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:165)
    at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerIm
    pl.java:115)
    at trader.TraderServicePort_Stub._deserialize_buy(TraderServicePort_Stub.java:180)
    at trader.TraderServicePort_Stub._readFirstBodyElement(TraderServicePort_Stub.java:153)
    at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:168)
    at trader.TraderServicePort_Stub.buy(TraderServicePort_Stub.java:115)
    at portal.jsp._portal._test.__TestJaxrpc._jspService(__TestJaxrpc.java:83)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:120)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:138)
    at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:945)
    at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:909)
    at weblogic.servlet.internal.ServletContextManager.invokeServlet(ServletContextManager.java:2
    69)
    at weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.java:392)
    at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:274)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:130)
    Thanks
    Atish

    Using WSDP 1.1 this can be fixed IF you're using a static stub to access the service by running wscompile with the -f:searchschema option when generating the client stubs. It will then search the schema aggressively for subtypes when generating the stubs and your client will function correctly. The downside is that this ties your client down to using implementation specific functionality that is not part of the standard, which IMHO is very bad but if you're happy to live with this then it will work.
    Therefore I want to use a dynamic proxy client. For this you don't need to use the wscompile tool to generate client stubs and therefore the above fix doesn't work. I have searched the API documentation for some method that would have the same effect but thus far to no avail. Does anybody have any ideas?
    On a side note I have to say I'm fairly unhappy that in the entire 900 page web services tutorial no mention is made of how to utilise inheritance for parameter and return types without running into problems, neither is any mention made of support for / lack of support for polymorphism which also seems to cause problems. Forgive my sarcasm and lack of grace but, "What, is it 1975 already?" In this day and age I DO expect to be able to use these things without having to specify obscure compiler options, or indeed worry about them in any way whatsoever.

  • Deserialization error: unexpected XML reader state. expected: END but found

    I have a JWSDP (on weblogic 8.1 SP2) web service that is supposed to return a string that contains a small XML file. The client can call and invoke the service just fine and the service runs. When the client reads the response it blows up with the error below, what is causing this? The response looks okay to me.
    ====================================
    ERROR FROM THE CLIENT
    ====================================
    [java] java.rmi.RemoteException: Runtime exception; nested exception is:
    [java] deserialization error: unexpected XML reader state. expected: END but found: START: exchangeDataResult
    [java] at com.sun.xml.rpc.client.StreamingSender._handleRuntimeExceptionInSend(Ljava.lang.RuntimeExceptionV(StreamingSender.java:248)
    [java] at com.sun.xml.rpc.client.StreamingSender._send(Ljava.lang.String;Lcom.sun.xml.rpc.client.StreamingSenderStateV(StreamingSender.java:230)
    [java] at com.mcdata.websvc.riverbed.server.DataExchangerSoap_Stub.exchangeData(Ljava.lang.String;Ljava.lang.String;Ljava.lang.String;Ljava.lang.StringLjava.lang.String;(DataExchangerSoap_Stub.java:70)
    [java] at jsp_compiled.__index._jspService(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponseV(__index.java:141)
    [java] at weblogic.servlet.jsp.JspBase.service(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponseV(JspBase.java:33)
    [java] at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava.lang.Object;(ServletStubImpl.java:971)
    [java] at weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;Lweblogic.servlet.internal.FilterChainImplV(ServletStubImpl.java:402)
    [java] at weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponseV(ServletStubImpl.java:305)
    [java] at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava.lang.Object;(WebAppServletContext.java:6350)
    [java] at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic.security.subject.AbstractSubject;Ljava.security.PrivilegedActionLjava.lang.Object;(AuthenticatedSubject.java:317)
    [java] at weblogic.security.service.SecurityManager.runAs(Lweblogic.security.acl.internal.AuthenticatedSubject;Lweblogic.security.acl.internal.AuthenticatedSubject;Ljava.security.PrivilegedActionLjava.lang.Object;(SecurityManager.java:118)
    [java] at weblogic.servlet.internal.WebAppServletContext.invokeServlet(Lweblogic.servlet.internal.ServletRequestImpl;Lweblogic.servlet.internal.ServletResponseImplV(WebAppServletContext.java:3635)
    [java] at weblogic.servlet.internal.ServletRequestImpl.execute(Lweblogic.kernel.ExecuteThreadV(ServletRequestImpl.java:2585)
    [java] at weblogic.kernel.ExecuteThread.execute(Lweblogic.kernel.ExecuteRequestV(ExecuteThread.java:197)
    [java] at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:170)
    [java] at java.lang.Thread.startThreadFromVM(Ljava.lang.ThreadV(Unknown Source)
    [java] Caused by: deserialization error: unexpected XML reader state. expected: END but found: START: exchangeDataResult
    [java] at com.sun.xml.rpc.encoding.literal.LiteralSimpleTypeSerializer.deserialize(Ljavax.xml.namespace.QName;Lcom.sun.xml.rpc.streaming.XMLReader;Lcom.sun.xml.rpc.encoding.SOAPDeserializationContextLjava.lang.Object;(LiteralSimpleTypeSeri
    alizer.java:133)
    [java] at com.mcdata.websvc.riverbed.server.DataExchangerSoap_Stub._deserialize_exchangeData(Lcom.sun.xml.rpc.streaming.XMLReader;Lcom.sun.xml.rpc.encoding.SOAPDeserializationContext;Lcom.sun.xml.rpc.client.StreamingSenderStateV(DataExchan
    gerSoap_Stub.java:117)
    [java] at com.mcdata.websvc.riverbed.server.DataExchangerSoap_Stub._readFirstBodyElement(Lcom.sun.xml.rpc.streaming.XMLReader;Lcom.sun.xml.rpc.encoding.SOAPDeserializationContext;Lcom.sun.xml.rpc.client.StreamingSenderStateV(DataExchangerS
    oap_Stub.java:104)
    [java] at com.sun.xml.rpc.client.StreamingSender._send(Ljava.lang.String;Lcom.sun.xml.rpc.client.StreamingSenderStateV(StreamingSender.java:158)
    [java] ... 14 more
    ====================================
    SOAP RESPONSE
    ====================================
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <env:Header>
    </env:Header>
    <env:Body env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <m:exchangeDataResponse xmlns:m="https://partners.mcdata.com">
    <exchangeDataResult xsi:type="xsd:string"><status>OK</status>
    <message>Transaction accepted.</message></exchangeDataResult>
    </m:exchangeDataResponse>
    </env:Body>
    </env:Envelope>
    ====================================
    WSDL
    ====================================
    <?xml version="1.0" encoding="utf-8"?>
    <wsdl:definitions
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:tns="https://partners.mcdata.com"
    xmlns:s="http://www.w3.org/2001/XMLSchema"
    xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
    xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
    targetNamespace="https://partners.mcdata.com"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    name="">
    <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="https://partners.mcdata.com">
    <s:element name="exchangeData">
    <s:complexType>
    <s:sequence>
    <s:element minOccurs="0" maxOccurs="1" name="sender" type="s:string" />
    <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
    <s:element minOccurs="0" maxOccurs="1" name="transactionType" type="s:string" />
    <s:element minOccurs="0" maxOccurs="1" name="data" type="s:string" />
    </s:sequence>
    </s:complexType>
    </s:element>
    <s:element name="exchangeDataResponse" type="s:string" />
    </s:schema>
    </wsdl:types>
    <wsdl:message name="exchangeDataSoapIn">
    <wsdl:part name="parameters" element="tns:exchangeData" />
    </wsdl:message>
    <wsdl:message name="exchangeDataSoapOut">
    <wsdl:part name="parameters" element="tns:exchangeDataResponse" />
    </wsdl:message>
    <wsdl:portType name="DataExchangerSoap">
    <wsdl:operation name="exchangeData">
    <wsdl:input message="tns:exchangeDataSoapIn" />
    <wsdl:output message="tns:exchangeDataSoapOut" />
    </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="DataExchangerSoap" type="tns:DataExchangerSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="exchangeData">
    <soap:operation soapAction="https://208.47.133.243/riverbedshipserver/exchangeData" style="document" />
    <wsdl:input>
    <soap:body use="literal" />
    </wsdl:input>
    <wsdl:output>
    <soap:body use="literal" />
    </wsdl:output>
    </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="DataExchanger">
    <wsdl:port name="DataExchangerSoap" binding="tns:DataExchangerSoap">
    <soap:address location="https://208.47.133.243/riverbedshipserver/exchangeData" />
    </wsdl:port>
    </wsdl:service>
    </wsdl:definitions>
    ====================================
    web-services.xml
    ====================================
    <web-services>
    <web-service
    name="riverbedshipserver"
    targetNamespace="https://partners.mcdata.com"
    uri="exchangeData"
    >
    <components>
    <java-class name="DataExchanger" class-name="com.mcdata.websvc.riverbed.server.DataExchangerImpl"/>
    </components>
    <operations xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <operation name="exchangeData" component="DataExchanger" method="exchangeData">
    <params>
    <param name="sender" style="in" type="xsd:string" location="header"/>
    <param name="password" style="in" type="xsd:string" location="header"/>
    <param name="transactionType" style="in" type="xsd:string" location="header"/>
    <param name="data" style="in" type="xsd:string" location="header"/>
    <return-param name="exchangeDataResult" type="xsd:string"/>
    </params>
    </operation>
    </operations>
    </web-service>
    </web-services>

    This is caused by the response xml parameter is greater than the response parameter you have specified in your wsdl. Try to use packet monitoring to monitor all the process, you will notice that problems.

  • Deserialization error: unexpected XML reader state. expected: END but foun

    Can anyone help why there is an ERROR when invoking web service (Using 1.4.2 and jwsdp 1.6 )
    The ERROR
    java.rmi.RemoteException: Runtime exception; nested exception is:
    deserialization error: unexpected XML reader state. expected: END but found: START: accoId
    at com.sun.xml.rpc.client.StreamingSender._handleRuntimeExceptionInSend(StreamingSender.java:331)
    at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:313)
    at webservices.dispatcherExim.DispatcherEximPort_Stub.getArrayVO(DispatcherEximPort_Stub.java:69)
    at client.StatsClient2.main(Unknown Source)
    Caused by: deserialization error: unexpected XML reader state. expected: END but found: START: accoId
    at com.sun.xml.rpc.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:233)
    at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerImpl.java:155)
    at webservices.dispatcherExim.DispatcherEximPort_getArrayVO_ResponseStruct_SOAPSerializer.doDeserialize(DispatcherExi
    mPort_getArrayVO_ResponseStruct_SOAPSerializer.java:43)
    at com.sun.xml.rpc.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:192)
    at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerImpl.java:155)
    at webservices.dispatcherExim.DispatcherEximPort_Stub._deserialize_getArrayVO(DispatcherEximPort_Stub.java:117)
    at webservices.dispatcherExim.DispatcherEximPort_Stub._readFirstBodyElement(DispatcherEximPort_Stub.java:104)
    at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:228)
    ... 2 more
    Command to create stubs
    wscompile.bat -verbose -gen:both -f:searchschema -f:rpcliteral -f:wsi -keep -s src -d build src/config.xml
    This is config.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <configuration
    xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
    <wsdl
    location="./src/DispatcherExim.wsdl"
    packageName="webservices.dispatcherExim" />
    </configuration>
    Calling
    java -Djava.endorsed.dirs=%JWSDP_HOME%jaxp\lib%JWSDP_HOME%jaxp\lib\endorsed -classpath .;%JWSDP_HOME%saaj\lib\saaj-api.jar;%JWSDP_HOME%saaj\lib\saaj-impl.jar;%JWSDP_HOME%jaxrpc\lib\jaxrpc-spi.jar;%JWSDP_HOME%jaxrpc\lib\jaxrpc-api.jar;%JWSDP_HOME%jaxrpc\lib\jaxrpc-impl.jar;%JWSDP_HOME%jwsdp-shared\lib\mail.jar;%JWSDP_HOME%jwsdp-shared\lib\activation.jar;C:\jpro\xml\jwsdl\dist\client.jar;C:\jpro\xml\jwsdl\dist\wsstub-xt.jar;C:\jwsdp1.5\jwsdp-shared\lib\commons-logging.jar client.StatsClient2
    This is a Response
    <?xml version="1.0" encoding="utf-8" standalone="yes"?>
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <env:Header/>
    <env:Body env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <m:getArrayVOResponse xmlns:m="http://www.eximb.com/nimius/Dispatch">
    <result xmlns:n1="java:com.eximb.nimius.base.common.data" xsi:type="n1:ArrayVO">
    <accoId xsi:type="xsd:decimal">1</accoId>
    <name xsi:type="xsd:string">TEST </name>
    <prodValueDate xsi:type="xsd:dateTime">2005-06-24T14:59:01.093+03:00</prodValueDate>
    </result>
    </m:getArrayVOResponse>
    </env:Body>
    </env:Envelope>
    Here is WSDL
    <?xml version="1.0" encoding="utf-8" ?>
    - <definitions xmlns:tns="http://www.eximb.com/nimius/Dispatch" xmlns:wsr="http://www.openuri.org/2002/10/soap/reliability/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap12enc="http://www.w3.org/2002/12/soap-encoding" xmlns:conv="http://www.openuri.org/2002/04/wsdl/conversation/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/wsdl/" targetNamespace="http://www.eximb.com/nimius/Dispatch">
    - <types xmlns:tns="http://www.eximb.com/nimius/Dispatch" xmlns:wsr="http://www.openuri.org/2002/10/soap/reliability/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:soap12enc="http://www.w3.org/2002/12/soap-encoding" xmlns:conv="http://www.openuri.org/2002/04/wsdl/conversation/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/wsdl/">
    - <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:stns="java:com.eximb.nimius.base.common.data" elementFormDefault="qualified" attributeFormDefault="qualified" targetNamespace="java:com.eximb.nimius.base.common.data">
    - <xsd:complexType name="ArrayVO">
    - <xsd:sequence>
    <xsd:element type="xsd:decimal" name="accoId" minOccurs="1" nillable="true" maxOccurs="1" />
    <xsd:element type="xsd:string" name="name" minOccurs="1" nillable="true" maxOccurs="1" />
    <xsd:element type="xsd:dateTime" name="prodValueDate" minOccurs="1" nillable="true" maxOccurs="1" />
    </xsd:sequence>
    </xsd:complexType>
    </xsd:schema>
    </types>
    <message name="getArrayVO" />
    - <message name="getArrayVOResponse">
    <part xmlns:partns="java:com.eximb.nimius.base.common.data" type="partns:ArrayVO" name="result" />
    </message>
    - <portType name="DispatcherEximPort">
    - <operation name="getArrayVO">
    <input message="tns:getArrayVO" />
    <output message="tns:getArrayVOResponse" />
    </operation>
    </portType>
    - <binding type="tns:DispatcherEximPort" name="DispatcherEximPort">
    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
    - <operation name="getArrayVO">
    <soap:operation style="rpc" soapAction="" />
    - <input>
    <soap:body namespace="http://www.eximb.com/nimius/Dispatch" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="encoded" />
    </input>
    - <output>
    <soap:body namespace="http://www.eximb.com/nimius/Dispatch" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" use="encoded" />
    </output>
    </operation>
    </binding>
    - <service name="DispatcherExim">
    - <port name="DispatcherEximPort" binding="tns:DispatcherEximPort">
    <soap:address location="http://localhost:7001//DispatcherExim" />
    </port>
    </service>
    </definitions>
    Thank you.

    I have had this problem and I found that I was sending elements in a different order than the order specified in the WSDL. The elements don't all have to be present, but any that are present need to be in the same sequence.

  • Unexpected XML reader state. expected: END_ELEMENT but found: CHARACTERS

    I'm try to developed a ws client. the server is in Microsoft-IIS/6.0.
    the method that i'm try to invoke return void, this is the interface
    * Sends a diagnostic request to a device
    * @param deviceId
    * @param url
    @WebMethod(operationName = "SendDiagnosticRequestToDevice", action = "http://client.org/SendDiagnosticRequestToDevice")
    @RequestWrapper(localName = "SendDiagnosticRequestToDevice", targetNamespace = "http://teste.org/", className = "client.SendDiagnosticRequestToDevice")
    @ResponseWrapper(localName = "SendDiagnosticRequestToDeviceResponse", targetNamespace = "http://teste.org/", className = "client.SendDiagnosticRequestToDeviceResponse")
    public void sendDiagnosticRequestToDevice(
    @WebParam(name = "deviceId", targetNamespace = "http://tempuri.org/")
    String deviceId,
    @WebParam(name = "url", targetNamespace = "http://teste.org/")
    String url);
    my client only have this code
    DiagnosticsNotificationsWS service = new DiagnosticsNotificationsWS()
    DiagnosticsNotificationsWSSoap port = service.getDiagnosticsNotificationsWSSoap();
    port.sendDiagnosticRequestToDevice("8670eaab", "http://10.112.80.12/teste?wsdl");
    but have follow error:
    Exception in thread "main" javax.xml.ws.WebServiceException: unexpected XML reader state. expected: END_ELEMENT but found: CHARACTERS
    at com.sun.xml.ws.encoding.soap.client.SOAPXMLDecoder.toInternalMessage(SOAPXMLDecoder.java:263)
    at com.sun.xml.ws.protocol.soap.client.SOAPMessageDispatcher.receive(SOAPMessageDispatcher.java:545)
    at com.sun.xml.ws.protocol.soap.client.SOAPMessageDispatcher.doSend(SOAPMessageDispatcher.java:288)
    at com.sun.xml.ws.protocol.soap.client.SOAPMessageDispatcher.send(SOAPMessageDispatcher.java:153)
    at com.sun.xml.ws.encoding.soap.internal.DelegateBase.send(DelegateBase.java:85)
    at com.sun.xml.ws.client.EndpointIFInvocationHandler.implementSEIMethod(EndpointIFInvocationHandler.java:176)
    at com.sun.xml.ws.client.EndpointIFInvocationHandler.invoke(EndpointIFInvocationHandler.java:105)
    at $Proxy24.sendDiagnosticRequestToDevice(Unknown Source)
    at Main.main(Main.java:45)
    Caused by: unexpected XML reader state. expected: END_ELEMENT but found: CHARACTERS
    at com.sun.xml.ws.streaming.XMLStreamReaderUtil.verifyReaderState(XMLStreamReaderUtil.java:193)
    at com.sun.xml.ws.encoding.soap.client.SOAPXMLDecoder.decodeFault(SOAPXMLDecoder.java:349)
    at com.sun.xml.ws.encoding.soap.SOAPDecoder.decodeBodyContent(SOAPDecoder.java:340)
    at com.sun.xml.ws.encoding.soap.SOAPDecoder.decodeBody(SOAPDecoder.java:325)
    at com.sun.xml.ws.encoding.soap.client.SOAPXMLDecoder.decodeBody(SOAPXMLDecoder.java:188)
    at com.sun.xml.ws.encoding.soap.client.SOAPXMLDecoder.decodeEnvelope(SOAPXMLDecoder.java:139)
    at com.sun.xml.ws.encoding.soap.client.SOAPXMLDecoder.toInternalMessage(SOAPXMLDecoder.java:256)
    ... 8 more

    may be bug of IIS. You received at the end of content "HTTP 100 Continue"
    see MSDN
    Edited by: Nesterko on Jun 17, 2010 11:38 AM

  • Unexpected XML reader state. expected: END but found: START:

    Hi,
    I am wrote a web client using JWSDP-2.0 and JWSDP-1.4.
    When I run my client I get following error.
    java.rmi.RemoteException: Runtime exception; nested exception is:
    deserialization error: unexpected XML reader state. expected: END but found: START: m_dValue; nested e
    xception is:
    java.rmi.RemoteException: Runtime exception; nested exception is:
    deserialization error: unexpected XML reader state. expected: END but found: START: m_dValue
    at com.engagenet.protoObj.wizcon.TagServiceSoap_Stub.readTagValues(TagServiceSoap_Stub.java:92)
    at com.engagenet.protoObj.wizcon.TagService_Impl.main(TagService_Impl.java:78)
    Caused by: java.rmi.RemoteException: Runtime exception; nested exception is:
    deserialization error: unexpected XML reader state. expected: END but found: START: m_dValue
    at com.sun.xml.rpc.client.StreamingSender._handleRuntimeExceptionInSend(StreamingSender.java:331)
    at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:313)
    at com.engagenet.protoObj.wizcon.TagServiceSoap_Stub.readTagValues(TagServiceSoap_Stub.java:70)
    ... 1 more
    Caused by: deserialization error: unexpected XML reader state. expected: END but found: START: m_dValue
    at com.sun.xml.rpc.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:233)
    at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerImpl.java:1
    55)
    at com.sun.xml.rpc.encoding.ObjectArraySerializer.deserializeArrayInstance(ObjectArraySerializer.java:
    207)
    at com.sun.xml.rpc.encoding.ArraySerializerBase.deserialize(ArraySerializerBase.java:260)
    at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerImpl.java:1
    55)
    at com.engagenet.protoObj.wizcon.TagServiceSoap_ReadTagValues_ResponseStruct_SOAPSerializer.doDeserial
    ize(TagServiceSoap_ReadTagValues_ResponseStruct_SOAPSerializer.java:43)
    at com.sun.xml.rpc.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:192)
    at com.sun.xml.rpc.encoding.ReferenceableSerializerImpl.deserialize(ReferenceableSerializerImpl.java:1
    55)
    at com.engagenet.protoObj.wizcon.TagServiceSoap_Stub._deserialize_ReadTagValues(TagServiceSoap_Stub.ja
    va:336)
    at com.engagenet.protoObj.wizcon.TagServiceSoap_Stub._readFirstBodyElement(TagServiceSoap_Stub.java:31
    1)
    at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:228)
    ... 2 more
    Here is my wsdl file
    <?xml version="1.0" encoding="utf-8"?>
    <wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="urn:WizWebService" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="urn:WizWebService" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
    <wsdl:types>
    <s:schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="urn:WizWebService">
    <s:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
    <s:complexType name="ReadTagValues_return_Array">
    <s:complexContent mixed="false">
    <s:restriction base="soapenc:Array">
    <s:attribute wsdl:arrayType="tns:TagValue[]" ref="soapenc:arrayType" />
    </s:restriction>
    </s:complexContent>
    </s:complexType>
    <s:complexType name="ReadTagValues_tagNames_Array">
    <s:complexContent mixed="false">
    <s:restriction base="soapenc:Array">
    <s:attribute wsdl:arrayType="s:string[]" ref="soapenc:arrayType" />
    </s:restriction>
    </s:complexContent>
    </s:complexType>
    <s:complexType name="ReadTagStringValues_return_Array">
    <s:complexContent mixed="false">
    <s:restriction base="soapenc:Array">
    <s:attribute wsdl:arrayType="tns:TagStringValue[]" ref="soapenc:arrayType" />
    </s:restriction>
    </s:complexContent>
    </s:complexType>
    <s:complexType name="ReadTagStringValues_tagNames_Array">
    <s:complexContent mixed="false">
    <s:restriction base="soapenc:Array">
    <s:attribute wsdl:arrayType="s:string[]" ref="soapenc:arrayType" />
    </s:restriction>
    </s:complexContent>
    </s:complexType>
    <s:complexType name="WriteTagValues_return_Array">
    <s:complexContent mixed="false">
    <s:restriction base="soapenc:Array">
    <s:attribute wsdl:arrayType="tns:QUALITY[]" ref="soapenc:arrayType" />
    </s:restriction>
    </s:complexContent>
    </s:complexType>
    <s:complexType name="WriteTagValues_tagNames_Array">
    <s:complexContent mixed="false">
    <s:restriction base="soapenc:Array">
    <s:attribute wsdl:arrayType="s:string[]" ref="soapenc:arrayType" />
    </s:restriction>
    </s:complexContent>
    </s:complexType>
    <s:complexType name="WriteTagValues_tagValues_Array">
    <s:complexContent mixed="false">
    <s:restriction base="soapenc:Array">
    <s:attribute wsdl:arrayType="s:double[]" ref="soapenc:arrayType" />
    </s:restriction>
    </s:complexContent>
    </s:complexType>
    <s:complexType name="WriteTagStringValues_return_Array">
    <s:complexContent mixed="false">
    <s:restriction base="soapenc:Array">
    <s:attribute wsdl:arrayType="tns:QUALITY[]" ref="soapenc:arrayType" />
    </s:restriction>
    </s:complexContent>
    </s:complexType>
    <s:complexType name="WriteTagStringValues_tagNames_Array">
    <s:complexContent mixed="false">
    <s:restriction base="soapenc:Array">
    <s:attribute wsdl:arrayType="s:string[]" ref="soapenc:arrayType" />
    </s:restriction>
    </s:complexContent>
    </s:complexType>
    <s:complexType name="WriteTagStringValues_tagValues_Array">
    <s:complexContent mixed="false">
    <s:restriction base="soapenc:Array">
    <s:attribute wsdl:arrayType="s:string[]" ref="soapenc:arrayType" />
    </s:restriction>
    </s:complexContent>
    </s:complexType>
    <s:complexType name="GetTagNames_return_Array">
    <s:complexContent mixed="false">
    <s:restriction base="soapenc:Array">
    <s:attribute wsdl:arrayType="tns:TagName[]" ref="soapenc:arrayType" />
    </s:restriction>
    </s:complexContent>
    </s:complexType>
    <s:simpleType name="TAG_FORMAT">
    <s:restriction base="s:string">
    <s:enumeration value="F_STRING" />
    <s:enumeration value="F_NUMERIC" />
    </s:restriction>
    </s:simpleType>
    <s:simpleType name="QUALITY">
    <s:restriction base="s:string">
    <s:enumeration value="Q_ERR" />
    <s:enumeration value="Q_OK" />
    </s:restriction>
    </s:simpleType>
    <s:complexType name="TagStringValue">
    <s:sequence>
    <s:element name="m_bstrValue" type="s:string" />
    <s:element name="m_Quality" type="tns:QUALITY" />
    </s:sequence>
    </s:complexType>
    <s:complexType name="TagName">
    <s:sequence>
    <s:element name="m_bstrName" type="s:string" />
    <s:element name="m_Format" type="tns:TAG_FORMAT" />
    </s:sequence>
    </s:complexType>
    <s:complexType name="TagValue">
    <s:sequence>
    <s:element name="m_dValue" type="s:double" />
    <s:element name="m_Quality" type="tns:QUALITY" />
    </s:sequence>
    </s:complexType>
    </s:schema>
    </wsdl:types>
    <wsdl:message name="ReadTagValuesIn">
    <wsdl:part name="tagNames" type="tns:ReadTagValues_tagNames_Array" />
    </wsdl:message>
    <wsdl:message name="ReadTagValuesOut">
    <wsdl:part name="return" type="tns:ReadTagValues_return_Array" />
    </wsdl:message>
    <wsdl:message name="ReadTagStringValuesIn">
    <wsdl:part name="tagNames" type="tns:ReadTagStringValues_tagNames_Array" />
    </wsdl:message>
    <wsdl:message name="ReadTagStringValuesOut">
    <wsdl:part name="return" type="tns:ReadTagStringValues_return_Array" />
    </wsdl:message>
    <wsdl:message name="WriteTagValuesIn">
    <wsdl:part name="tagNames" type="tns:WriteTagValues_tagNames_Array" />
    <wsdl:part name="tagValues" type="tns:WriteTagValues_tagValues_Array" />
    </wsdl:message>
    <wsdl:message name="WriteTagValuesOut">
    <wsdl:part name="return" type="tns:WriteTagValues_return_Array" />
    </wsdl:message>
    <wsdl:message name="WriteTagStringValuesIn">
    <wsdl:part name="tagNames" type="tns:WriteTagStringValues_tagNames_Array" />
    <wsdl:part name="tagValues" type="tns:WriteTagStringValues_tagValues_Array" />
    </wsdl:message>
    <wsdl:message name="WriteTagStringValuesOut">
    <wsdl:part name="return" type="tns:WriteTagStringValues_return_Array" />
    </wsdl:message>
    <wsdl:message name="GetTagNamesIn">
    <wsdl:part name="bstrStnName" type="s:string" />
    </wsdl:message>
    <wsdl:message name="GetTagNamesOut">
    <wsdl:part name="return" type="tns:GetTagNames_return_Array" />
    </wsdl:message>
    <wsdl:portType name="TagServiceSoap">
    <wsdl:operation name="ReadTagValues">
    <wsdl:input message="tns:ReadTagValuesIn" />
    <wsdl:output message="tns:ReadTagValuesOut" />
    </wsdl:operation>
    <wsdl:operation name="ReadTagStringValues">
    <wsdl:input message="tns:ReadTagStringValuesIn" />
    <wsdl:output message="tns:ReadTagStringValuesOut" />
    </wsdl:operation>
    <wsdl:operation name="WriteTagValues">
    <wsdl:input message="tns:WriteTagValuesIn" />
    <wsdl:output message="tns:WriteTagValuesOut" />
    </wsdl:operation>
    <wsdl:operation name="WriteTagStringValues">
    <wsdl:input message="tns:WriteTagStringValuesIn" />
    <wsdl:output message="tns:WriteTagStringValuesOut" />
    </wsdl:operation>
    <wsdl:operation name="GetTagNames">
    <wsdl:input message="tns:GetTagNamesIn" />
    <wsdl:output message="tns:GetTagNamesOut" />
    </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="TagServiceSoap" type="tns:TagServiceSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc" />
    <wsdl:operation name="ReadTagValues">
    <soap:operation soapAction="#ReadTagValues" style="rpc" />
    <wsdl:input>
    <soap:body use="encoded" namespace="urn:WizWebService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:input>
    <wsdl:output>
    <soap:body use="encoded" namespace="urn:WizWebService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ReadTagStringValues">
    <soap:operation soapAction="#ReadTagStringValues" style="rpc" />
    <wsdl:input>
    <soap:body use="encoded" namespace="urn:WizWebService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:input>
    <wsdl:output>
    <soap:body use="encoded" namespace="urn:WizWebService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="WriteTagValues">
    <soap:operation soapAction="#WriteTagValues" style="rpc" />
    <wsdl:input>
    <soap:body use="encoded" namespace="urn:WizWebService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:input>
    <wsdl:output>
    <soap:body use="encoded" namespace="urn:WizWebService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="WriteTagStringValues">
    <soap:operation soapAction="#WriteTagStringValues" style="rpc" />
    <wsdl:input>
    <soap:body use="encoded" namespace="urn:WizWebService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:input>
    <wsdl:output>
    <soap:body use="encoded" namespace="urn:WizWebService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetTagNames">
    <soap:operation soapAction="#GetTagNames" style="rpc" />
    <wsdl:input>
    <soap:body use="encoded" namespace="urn:WizWebService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:input>
    <wsdl:output>
    <soap:body use="encoded" namespace="urn:WizWebService" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:output>
    </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="TagService">
    <wsdl:port name="TagServiceSoap" binding="tns:TagServiceSoap">
    <soap:address location="http://212.157.43.123:80/wiz_ws/wizws.dll?Handler=TagService" />
    </wsdl:port>
    </wsdl:service>
    </wsdl:definitions>
    Here is my web client
    // This class was generated by the JAXRPC SI, do not edit.
    // Contents subject to change without notice.
    // JAX-RPC Standard Implementation (1.1.3, build R1)
    // Generated source version: 1.1.3
    package com.engagenet.protoObj.wizcon;
    import com.sun.xml.rpc.encoding.*;
    import com.sun.xml.rpc.client.ServiceExceptionImpl;
    import com.sun.xml.rpc.util.exception.*;
    import com.sun.xml.rpc.soap.SOAPVersion;
    import com.sun.xml.rpc.client.HandlerChainImpl;
    import javax.xml.rpc.*;
    import javax.xml.rpc.encoding.*;
    import javax.xml.rpc.handler.HandlerChain;
    import javax.xml.rpc.handler.HandlerInfo;
    import javax.xml.namespace.QName;
    public class TagService_Impl extends com.sun.xml.rpc.client.BasicService implements TagService {
    private static final QName serviceName = new QName("urn:WizWebService", "TagService");
    private static final QName ns1_TagServiceSoap_QNAME = new QName("urn:WizWebService", "TagServiceSoap");
    private static final Class tagServiceSoap_PortClass = com.engagenet.protoObj.wizcon.TagServiceSoap.class;
    public TagService_Impl() {
    super(serviceName, new QName[] {
    ns1_TagServiceSoap_QNAME
    new com.engagenet.protoObj.wizcon.TagService_SerializerRegistry().getRegistry());
    public java.rmi.Remote getPort(javax.xml.namespace.QName portName, java.lang.Class serviceDefInterface) throws javax.xml.rpc.ServiceException {
    try {
    if (portName.equals(ns1_TagServiceSoap_QNAME) &&
    serviceDefInterface.equals(tagServiceSoap_PortClass)) {
    return getTagServiceSoap();
    } catch (Exception e) {
    throw new ServiceExceptionImpl(new LocalizableExceptionAdapter(e));
    return super.getPort(portName, serviceDefInterface);
    public java.rmi.Remote getPort(java.lang.Class serviceDefInterface) throws javax.xml.rpc.ServiceException {
    try {
    if (serviceDefInterface.equals(tagServiceSoap_PortClass)) {
    return getTagServiceSoap();
    } catch (Exception e) {
    throw new ServiceExceptionImpl(new LocalizableExceptionAdapter(e));
    return super.getPort(serviceDefInterface);
    public com.engagenet.protoObj.wizcon.TagServiceSoap getTagServiceSoap() {
    java.lang.String[] roles = new java.lang.String[] {};
    HandlerChainImpl handlerChain = new HandlerChainImpl(getHandlerRegistry().getHandlerChain(ns1_TagServiceSoap_QNAME));
    handlerChain.setRoles(roles);
    com.engagenet.protoObj.wizcon.TagServiceSoap_Stub stub = new com.engagenet.protoObj.wizcon.TagServiceSoap_Stub(handlerChain);
    try {
    stub._initialize(super.internalTypeRegistry);
    } catch (JAXRPCException e) {
    throw e;
    } catch (Exception e) {
    throw new JAXRPCException(e.getMessage(), e);
    return stub;
         public static void main(String []args)
    try
    TagService_Impl proto = new TagService_Impl();
    TagServiceSoap tSoap = proto.getTagServiceSoap();
    QUALITY Q_ERR = QUALITY.fromString("Q_ERR");
    String tagName[] = {"aem_opc", "aem_ws_test", "wizsys_minute"};
    TagValue[] tValue = tSoap.readTagValues(tagName);
    for(int i = 0; i < 3; ++i)
    if(tValue.getM_Quality().equals(Q_ERR))
    System.out.println("" + tagName[i] + " read failed " + tValue[i].getM_Quality());
    else
    System.out.println("" + tagName[i] + " read failed " + tValue[i].getM_dValue());
    catch(Exception e)
    e.printStackTrace();
    Am I doing any thing wrong. All java files I am using is generated as a result of this command.
    wscompile.bat -verbose -gen -d classes -s src -keep etc/config.xml
    I only add main method in TagService_Impl.java class which I highlighted above.
    Any help is apprecited.
    Thanks
    Shreey

    I stumbled upon this exception when I tried to send a complex type as a return parameter. The sequence in which the server sent the components of the complex type was different from the one the client artifacts expected. And because the deserializer generated by xrpcc can't survive this, it throws the exception that's bothering you.
    It may or may not be the same case with you, this is merely what I had to find out.

  • "deserialization error: unexpected XML reader state."

    I am able to consume a web service that was converted from an EJB under Weblogic 7.0 using multiple .NET clients. However, after downloading the JWSDP from Sun, I am unable to consume this same service using a standalone Java client built using classes generated by the wscompile tool. Some newsgroup messages say it is an element order issue. Others say I must deserialize objects. Others still say I need to use a static client. Which is the reliable flexible, non-workaround way to consume a web service hosted on WL7 by non-WL Java based clients? p.s. I can consume other web services (including those hosted on .NET servers) using the JWSDP, but none of them contain complex types/arrays.

    Hello,
    Could you rephrase and clarify your question? Interop issues are
    multi-faceted, so a suggested route would be look at the various results
    from SOAPBuilders, for example:
    http://www.whitemesa.com/r3/interop3.html and see the types of scenarios
    that fit your data model.
    It sounds like you are OK with WLS to .Net, but are having trouble with
    WLS to SUN? Is your service on WLS rpc/enc or doc/lit? Does the WLS
    generated client work correctly?
    Thanks,
    Bruce
    Rhoden, Aaron wrote:
    >
    I am able to consume a web service that was converted from an EJB under Weblogic 7.0 using multiple .NET clients. However, after downloading the JWSDP from Sun, I am unable to consume this same service using a standalone Java client built using classes generated by the wscompile tool. Some newsgroup messages say it is an element order issue. Others say I must deserialize objects. Others still say I need to use a static client. Which is the reliable flexible, non-workaround way to consume a web service hosted on WL7 by non-WL Java based clients? p.s. I can consume other web services (including those hosted on .NET servers) using the JWSDP, but none of them contain complex types/arrays.

  • Deserialization error: XML reader error: unexpected character content:

    Hi,
    I'm just learning to write web services. I pasted the service and it seems to work.
    It's code is :
    package server;
    import javax.jws.WebService;
    public class HelloImpl {
       * @param name
       * @return Say hello to the person.
       public String sayHello(String name) {
         return "Hello, " + name + "!";
    }I wired the service using spring, following the tutorial :
    public class HellowsImpl {
        String name;
        public HellowsImpl() {
        private Hellows service;
        public void setService(Hellows service) {
            this.service = service;
        public void sayHi() {
            try {
                service.sayHello(name);
            } catch (RemoteException e) {
                // TODO
        public Hellows getService() {
            return service;
        public void setName(String name) {
            this.name = name;
    }But when I try this :     HellowsImpl service ;
        service=(HellowsImpl)ac.getBean("hellowsclient");
    service.sayHi();I get the exception : Caught exception while handling request: deserialization error: XML reader error: unexpected character content: "fd"
    Where might be the problem?

    Hi, I am also facing this error while trying to create "Dynamic Proxy Client"
    I am accessing the WS method like this
    String UrlString = "http://localhost:1559/DynamicProxy/DProxy?WSDL";
    String nameSpace = "urn:DProxy/wsdl";
    String serviceName = "DProxy";
    String port = "DProxySEIPort";
    URL serviceUrl = new URL(UrlString);
    ServiceFactory serviceFactory = ServiceFactory.newInstance();
    Service service = serviceFactory.createService(serviceUrl,new QName(nameSpace,serviceName));
    dproxy.DProxySEI myProxy = (dproxy.DProxySEI)service.getPort(new QName(nameSpace,port),dproxy.DProxySEI.class);
    String message = myProxy.sayHello("rajeev");
    WSDL File content :
    <?xml version="1.0" encoding="UTF-8"?><definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="urn:DProxy/wsdl" xmlns:ns2="urn:DProxy/types" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" name="DProxy" targetNamespace="urn:DProxy/wsdl">
    <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tns="urn:DProxy/types" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" targetNamespace="urn:DProxy/types">
    <complexType name="sayHello">
    <sequence>
    <element name="String_1" type="string" nillable="true"/></sequence></complexType>
    <complexType name="sayHelloResponse">
    <sequence>
    <element name="result" type="string" nillable="true"/></sequence></complexType>
    <element name="sayHello" type="tns:sayHello"/>
    <element name="sayHelloResponse" type="tns:sayHelloResponse"/></schema></types>
    <message name="DProxySEI_sayHello">
    <part name="parameters" element="ns2:sayHello"/></message>
    <message name="DProxySEI_sayHelloResponse">
    <part name="result" element="ns2:sayHelloResponse"/></message>
    <portType name="DProxySEI">
    <operation name="sayHello">
    <input message="tns:DProxySEI_sayHello"/>
    <output message="tns:DProxySEI_sayHelloResponse"/></operation></portType>
    <binding name="DProxySEIBinding" type="tns:DProxySEI">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
    <operation name="sayHello">
    <soap:operation soapAction=""/>
    <input>
    <soap:body use="literal"/></input>
    <output>
    <soap:body use="literal"/></output></operation></binding>
    <service name="DProxy">
    <port name="DProxySEIPort" binding="tns:DProxySEIBinding">
    <soap:address location="http://localhost:1559/DynamicProxy/DProxy" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"/></port></service></definitions>
    and Here is my SEI Implementation class
    public java.lang.String sayHello(String name) throws java.rmi.RemoteException {
    String message = "hi.."+name+"..How r u";
    return message;
    Can any one help me plz...
    Thanks in advance..

  • Unable to read field value from main table - unexpected socket read error

    Hi Friends,
    While executing the below code, I am able to get the value of the field 'id' but i am unable to get the value for the 'materialnumber' field. i am getting the below exception
    +com.sap.mdm.commands.CommandException: com.sap.mdm.internal.protocol.manual.ProtocolException: java.io.IOException: Unexpected socket read.  Result is -1.
         at com.sap.mdm.data.commands.AbstractRetrieveLimitedRecordsCommand.execute(AbstractRetrieveLimitedRecordsCommand.java:158)
         at com.sap.mdm.data.commands.RetrieveLimitedRecordsCommand.execute(RetrieveLimitedRecordsCommand.java:157)
         at updaterecords.main(updaterecords.java:126)
    Caused by: com.sap.mdm.internal.protocol.manual.ProtocolException: java.io.IOException: Unexpected socket read.  Result is -1.
         at com.sap.mdm.internal.protocol.manual.AbstractProtocolCommand.execute(AbstractProtocolCommand.java:100)
         at com.sap.mdm.data.commands.AbstractRetrieveLimitedRecordsCommand.execute(AbstractRetrieveLimitedRecordsCommand.java:146)
         ... 2 more
    Caused by: java.io.IOException: Unexpected socket read.  Result is -1.
         at com.sap.mdm.internal.net.DataSocket.receiveData(DataSocket.java:59)
         at com.sap.mdm.internal.net.ConnectionImpl.readInt(ConnectionImpl.java:417)
         at com.sap.mdm.internal.net.ConnectionImpl.nextMessage(ConnectionImpl.java:501)
         at com.sap.mdm.internal.net.ConnectionImpl.receiveMessage(ConnectionImpl.java:472)
         at com.sap.mdm.internal.net.ConnectionImpl.send(ConnectionImpl.java:209)
         at com.sap.mdm.internal.net.ReservedConnection.send(ReservedConnection.java:105)
         at com.sap.mdm.internal.protocol.manual.AbstractProtocolCommand.execute(AbstractProtocolCommand.java:97)
         ... 3 more+
    import com.sap.mdm.commands.AuthenticateUserSessionCommand;
    import com.sap.mdm.commands.CommandException;
    import com.sap.mdm.commands.CreateUserSessionCommand;
    import com.sap.mdm.commands.DestroySessionCommand;
    import com.sap.mdm.commands.GetRepositoryRegionListCommand;
    import com.sap.mdm.data.Record;
    import com.sap.mdm.data.RegionProperties;
    import com.sap.mdm.data.ResultDefinition;
    import com.sap.mdm.data.commands.RetrieveLimitedRecordsCommand;
    import com.sap.mdm.ids.TableId;
    import com.sap.mdm.net.ConnectionException;
    import com.sap.mdm.net.ConnectionPool;
    import com.sap.mdm.net.ConnectionPoolFactory;
    import com.sap.mdm.schema.FieldProperties;
    import com.sap.mdm.schema.RepositorySchema;
    import com.sap.mdm.schema.commands.GetFieldListCommand;
    import com.sap.mdm.schema.commands.GetRepositorySchemaCommand;
    import com.sap.mdm.search.Search;
    import com.sap.mdm.server.DBMSType;
    import com.sap.mdm.server.RepositoryIdentifier;
    public class updaterecords {
         public static void main(String[] args) {
              try {               
                    String serverName = "159.112.6.26";
                    ConnectionPool connections = null;
                    try {
                         connections = ConnectionPoolFactory.getInstance(serverName);
                    } catch (ConnectionException e) {
                         e.printStackTrace();
                         return;
                   // specify the repository to use
                   // alternatively, a repository identifier can be obtain from the GetMountedRepositoryListCommand
                   String repositoryName = "DEMO";
                   String dbmsName = "MDMD";
                   RepositoryIdentifier reposId = new RepositoryIdentifier(repositoryName, dbmsName, DBMSType.ORACLE);
                   // get list of available regions for the repository
                   GetRepositoryRegionListCommand regionListCommand = new GetRepositoryRegionListCommand(connections);
                   regionListCommand.setRepositoryIdentifier(reposId);
                   try {
                        regionListCommand.execute();
                   } catch (CommandException e) {
                        e.printStackTrace();
                        return;
                   RegionProperties[] regions = regionListCommand.getRegions();
                   // create a user session
                   CreateUserSessionCommand sessionCommand = new CreateUserSessionCommand(connections);
                   sessionCommand.setRepositoryIdentifier(reposId);
                   sessionCommand.setDataRegion(regions[0]); // use the first region
                   try {
                        sessionCommand.execute();
                   } catch (CommandException e) {
                        e.printStackTrace();
                        return;
                   String sessionId = sessionCommand.getUserSession();
                   // authenticate the user session
                   String userName = "meter1";
                   String userPassword = "meter1";
                   AuthenticateUserSessionCommand authCommand = new AuthenticateUserSessionCommand(connections);
                   authCommand.setSession(sessionId);
                   authCommand.setUserName(userName);
                   authCommand.setUserPassword(userPassword);
                   try {
                        authCommand.execute();
                   } catch (CommandException e) {
                        e.printStackTrace();
                        return;
                   GetRepositorySchemaCommand cmd=new GetRepositorySchemaCommand(connections);
                   cmd.setSession(sessionId);
                   try{
                        cmd.execute();               
                   }catch(CommandException e){
                        System.out.println(e.getLocalizedMessage());
                   RepositorySchema repsch=cmd.getRepositorySchema();
                   // the main table, hard-coded
                   TableId mainTableId = new TableId(1);     
                   // specify the result definition (what to retrieve); in this example, nothing
                   ResultDefinition rd = new ResultDefinition(mainTableId);
                   // select all records
                   Search search = new com.sap.mdm.search.Search(mainTableId);
                   //get fields
                   GetFieldListCommand getFieldListCommand = new GetFieldListCommand(connections);
                   getFieldListCommand.setSession(sessionCommand.getUserSession());
                   getFieldListCommand.setTableId(mainTableId);
                   try {
                        getFieldListCommand.execute();
                   } catch (CommandException e) {
                        System.out.println(e);
                   FieldProperties[] lookupFields = getFieldListCommand.getFields();
                   // add fields to records to retrieve
                   rd.addSelectField(repsch.getFieldId("Products","Id"));
                   rd.addSelectField(repsch.getFieldId("Products","MaterialNumber"));                              
                   // retrieve the records
                   RetrieveLimitedRecordsCommand limitingCommand = new RetrieveLimitedRecordsCommand(connections);
                   limitingCommand.setSession(sessionId);
                   limitingCommand.setResultDefinition(rd);
                   limitingCommand.setSearch(search);
                   //limitingCommand.setPageSize(2000);
                   try {
                        limitingCommand.execute();
                   } catch (CommandException e) {
                        e.printStackTrace();
                        return;
                   System.out.println("Record count is " + limitingCommand.getRecords().getCount()+"\n");
                   Record[] records=limitingCommand.getRecords().getRecords();
    System.out.println(records[0].getFieldValue(repsch.getFieldId("Products","Id"))+ " \n");
    System.out.println(records[0].getFieldValue(repsch.getFieldId("Products","MaterialNumber"))+ " \n");
                   // finally destroy the session
                   DestroySessionCommand destroySessionCommand = new DestroySessionCommand(connections);
                   destroySessionCommand.setSession(sessionId);
                   try {
                        destroySessionCommand.execute();
                   } catch (CommandException e) {
                        e.printStackTrace();
                        return;
              } catch (Exception e) {
                   System.out.println(e.getLocalizedMessage());
                   e.printStackTrace();
    Kindly let me know where i am going wrong. MaterialNumber field is a TEXT not a lookup table field.  Above fields are from the main table.
    Thanks,
    Raags

    Hi Friends,
    I got the solution. It was the error because of not having a the below statement.
    limitingCommand.setPageSize(1);
    As i havent used that statement, it was trying to get 1000 records, and i dont know exactly what makes this to get that error. Anyhow., As i want to use for updation, i cn live with one record.
    Thanks,
    Raags

  • Converting File Content.Unexpected XML format

    Hello,
    I need to convert file content in File Receiver Adapter.
    In my opinion, i have unexpected XML format of a payload message. (At least, the format does not contain a structure element):
    That is,
    I have the XML message:
    <?xml version="1.0" encoding="UTF-8"?>
    <ns0:MT_BW ID="123" BirthDay="20/03/1969" Title="consultant" Name="John" LastName="Smith" xmlns:ns0="http://sap.com/xi/BASIS"/>
    I need to convert it into plane text format with fieldseparator.
    How to convert this xml message into plane text format if it does not contain any structure elements  (that is, <struc1>  <field1>value</field1>  </struc1>) according to help guide?
    How should i configure RecordSet in File Adapter?
    I am confused.
    Thank you

    Igor,
    Are u getting the format from the source?
    <ns0:MT_BW ID="123" BirthDay="20/03/1969" Title="consultant" Name="John" LastName="Smith" xmlns:ns0="http://sap.com/xi/BASIS"/>
    If yes, then create one more data type with structure
    <Record>
    <ID/>
    <BirthDay/>
    <Title/>
    <Name/>
    <LastName/>
    </Record>
    And do direct mapping. So now you can easily configure the content conversion for the target format isn't it?
    Its my thought, I don't know whether its feasible for you or not..
    raj.

  • Problem accessing web service: unexpected XML tag

    Hi,
    I access a web service with SOAP 1.2 via HTTP 1.1. I used wsimport on the WSDL to generate the stubs (I only use Java 6).
    The web service is a php-Script running on a web server (maybe delegates this in the background, I have no access nor intimate knowledge of the server). This script provides both the WSDL (via GET) and the service (via POST). When I use my generated client I always end up with the same exception:
    Exception in thread "main" com.sun.xml.ws.streaming.XMLStreamReaderException: unexpected XML tag. expected: {http://www.w3.org/2003/05/soap-envelope}Envelope but found: {http://schemas.xmlsoap.org/wsdl/}definitions
         at com.sun.xml.ws.streaming.XMLStreamReaderUtil.verifyTag(XMLStreamReaderUtil.java:203)
         at com.sun.xml.ws.encoding.StreamSOAPCodec.decode(StreamSOAPCodec.java:186)
         at com.sun.xml.ws.encoding.StreamSOAPCodec.decode(StreamSOAPCodec.java:163)
         at com.sun.xml.ws.encoding.StreamSOAPCodec.decode(StreamSOAPCodec.java:135)
         at com.sun.xml.ws.encoding.SOAPBindingCodec.decode(SOAPBindingCodec.java:294)
         at com.sun.xml.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:173)
         at com.sun.xml.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:88)
         at com.sun.xml.ws.api.pipe.Fiber.__doRun(Fiber.java:595)
         at com.sun.xml.ws.api.pipe.Fiber._doRun(Fiber.java:554)
         at com.sun.xml.ws.api.pipe.Fiber.doRun(Fiber.java:539)
         at com.sun.xml.ws.api.pipe.Fiber.runSync(Fiber.java:436)
         at com.sun.xml.ws.client.Stub.process(Stub.java:248)
         at com.sun.xml.ws.client.sei.SEIStub.doProcess(SEIStub.java:134)
         at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:244)
         at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:224)
         at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:117)
         at $Proxy45.hello(Unknown Source)
         at client.Client.main(Client.java:37)The exception occurs in the line with the first use of a service method. Somehow the service seems to issue a GET rather than a POST and ends up requesting the WSDL file which generates parsing errors.
    So the code looks something like this:
    Service service = new Service();
    ServicePort port = service.getServicePort();
    port.soSomething(); // <- exceptionThe conversation is SSL encrypted so I can't look at the conversation in Wireshark or similar tools. Maybe there is a problem because the same URL is used for both WSDL and SOAP?

    My apologies. It was a server problem.

  • XML read errors--failure to open dtd (DITA)

    Hi all,
    I've run out of ideas and places to look on this one, I hope someone can help.
    The specs: WinXP Pro, Frame 8.0p277. Built-in DITA. Not using DITA Open Toolkit. No major issues except for previously discussed conref problems which, many thanks to Scott, seem to be under control.
    The context: I'm a freelancer, on contract to a financial institution. I work part-time in my own office (up-to-date, preferred set-up) and part-time onsite. I can't go into detail, but the set-up is less than ideal. I have to do much back-and-forth portaging of project and template files, and they are often corrupted when I reopen them.
    Specs onsite I'm not sure about, but it's definitely Frame 8 with the first patch. I'm pretty sure they haven't installed any others, so the 8.03 patch shouldn't be an issue. (I'll check and report back, if that info is needed.)
    The error: Came out of the blue last week, my first day back in my office after three days onsite. Now, every time I open or create any xml file, using any template, I get an XML Read Report Log error that reports a failure to open the DTD, and a parse error in the document prolog. I don't know where it's coming from, and I don't know why it started happening. I modified structapps once, many months ago, but hadn't touched it since, and I've never touched the r/w rules files in either location.
    (I realize I should test this scenario onsite, but I daren't risk importing trouble, if it started here.)
    Specifically, the error reads: Could not open DTD file: C:\Documents and Settings\path-to-project-files-folder\ditabase.dtd Parse error at line 9, char 1: Error procssing external entity reference.
    I don't understand why it's looking for the dtd file in the same folder as the project files when I've never stored it there, and I have the following in the structapps, and r/w rules files.
    DTD: $STRUCTDIR\xml\dita\default-app\dtd\ditabase.dtd
    Read/write rules: $STRUCTDIR\xml\dita\default-app\DITA-Topic-FM\topic.rules.txt
    The R/W Rules statement reads: writer external dtd is public "-//OASIS//DTD DITA Composite//EN" "ditabase.dtd";
    I can go completely cross-eyed after a few hours trying to parse these docs myself. The answer may well be right in front of me, but for the life of me I can't see it. I hope someone else can.
    Karen

    Hello Karen,
    Have you been able to resolve this issue? I'm encountering a similar issue while going through the FrameMaker 8 Help topics: Processing XML > Migration from Unstructured FrameMaker to XML > Getting started with structure.
    I have followed along with all the examples all the way down to the "Testing XML round-tripping" topic. When I go to the step: Export the FrameMaker file to XML, and select my XML application, I get a parsing error similar to what you had mentioned above.
    The Help topics have you first build an EDD for a simple document (proposal) - successful.
    They then have you open a new document and import the EDD - successful.
    They then have you add formatting to the EDD and then reimport into your document to test it. - successful
    They then have you build the structured app by saving the EDD to DTD. You are then supposed to create a template by removing all the content from your original file that they had you open and save it as a template. Then you are supposed to edit the application definition file. Finally you copy the template and the DTD to the Adobe FrameMaker 8 folder. - successful
    I've done this process twice and each time I get the same Save to XML Log error message when trying to export my document to XML.
    The first things that are displayed are the path the source and destination folders.
    Next is the XML parser error messages (Document Prolog).
    There are basically 2 parsing errors, line 3 and 9.
    line 3, "Could not open DTD file" C:\DOCUME~1\MICHAE~1\LOCALS~1\Temp\$STRUCTDIR\XML\Preface\Preface.dtd
    Error in processing external entity reference"
    line 9, "Could not open DTD file" C:/Documents%20and%20Settings/michael_randall/My%20Documents/FrameEDDTemplatePractice/$ST RUCTDIR/XML/Preface/Preface.dtd
    Error in processing external entity reference"
    Please let me know if have any new information.
    Thanks,
    Michael Randall

  • SAFT-PT: Unexpected XML declaration

    Hello,
    I'm implementing the SAFT-PT in release DART 2.5 and in Enterprise 500.
    When i execute the DGCI apllication to validate the file extracted from the system, the applicationgive's the following error message: "Unexpected XML declaration. The XML declaration must be the first node in the document, and no white space characters are allowed to appear before it".
    Someone have these error? If so, how do you solve it?
    thanks,
    SM

    Olá Sandra,
    Encontrei este thread e gostaria de colocar algumas questões.
    Preciso de informações para implementação do SAFT-PT numa empresa, em R/3 não temos experiência deste tipo de implementação. A nossa Equipa de FI precisa neste momento de algumas métricas para iniciar o procedimento SAFT-PT para R/3.
    Existe alguma documentação de apoio, existe algum business cenario em que me possa basear.
    Ou conselhos... se tiver alguns ficava-lhe grato.
    Contacto directo:
    mbarbosa(at)seidor.pt
    Obrigado pelo apoio.
    Cumprimentos,

  • Logical expression( = , =, , ) in read statement

    Hi All,
    Is it possible to use the logical expressions like (<= , >=, <, >) in the read statement?

    While you can only use "=" with the READ statement, you can use the READ statement to position the cursor at the first record you want and then use the LOOP with your operators to get only those records you want (assuming standard tables that have been correctly sorted). This can be very efficient.
    There have been many discussion about this in the forums. Please search and you'll see them.
    Rob

Maybe you are looking for