2011-09-13 8 views
3

JBoss ESB内にデプロイされたHTTPRouterアクションで使用する、自己署名証明書からキーストアとトラストストアファイルを作成しようとしています。私は興味の証明書を取得するためにOpenSSLを使用し、次のコマンドを使用してキーストアファイルとトラストストア・ファイルを生成:キーストアおよびトラストストアファイルを生成する前にキーストアファイルでHTTPRouterアクションをデプロイする際の問題

keytool -import -alias ejb-ssl -file cert.der -keystore cert.truststore 
keytool -import -alias ejb-ssl -file cert.der -keystore cert.keystore -trustcacerts 

、私はX509形式に証明書を変換しています、それ以外のkeytoolユーティリティは機能しません、 'x.509証明書が入力されていません'という例外メッセージが返されます。私はその後、私のESBの「esbcontent/META-INF」フォルダの中にこれらのファイルをコピーし

openssl x509 -in cert.cer -outform DER -out cert.der 

:関心の証明書を変換するには、私は、次のコマンドを使用しています。

サードパーティのWebサービスから取得した証明書は、すべてのURLのを見ると
Caused by: org.jboss.soa.esb.ConfigurationException: Invalid 'keystore' config. Must be valid URL. 

:以下は、私はHTTPRouterアクション

#Configurators 
configurators=HttpProtocol 

#HttpProtocol Config... 
protocol-socket-factory=org.jboss.soa.esb.http.protocol.SelfSignedSSLProtocolSocketFactoryBuilder 

keystore=/META-INF/keystore/cert.keystore 
keystore-passw=password 
truststore=/META-INF/truststore/cert.truststore 
truststore-passw=password 

私はESBを展開するとき、私は次のエラーを取得していますのために設定していますプロパティがあります見てください。誰かがJBossが生成されたキーストアのURLを受け入れない理由を知っていますか?私はこの1つに私の髪を引き裂き始めている!

また、私はprotocol-socket-factoryにorg.apache.commons.httpclient.contrib.ssl.EasySSLProtocolSocketFactoryを使用しようとしています。これを使用すると、ESBはOKをデプロイします。ただし、HTTPRouterはサードパーティのWebサービスに要求を送信していないようです。私はSoapUIを使ってWebサービスを確立していますので、HTTPRouterアクションの設定に問題があると思います。

提供されているヘルプが大幅に改善されました。

答えて

2

これは私にはひどく長い時間がかかりましたが、解決策は非常に簡単であることが判明しました。キーストアファイルへのパスは絶対パスでなければなりません。それは相対的ではありません!したがって、

'C:/dev/server/jboss/jboss-as/server/default/deploy/MyEsb.esb/META-INF/keystore/cert.keystore 

'/META-INF/keystore/cert.keystore' path 

を交換しても問題が解決しました!

ESBをさまざまな環境(WindowsおよびUbuntu)に展開する場合、この絶対パスでプロパティファイルを残しておくことは、必ずしも適切ではありません。ビルドツールとしてgradleを使用していますので、ReplaceTokens機能を使用してキーストアトークンを必要な絶対パスに置き換えました。キーストアファイルをdeployディレクトリにコピーして、それを必要とするすべてのESBで利用できると思います。

これは、この問題を抱えている他の人に役立ちます。最後は単純な解決策でしたが、キーストアファイルが絶対パスで参照されるようにドキュメント内のどこにも言及されていません。しかし、それは私のために問題を修正しました。

ありがとうございました

関連する問題