質問

私は、JAX-WS Webサービスの内部axis2のクライアントとの問題を抱えています。このJAX-WS Webサービスは、Tomcatコンテナ内にあります。いるkeystoreFileは、データベースから動的に取得されます。私はTomcatを起動すると、私は通常、WS-クライアントを使用することができますし、それが正常に動作しますが、私は、キーストアを変更した場合、それは、以下に示すスタックトレースで失敗します。私はTomcatを再起動する場合、それは正常に動作します。城壁やTomcatは、Tomcatを再起動するまでフラッシュされないいくつかの静的変数を持っていますか?私は、セキュアなWebサービスのためのメッセージに署名するために城壁モジュール1.3を使用しています。私は、ログにそれらを印刷されているので、流入と流出のconfigsが正しいと思います。

Tomcatのカタリナログにスタックトレースます:

 org.apache.axis2.AxisFault: Error during Signature: ; nested exception is:
        org.apache.ws.security.WSSecurityException: General security error (No certificates for user user1 were found for signature)
        at org.apache.rampart.handler.WSDoAllSender.processMessage(WSDoAllSender.java:67)
        at org.apache.rampart.handler.WSDoAllHandler.invoke(WSDoAllHandler.java:72)
        at org.apache.axis2.engine.Phase.invoke(Phase.java:318)
        at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:251)
        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:416)
        at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:402)
        at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229)
        at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
役に立ちましたか?

解決

[OK]を私は解決策を見つけました。トリックはPolicyBased構成を使用することでした。私は古いParameterBased構成を使用していました。ここでThilinaによって偉大なブログへのリンクがあります:

プログラムで城壁-config設定を構築する方法を...

このチュートリアルを以下のときpolicy.xmlファイルを定義することを忘れないでください。

):これは私が最初に行うことを忘れてしまった何かをしました
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top