Skip to Content
avatar image
Former Member

Error While generating Web Service Proxy using Web Service Action in MII 12

Hi All,

We are using the Web Service action block in BLS transaction to call a web service from an external legacy system. When we provide the WSDL in the action block configuration and click Next we can see the Port and Operation of the web service which we have selected and finally clicked on Finish. On clicking Finish it is giving an error "[Fatal Error] :-1:-1: Premature end of file." and no web service request/response structures are being generated.

The WSDL file is attached herwith. Please check and provide the solution. We are using MII 12.2 SP02 with latest patch.

An error message is also added to the NetWeaver log as below:

XmlProxy Error: Premature end of file.

[EXCEPTION]

org.xml.sax.SAXParseException: Premature end of file.

at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:264)

at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)

at com.sap.lhcommon.schema.XmlHelper.loadDocument(XmlHelper.java:38)

at com.sap.lhcommon.schema.XmlHelper.loadDocumentNS(XmlHelper.java:28)

at com.sap.lhcommon.webservice.SoapMessage.getExampleXmlAsBytes(SoapMessage.java:103)

at com.sap.xmii.servlet.XmlProxy.service(XmlProxy.java:204)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)

at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:162)

at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:81)

at com.sap.xmii.system.SecurityFilter.doFilter(SecurityFilter.java:96)

at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:73)

at com.sap.xsrf.filter.XSRFProtectorFilter.doFilter(XSRFProtectorFilter.java:62)

at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:73)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:468)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:298)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:399)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:388)

at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:48)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:84)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:244)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:78)

at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)

at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)

at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)

at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:43)

at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:42)

at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:428)

at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:247)

at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:45)

at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)

at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)

at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:327)

The wsdl file is as follows:

<wsdl:definitions

targetNamespace="urn:cat.cis.mesassembly.server.service.pod"

xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"

xmlns:tns="http://pod.service.server.mesassembly.cis.cat"

xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"

xmlns:xsd="http://www.w3.org/2001/XMLSchema"

xmlns:apachesoap="http://xml.apache.org/xml-soap"

xmlns:intf="urn:cat.cis.mesassembly.server.service.pod"

xmlns:impl="urn:cat.cis.mesassembly.server.service.pod"

xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding"

>

<wsdl:types>

http://pod.service.server.mesassembly.cis.cat"

xmlns="http://www.w3.org/2001/XMLSchema">

http://schemas.xmlsoap.org/soap/encoding/"/>

<complexType name="ProductionOrderDetailsInput">

<sequence>

<element name="detailsString" type="xsd:base64Binary"/>

<element name="productionOrderNumber" nillable ="true" type="xsd:string"/>

<element name="fullExplosionFlag" type="xsd:string"/>

</sequence>

</complexType>

<complexType name="ProductionOrderDetailsReceipt">

<sequence>

<element name="errorMessage" nillable="true" type="xsd:string"/>

<element name="valid" type="xsd:boolean"/>

</sequence>

</complexType>

</schema>

</wsdl:types>

<wsdl:message name="processOrderDetailsResponse">

<wsdl:part name="podReturn" type="tns:ProductionOrderDetailsReceipt" />

</wsdl:message>

<wsdl:message name="processOrderDetailsRequest">

<wsdl:part name="input" type="tns:ProductionOrderDetailsInput" />

</wsdl:message>

<wsdl:portType name="PodService">

<wsdl:operation name="ProcessOrderDetails" parameterOrder="input">

<wsdl:input message="impl:processOrderDetailsRequest"

name="processOrderDetailsRequest"/>

<wsdl:output message="impl:processOrderDetailsResponse"

name="processOrderDetailsResponse"/>

</wsdl:operation>

</wsdl:portType>

<wsdl:binding name="ProdOrderDetailsSoapBinding" type="impl:PodService">

http://schemas.xmlsoap.org/soap/http"/>

<wsdl:operation name="ProcessOrderDetails">

http://pod.service.server.mesassembly.cis.cat/NewOperation"/>

