gSOAPセキュリティヘッダー(WSSE)の生成に問題があります。必要なすべてのファイルをコンパイルし、次の呼び出しを使用してWSSEセキュリティヘッダーを要求に追加しました。
soap_wsse_add_Security(proxy.soap);
soap_wsse_add_UsernameTokenText(proxy.soap, "UsernameToken-1", "user","passwd");
私のセキュリティヘッダーは次のようになります。
<SOAP-ENV:Header>
<wsse:Security SOAP-ENV:mustUnderstand="true">
<wsse:UsernameToken wsu:Id="UsernameToken-1">
<wsse:Username>testuser</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">
testPassword</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</SOAP-ENV:Header>
私が提供したサーバー仕様と比較して、
<wsse:Security SOAP-ENV:mustUnderstand="true">
xmlns:wsse="http...." と行がありません
<wsse:UsernameToken wsu:Id="UsernameToken-1">
xmlns:wsu ="http...."の部分がありません。だから私はこのように見えるようにしたい:
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" SOAP-ENV:mustUnderstand="true">
<wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="UsernameToken-1">
xmlns:wsseおよびxmlns:wsuパーツを特定の行に追加して、仕様に合わせるにはどうすればよいですか?サービスから得られるエラーは次のとおりです。
com.ctc.wstx.exc.WstxParsingException: Undeclared namespace
prefix "wsse"
gSOAPのドキュメントを見てきましたが、見つけたのはヘッダーを追加する方法だけで、ヘッダーの項目に名前空間定義を追加する方法については何もありませんでした。
支援をいただければ幸いです。