2016-10-21 2 views
0

J'appelle le service Soap via une activité d'invocation avec une liaison de référence, dans l'onglet binding J'utilise les paramètres soapui Mock (host, port: in le client http et URI), lors du débogage je suis confronté à cette erreur:Opération manquant pour soapAction "" et body element "" avec soap version 1.1 BW6

[Fatal Error] :1:1: Content is not allowed in prolog. 

11:15:58.805 ERROR [bwEngThread:In-Memory Process Worker-5] com.tibco.bw.core - TIBCO-BW-CORE-500050: The BW process [Applications.DOM_OPALE.CLOE.CreationBondecommande.CreationBonDeCommande_1-SOAPExtClient] instance faulted, JobId [bw0a102], ProcessInstanceId [bw0a102], ParentProcessInstanceId [bw0a101], Module [ProcessorBusinessShared:1.0.0.0], Application [CloeAdapterOut.application:1.0]. 

    <CausedBy> TIBCO-BW-CORE-500052: Invoke activity [CreationBonDeCommande] fault. 

    <CausedBy> com.tibco.bw.binding.soap.DefaultFault: TIBCO-BW-BINDING-SOAP-550100: Received SOAP Fault from the service provider of the Operation [{OPA}CreationBonDeCommande], SoapReferenceBinding [SOAPReferenceBinding], Application [CloeAdapterOut.application:1.0]. SOAP Fault received: [<?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> 
    <soapenv:Body> 
     <soapenv:Fault> 
      <faultcode>Server</faultcode> 
      <faultstring>Missing operation for soapAction [rpc/OPA:CreationBonDeCommande] and body element [CreationBonDeCommande] with SOAP Version [SOAP 1.1]</faultstring> 
     </soapenv:Fault> 
    </soapenv:Body> 
</soapenv:Envelope> 
] 

une idée s'il vous plaît?

est Ci-dessous le fichier wsdl:

<message name="CreationBonDeCommande_Input"> 
    <part name="InputMessage" type="xsdLocal0:InputTopElmtData"/> 
</message> 
<message name="CreationBonDeCommande_Output"> 
    <part name="OutputMessage" type="xsdLocal1:OutputTopElmtData"/> 
</message> 

<portType name="OPA_CreationBonDeCommande"> 
    <operation name="CreationBonDeCommande"> 
     <input message="tns:CreationBonDeCommande_Input"/> 
     <output message="tns:CreationBonDeCommande_Output"/> 
    </operation> 

</portType> 

<binding name="OPA_CreationBonDeCommande" type="tns:OPA_CreationBonDeCommande"> 
    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> 
    <operation name="CreationBonDeCommande"> 
     <soap:operation soapAction="rpc/OPA:CreationBonDeCommande" /> 
     <input> 
      <soap:body namespace="OPA" use="literal"/> 
     </input> 
     <output> 
      <soap:body namespace="OPA" use="literal"/> 
     </output> 
    </operation> 
</binding> 
<service name="OPA_CreationBonDeCommande_WS"> 
    <port binding="tns:OPA_CreationBonDeCommande" name="OPA_CreationBonDeCommande"> 
     <soap:address location="http://<web_server></web_server>/eai_fra/start.swe?SWEExtSource=WebService&amp;SWEExtCmd=Execute&amp;UserName=sadmin&amp;Password=sadmin"/> 
    </port> 
</service> 

Merci à l'avance

Répondre

0

Tibco BW supprimer l'en-tête 6.3.2 qui contient soapAction en raison d'un bug -> Version mise à niveau vers 6.3.3, le problème est résolu

0

Il est clair que la demande manque soapAction en-tête sur la base du message d'erreur.

Veuillez ajouter le soapAction avec la valeur appropriée.

+0

le problème est le savon d'action existe dans le wsdl –

+0

Eh bien, la demande doit l'avoir. – Rao

+0

J'utilise Tibco BW 6 Je ne fais que mapper le message d'entrée Je pense que cela a généré automatiquement –