Apache CXF 3.1을 사용하여 타사 웹 서비스에 액세스하려고합니다. wsdl2java가 생성 된 코드 또는 컬을 사용하여 서비스를 호출하면 서비스가 유효한 SOAP 메시지가 아님을 나타내는 예외가 리턴됩니다. 아래 메시지를 참조하십시오.Apache CXF를 사용하여 봉투에서 비누 네임 스페이스를 제거하는 방법
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<connectivityTest xmlns="urn:cdc:iisb:2011" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="connectivityTest">
<echoBack>Hello IIS!</echoBack>
</connectivityTest>
</soap:Body>
</soap:Envelope>
네임 스페이스 (soap :)를 제거하고 curl을 사용하여 서비스를 호출하면 서비스가 작동합니다. 아래 작업 메시지를 참조하십시오. 이 전송되기 전에
<?xml version="1.0" encoding="utf-8"?>
<Envelope xmlns="http://www.w3.org/2003/05/soap-envelope">
<Body>
<connectivityTest xmlns="urn:cdc:iisb:2011" xmlns:ns2="http://www.w3.org/2003/05/soap-envelope">
<echoBack>Hello IIS V2!</echoBack>
</connectivityTest>
</Body>
어떻게 봉투 내 SOAP 메시지의 본문 요소의 네임 스페이스를 제거하는 방법은 무엇입니까? 웹 검색을 기반으로하여 요격기를 만들어야하는 것처럼 보입니다. 어떤 요소가 Envelope와 Body 요소에서 네임 스페이스를 제거하기위한 인터셉터의 예제를 제공 할 수 있다면 그것은 대단히 감사 할 것입니다.
미리 감사드립니다. JR