0

JavaWARをGlassfish3.1.2ビルド5にデプロイする際に問題が発生しました。これが構成の誤りまたは脱落に関連している可能性があるかどうかを除外したいと思います。

http-listenerの1つを変更するまで、完全に正常に機能していたWebアプリをGlassfishにデプロイしました。それまでは、http-listener-2のSSL設定で証明書のニックネームを変更する以外は、デフォルトのリスナー(非セキュアの場合はhttp-listener-1、セキュアの場合はhttp-listener-2)を変更していませんでした。

http-listener-1をセキュリティも使用するように変更したときに問題が発生しました。そのリスナーで別の証明書を使用したかったのです。しかし、すべてのアクティブなリスナーに対してSSLを有効にすると、WARをGlassfishにデプロイできなくなったことがわかりました。server.logに次のエラーが表示されます。

[#|2012-08-17T13:42:24.686-0700|SEVERE|glassfish3.1.2|javax.enterprise.system.core.com.sun.enterprise.v3.server|_ThreadID=2257;_ThreadName=Thread-2;|java.lang.RuntimeException
at org.glassfish.webservices.WebServicesDeployer.prepare(WebServicesDeployer.java:193)
at com.sun.enterprise.v3.server.ApplicationLifecycle.prepareModule(ApplicationLifecycle.java:871)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:410)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:240)
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:389)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:348)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:363)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1085)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200(CommandRunnerImpl.java:95)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1291)
...
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:722)

Caused by: java.lang.NullPointerException
at com.sun.enterprise.deployment.WebServiceEndpoint.composeEndpointAddress(WebServiceEndpoint.java:698)
at com.sun.enterprise.deployment.WebServiceEndpoint.composeEndpointAddress(WebServiceEndpoint.java:690)
at com.sun.enterprise.deployment.WebServiceEndpoint.composeFinalWsdlUrl(WebServiceEndpoint.java:753)
at org.glassfish.webservices.WebServicesDeployer.doWebServicesDeployment(WebServicesDeployer.java:634)
at org.glassfish.webservices.WebServicesDeployer.prepare(WebServicesDeployer.java:184)
... 53 more

公式サイトからGlassfishの最新バージョンをインストールしました。

いくつかの調査により、トランスポート保証が機密である必要があることを指定するために、glassfish-web.xmlまたはweb.xmlファイルに構成を追加する必要があるかどうか疑問に思いました。ここで概説した構成を試しました。

http://www.java-tips.org/java-ee-tips/java-api-for-xml-web-services/using-jax-ws-based-web-services-wit.html

しかし、それでもWARを展開できませんでした。それを修正する唯一のことは、SSL対応ではない3番目のhttpリスナーを作成することでした。これは予想される動作ですか、それとも私は何か間違ったことをしていますか?

前もって感謝します!

4

1 に答える 1

1

WAR (web.xml に CONFIDENTIAL SSLConstraint を持つ) を GlassFish Server Open Source Edition 3.1.2.2 (ビルド 5) にデプロイする際に同じ問題に直面しました。この問題を回避するには、https 以外のリスナーを作成する必要がありました。

特に nullpointer 例外のため、これは予期された動作ではないと思います。

于 2013-01-24T09:58:23.100 に答える