1

common/lib フォルダーに jbossws jar がある JBoss 5.1.0GA を使用しています。私のプロジェクトは、(Web サービス経由の) サードパーティ システムへの接続に依存しています。Encryption および Decryption ハンドラは jar ファイルとして提供されており、jar ファイルを調べると、pom は軸ライブラリに依存しています。クライアントが正しい EncryptionHandler を指すように定義された wsdd が​​あります。

問題は、Web サービスでリクエストを作成しようとすると、EncryptionHandler が次のエラーをスローすることです:-

原因: java.lang.ClassCastException: org.jboss.ws.core.soap.SOAPMessageImpl を org.apache.axis.Message にキャストできません 10:06:15,935 ERROR [STDERR] at org.apache.axis.MessageContext.setMessage (MessageContext.java:648)

EncryptionHandler がメッセージを作成しようとすると、pom (および jboss 内のサーバー lib) に含まれる Axis lib ではなく、jbossws lib が使用されているようです。

プロジェクトが jbossws jar を取得するのを停止し、代わりに軸 1 を使用するにはどうすればよいですか? pom の依存関係として jbossws はありません。

4

1 に答える 1

1

You should be able to deploy the Axis lib to $JBoss_Home\lib\endorsed\ which would then take precedence over the JBoss libs. Though there may be other carry-on effects with this depending upon what other JBoss WS related functions are being used.

于 2011-04-05T08:29:34.873 に答える