2016-04-04 3 views
0

Ich benutze WS-Consumer-Komponente, um eine externe Web-Service und Ich suche nach einer Möglichkeit, die Erzeugung eines SOAP-Headers in der Anfrage zu verhindern.Mule: Wie verhindert man, dass WS Consumer Header in der Anfrage generiert?

Ich habe festgestellt, wie dies zu tun ist, wenn explizit cxf Komponente:

<cxf:configuration enableMuleSoapHeaders="false"/> 

und dann gleiche in <cxf:jaxws-client ...

Aber ich kann nicht herausfinden, wie man das gleiche zu erreichen, wenn WS Consumer mit . Also, kann jemand Ratschläge geben?

Danke,

Antwort

1

Ok, ich habe die Antwort von mir gefunden. Grundsätzlich hat WS Consumer (v3.7) kein Attribut, das den enableMuleSoapHeaders aus der cxf-Komponente ähnelt. Also müssen Sie die Logik in Java codieren.

Zunächst müssen Sie Ihren eigenen CXF-Interceptor codieren, der die Nachricht durchgehen und die unnötigen Header entfernen würde.

Dann müssen Sie eine cxf-Konfigurationsdatei (der Standardname ist cxf.xml) erstellen und in den mule-Projektklassenpfad einfügen.

Sobald dies erledigt ist, wird Mule den Interzeptor für jede verarbeitete cxf-Nachricht aufrufen und die Header entfernen.

Weitere Informationen zum Codieren und Konfigurieren von cxf interceptor finden Sie in der Apache-Dokumentation here.

Verwandte Themen