Потребление ws из Java - PullRequest
       7

Потребление ws из Java

0 голосов
/ 24 декабря 2011

У меня есть проблема, которая сводит меня с ума.

Я хочу использовать веб-сервис, поэтому я создал клиент, использующий Eclipse из его WSDL, но он не работает, но когда я использую другой инструмент, такой как XMLSpyэто работает.

Мыльное сообщение, отправленное из моего кода Java (не работает):

<SOAP-ENV:Envelope 
     xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <SOAP-ENV:Body>
        <JRPM056.Execute>
            <Personas>
                    <ns1:pais xmlns:ns1="Personas">845</ns1:pais>
                    <ns2:tpdoc xmlns:ns2="Personas">1</ns2:tpdoc>
                    <ns3:ndoc xmlns:ns3="Personas">39858460</ns3:ndoc>
                    <ns4:apell1 xmlns:ns4="Personas">Recoba</ns4:apell1>
                    <ns5:apell2 xmlns:ns5="Personas">Viana</ns5:apell2>
                    <ns6:nombre1 xmlns:ns6="Personas">Rodrigo</ns6:nombre1>
                    <ns7:nombre2 xmlns:ns7="Personas">Romualdo</ns7:nombre2>
                    <ns8:fecnac xmlns:ns8="Personas">2011-12-01</ns8:fecnac>
                    <ns9:fecvto xmlns:ns9="Personas">2011-12-31</ns9:fecvto>
                    <ns10:sexo xmlns:ns10="Personas">M</ns10:sexo>
                    <ns11:estciv xmlns:ns11="Personas">2</ns11:estciv>
                    <ns12:domicilio xmlns:ns12="Personas">
                        <ns13:domicilios.domiciliosItem xmlns:ns13="domicilios">
                            <ns13:tdomi>4</ns13:tdomi>
                            <ns13:dpto>10</ns13:dpto>
                            <ns13:local>10</ns13:local>
                            <ns13:calle>Convenc</ns13:calle>
                            <ns13:puerta>1465</ns13:puerta>
                            <ns13:aparta>301</ns13:aparta>
                        </ns13:domicilios.domiciliosItem>
                        <ns14:domicilios.domiciliosItem xmlns:ns14="domicilios">
                                <ns14:tdomi>3</ns14:tdomi>
                                <ns14:dpto>10</ns14:dpto>
                                <ns14:local>10</ns14:local>
                                <ns14:calle>Araucho</ns14:calle>
                                <ns14:puerta>1359</ns14:puerta>
                                <ns14:aparta>1</ns14:aparta>
                        </ns14:domicilios.domiciliosItem>
                    </ns12:domicilio>
                    <ns15:telefono xmlns:ns15="Personas">
                            <ns16:Sdttelefonos.SdttelefonosItem xmlns:ns16="sdttelefonos">
                                <ns16:tdomici>2</ns16:tdomici>
                                <ns16:telefono>27073963</ns16:telefono>
                                <ns16:sitdomi></ns16:sitdomi>
                            </ns16:Sdttelefonos.SdttelefonosItem>
                            <ns17:Sdttelefonos.SdttelefonosItem xmlns:ns17="sdttelefonos">
                                <ns17:tdomici>1</ns17:tdomici>
                                <ns17:telefono>099514254</ns17:telefono>
                                <ns17:sitdomi></ns17:sitdomi>
                            </ns17:Sdttelefonos.SdttelefonosItem>
                            <ns18:Sdttelefonos.SdttelefonosItem xmlns:ns18="sdttelefonos">
                                <ns18:tdomici>0</ns18:tdomici>
                                <ns18:telefono>099514254</ns18:telefono>
                                <ns18:sitdomi></ns18:sitdomi>
                            </ns18:Sdttelefonos.SdttelefonosItem>
                        </ns15:telefono>
                <ns19:Ocucod xmlns:ns19="Personas">1</ns19:Ocucod>
                <ns20:Actcod xmlns:ns20="Personas">1</ns20:Actcod>
                <ns21:empresa xmlns:ns21="Personas">MI</ns21:empresa>
                <ns22:fecing xmlns:ns22="Personas">2011-12-01</ns22:fecing>
            </Personas>
            </JRPM056.Execute>
        </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Сообщение об ошибке:

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<WS.ExecuteResponse xmlns="http://tempuri.org/action/">
    <SOAP-ENV:Fault>
        <faultcode>SOAP-ENV:Client</faultcode>
        <faultstring>Name of parameter 2 different than expected.</faultstring>
        <detail>2</detail>
    </SOAP-ENV:Fault>