<wsdl:input name="processOrderDetailsRequest">

http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:cat.cis.mesassembly.server.service.pod" />

</wsdl:input>

<wsdl:output name="processOrderDetailsResponse">

http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:cat.cis.mesassembly.server.service.pod" />

</wsdl:output>

</wsdl:operation>

</wsdl:binding>

<wsdl:service name="PodService_Service">

<wsdl:port binding="impl:ProdOrderDetailsSoapBinding" name="ProdOrderDetails">

<soap:address location="http:/localhost:8080/MESAssembly/services/ProdOrderDetails"/>

</wsdl:port>

</wsdl:service>

</wsdl:definitions>

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • avatar image
    Former Member
    Aug 04, 2011 at 07:55 AM

    The WSDL file is as follows:

    <?xml version="1.0" encoding="UTF-8"?>

    <wsdl:definitions

    targetNamespace="urn:cat.cis.mesassembly.server.service.pod"

    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"

    xmlns:tns="http://pod.service.server.mesassembly.cis.cat"

    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"

    xmlns:xsd="http://www.w3.org/2001/XMLSchema"

    xmlns:apachesoap="http://xml.apache.org/xml-soap"

    xmlns:intf="urn:cat.cis.mesassembly.server.service.pod"

    xmlns:impl="urn:cat.cis.mesassembly.server.service.pod"

    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding"

    >

    <wsdl:types>

    http://pod.service.server.mesassembly.cis.cat"

    xmlns="http://www.w3.org/2001/XMLSchema">

    http://schemas.xmlsoap.org/soap/encoding/"/>

    <complexType name="ProductionOrderDetailsInput">

    <sequence>

    <element name="detailsString" type="xsd:base64Binary"/>

    <element name="productionOrderNumber" nillable ="true" type="xsd:string"/>

    <element name="fullExplosionFlag" type="xsd:string"/>

    </sequence>

    </complexType>

    <complexType name="ProductionOrderDetailsReceipt">

    <sequence>

    <element name="errorMessage" nillable="true" type="xsd:string"/>

    <element name="valid" type="xsd:boolean"/>

    </sequence>

    </complexType>

    </schema>

    </wsdl:types>

    <wsdl:message name="processOrderDetailsResponse">

    <wsdl:part name="podReturn" type="tns:ProductionOrderDetailsReceipt" />

    </wsdl:message>

    <wsdl:message name="processOrderDetailsRequest">

    <wsdl:part name="input" type="tns:ProductionOrderDetailsInput" />

    </wsdl:message>

    <wsdl:portType name="PodService">

    <wsdl:operation name="ProcessOrderDetails" parameterOrder="input">

    <wsdl:input message="impl:processOrderDetailsRequest"

    name="processOrderDetailsRequest"/>

    <wsdl:output message="impl:processOrderDetailsResponse"

    name="processOrderDetailsResponse"/>

    </wsdl:operation>

    </wsdl:portType>

    <wsdl:binding name="ProdOrderDetailsSoapBinding" type="impl:PodService">

    http://schemas.xmlsoap.org/soap/http"/>

    <wsdl:operation name="ProcessOrderDetails">

    http://pod.service.server.mesassembly.cis.cat/NewOperation"/>

    <wsdl:input name="processOrderDetailsRequest">

    http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:cat.cis.mesassembly.server.service.pod" />

    </wsdl:input>

    <wsdl:output name="processOrderDetailsResponse">

    http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:cat.cis.mesassembly.server.service.pod" />

    </wsdl:output>

    </wsdl:operation>

    </wsdl:binding>

    <wsdl:service name="PodService_Service">

    <wsdl:port binding="impl:ProdOrderDetailsSoapBinding" name="ProdOrderDetails">

    <soap:address location="http:/localhost:8080/MESAssembly/services/ProdOrderDetails"/>

    </wsdl:port>

    </wsdl:service>

    </wsdl:definitions>

    Add comment
    10|10000 characters needed characters exceeded