cancel
Showing results for 
Search instead for 
Did you mean: 

XML INPUT parameter in a MII BLS Transaction

Former Member
0 Kudos

Hi.

Please anybody has some good XSD file that can be used as a data type for a xml input parameter of a BLS Transaction ? could share it with us ? I will use it as a sample to create my own XSD file.

Until now, all XSD files that I created worked but I could not import the webservice on ECC.

Accepted Solutions (0)

Answers (2)

Answers (2)

0 Kudos

Have a look at the example here:

Sam

Former Member
0 Kudos

Hi Michel,

I've used XML as an input for an RFC call in a transaction. I've attached copies of the XML and the XSD that may help you.

Former Member
0 Kudos

Thank you Stephen. Did you import your transaction webservice on SAP ECC ?

I've tried it but doesn't work.

Former Member
0 Kudos

We had problems exposing the input parameters. We found that we needed to clear the connection cache. We used the URL, http://<server:port>/XMII/JCOProxy?Mode=Reset&Target=Pool&PoolName=<ConnAliasPoolName> which worked sometimes. When it didn't work, we used http://<server:port>/XMII/JCOProxy?Mode=Reset&Target=Pool which resets all of the connections.

Former Member
0 Kudos

Hi Stephen Kuykendall, thank you.

I still have to following error message when try to execute the webservice in wsnavigator:

[location : http://srvsdmii01.malwee.com.br:50000/XMII/WSDLGen/Default/teste2] ERROR : Definition of /definitions/types/s:schema/s:complexType[1]/s:sequence/s:element/s:complexType/s:sequence/s:element is not correct. Missing top level component (uri: 'http://schemas.xmlsoap.org/wsdl/'; name: 'GET_DETAILS').

I created a XSD file and put your xsd contente there:

so, I created a transaction propert of type "Input" with Data Type "xml" and assined your XSD with the element "GET_DETAILS":


The WSDL url (/XMII/WSDLGen/Default/teste2) generated the wsdl with the following content:

<?xml version="1.0" encoding="UTF-8"?><definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://www.sap.com/xMII" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://www.sap.com/xMII">

    <!-- Types -->

    <types>

        <s:schema elementFormDefault="qualified" targetNamespace="http://www.sap.com/xMII"><s:import schemaLocation="http://srvsdmii01.malwee.com.br:50000/XMII/WSDLGen/db/Default/WEB/Entrada.xsd"/>

            <s:complexType name="InputParams">

                <s:sequence id="InputSequence">

                   

                <s:element maxOccurs="1" minOccurs="0" name="P_Entrada"><s:complexType><s:sequence><s:element ref="GET_DETAILS"/></s:sequence></s:complexType></s:element></s:sequence>

            </s:complexType>

            <s:element name="XacuteRequest">

                <s:complexType>

                    <s:sequence>

                        <s:element maxOccurs="1" minOccurs="0" name="LoginName" type="s:string"/>

                        <s:element maxOccurs="1" minOccurs="0" name="LoginPassword" type="s:string"/>

                        <s:element maxOccurs="1" minOccurs="0" name="InputParams" type="s0:InputParams"/>

                    </s:sequence>

                </s:complexType>

            </s:element>

            <s:complexType name="Rowset">

                <s:sequence>

                    <s:element maxOccurs="unbounded" minOccurs="0" name="Row" type="s0:Row"/>

                </s:sequence>

                <s:attribute name="Message" type="s:string"/>

            </s:complexType>

            <s:complexType name="Row">

                <s:sequence id="RowSequence">

                   

                <s:element maxOccurs="1" minOccurs="1" name="P_Saida" type="s:string"/></s:sequence>

            </s:complexType>

            <s:element name="XacuteResponse">

                <s:complexType>

                    <s:sequence>

                        <s:element maxOccurs="1" minOccurs="0" name="Rowset" type="s0:Rowset"/>

                    </s:sequence>

                </s:complexType>

            </s:element>

        </s:schema>

    </types>

    <!-- Messages -->

    <message name="XacuteSoapIn">

        <part element="s0:XacuteRequest" name="parameters"/>

    </message>

    <message name="XacuteSoapOut">

        <part element="s0:XacuteResponse" name="parameters"/>

    </message>

    <!-- Ports -->

    <portType name="XacuteWSSoap">

        <operation name="Xacute">

            <input message="s0:XacuteSoapIn"/>

            <output message="s0:XacuteSoapOut"/>

        </operation>

    </portType>

    <!-- Bindings -->

    <binding name="XacuteWSSoap" type="s0:XacuteWSSoap">

        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

        <operation name="Xacute">

            <soap:operation soapAction="http://www.sap.com/xMII" style="document"/>

            <input>

                <soap:body use="literal"/>

            </input>

            <output>

                <soap:body use="literal"/>

            </output>

        </operation>

    </binding>

    <!-- Service mapping -->

    <service name="XacuteWS">

        <port binding="s0:XacuteWSSoap" name="XacuteWSSoap">

            <soap:address location="http://srvsdmii01.malwee.com.br:50000/XMII/SOAPRunner/Default/teste2"/>

        </port>

    </service>

</definitions>

Former Member
0 Kudos

Yes, that is not what I was doing so I'm not able to help you with that. Salvatore's link looks like the answer you want.