</WS.ExecuteResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Сообщение мыла, отправленное из XMLшпион (работает):

<SOAP-ENV:Envelope 
     xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" 
     xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <SOAP-ENV:Body>
        <JRPM056.Execute>
            <Personas>
                    <ns1:pais xmlns:ns1="Personas">845</ns1:pais>
                    <ns2:tpdoc xmlns:ns2="Personas">1</ns2:tpdoc>
                    <ns3:ndoc xmlns:ns3="Personas">39858460</ns3:ndoc>
                    <ns4:apell1 xmlns:ns4="Personas">Recoba</ns4:apell1>
                    <ns5:apell2 xmlns:ns5="Personas">Viana</ns5:apell2>
                    <ns6:nombre1 xmlns:ns6="Personas">Rodrigo</ns6:nombre1>
                    <ns7:nombre2 xmlns:ns7="Personas">Romualdo</ns7:nombre2>
                    <ns8:fecnac xmlns:ns8="Personas">2011-12-01</ns8:fecnac>
                    <ns9:fecvto xmlns:ns9="Personas">2011-12-31</ns9:fecvto>
                    <ns10:sexo xmlns:ns10="Personas">M</ns10:sexo>
                    <ns11:estciv xmlns:ns11="Personas">2</ns11:estciv>
                    <ns12:domicilio xmlns:ns12="Personas">
                        <ns13:domicilios.domiciliosItem xmlns:ns13="domicilios">
                            <ns13:tdomi>4</ns13:tdomi>
                            <ns13:dpto>10</ns13:dpto>
                            <ns13:local>10</ns13:local>
                            <ns13:calle>Convenc</ns13:calle>
                            <ns13:puerta>1465</ns13:puerta>
                            <ns13:aparta>301</ns13:aparta>
                        </ns13:domicilios.domiciliosItem>
                        <ns14:domicilios.domiciliosItem xmlns:ns14="domicilios">
                                <ns14:tdomi>3</ns14:tdomi>
                                <ns14:dpto>10</ns14:dpto>
                                <ns14:local>10</ns14:local>
                                <ns14:calle>Araucho</ns14:calle>
                                <ns14:puerta>1359</ns14:puerta>
                                <ns14:aparta>1</ns14:aparta>
                        </ns14:domicilios.domiciliosItem>
                    </ns12:domicilio>
                    <ns15:telefono xmlns:ns15="Personas">
                            <ns16:Sdttelefonos.SdttelefonosItem xmlns:ns16="sdttelefonos">
                                <ns16:tdomici>2</ns16:tdomici>
                                <ns16:telefono>27073963</ns16:telefono>
                                <ns16:sitdomi></ns16:sitdomi>
                            </ns16:Sdttelefonos.SdttelefonosItem>
                            <ns17:Sdttelefonos.SdttelefonosItem xmlns:ns17="sdttelefonos">
                                <ns17:tdomici>1</ns17:tdomici>
                                <ns17:telefono>099514254</ns17:telefono>
                                <ns17:sitdomi></ns17:sitdomi>
                            </ns17:Sdttelefonos.SdttelefonosItem>
                            <ns18:Sdttelefonos.SdttelefonosItem xmlns:ns18="sdttelefonos">
                                <ns18:tdomici>0</ns18:tdomici>
                                <ns18:telefono>099514254</ns18:telefono>
                                <ns18:sitdomi></ns18:sitdomi>
                            </ns18:Sdttelefonos.SdttelefonosItem>
                        </ns15:telefono>
                <ns19:Ocucod xmlns:ns19="Personas">1</ns19:Ocucod>
                <ns20:Actcod xmlns:ns20="Personas">1</ns20:Actcod>
                <ns21:empresa xmlns:ns21="Personas">MI</ns21:empresa>
                <ns22:fecing xmlns:ns22="Personas">2011-12-01</ns22:fecing>
            </Personas>
            </JRPM056.Execute>
        </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Я пытаюсь выяснить разницу, чтобы понять, почему не работает мой сгенерированный клиентом Eclipse.Спасибо!

1 Ответ

0 голосов
/ 24 декабря 2011

ваша схема не имеет никакого смысла.Пространство имен "tns3" нигде не определено, и ваши различные имена типов не совпадают вообще.это фактическая схема?если это так, я бы сначала попытался исправить это.

...