EWS Java APIを使用してアクセスしようとしているIBM WAS 8.5.5.9 NDおよびMS Exchangeサーバーがあります。デプロイメントマネージャーが1台のマシンに設定されていて、Javaアプリを搭載した私のアプリケーションサーバーが他のマシンで稼働していますIBM WAS HTTPS接続証明書チェーン・エラー
ExchangeService service = new ExchangeService();
ExchangeCredentials credentials = new WebCredentials("username", "password", "host");
service.setCredentials(credentials);
service.setUrl(URI.create("https://xxxxxxxxx/EWS/Exchange.asmx"));
List msgList = new ArrayList();
Folder folder = Folder.bind(service, WellKnownFolderName.Inbox);
FindItemsResults results = service.findItems(folder.getId(), new ItemView(5));
List items = results.getItems();
service.close();
しかし、私のアプリはMS Exchangeを受け入れません。 HTTPS接続の問題:
The request failed. The request failed. com.ibm.jsse2.util.j: PKIX path building failed: java.security.cert.CertPathBuilderException: PKIXCertPathBuilderImpl could not build a valid CertPath.; internal cause is:
java.security.cert.CertPathValidatorException: The certificate issued by CN=XXX Root CA, O=XXX, C=ES is not trusted; internal cause is:
java.security.cert.CertPathValidatorException: Certificate chaining error
私はこのIBMガイド(http://www-01.ibm.com/support/docview.wss?uid=swg21592616)を開設しました。
私はOWAが好きなFirefoxのブラウザからrootと中間の証明書をダウンロードしました。それらをNodeDefaultTrustStoreにインストールし、CellDefaultTrustStoreでも、Java EWS APIを実行している私のアプリケーションサーバーを再ロードしました。しかし、まだこの問題があります。
どうしたのですか?多分私は何かを忘れた?この問題はIBW WASとトラストストアの設定に関連していますか、間違った証明書がありますか?私はこの証明書をJavaトラストストアに追加しますか?シンガー証明書を追加する際のエイリアスフィールドの値は重要ですか(私の中間証明書のエイリアス値は以外)