当前位置: 首页 > 知识库问答 >
问题:

Glassfish 3.1.2构建5战争部署问题

呼延辰龙
2023-03-14

我在将Java WAR部署到Glassfish 3.1.2 build 5时遇到问题。我想排除这是否与配置错误或遗漏有关。

我有一个部署到Glassfish的Web应用程序,在我更改了一个超文本传输协议-listeners之前,它运行得非常好。在那之前,除了更改超文本传输协议-listener-2的SSL设置下的证书昵称之外,我还没有更改任何一个默认侦听器(超文本传输协议-listener-1表示非安全,超文本传输协议-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网站上添加一些配置。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的超文本传输协议-listener。这是预期的行为还是我做错了什么?

提前感谢!

共有1个答案

杨建章
2023-03-14

在GlassFish Server开源版本3.1.2.2(构建5)中部署WAR(在web.xml中具有机密SSLConstraint)时遇到了同样的问题。我必须创建一个非https侦听器来解决这个问题。

我认为这不是预期的行为,特别是由于nullpointer异常。

 类似资料:
  • 我遇到了一个与Gradle 4.8.1建立战争的问题。这是构建。格拉德尔: 我还尝试删除“maven”插件、archivesBaseName和uploadArchive任务,同时取消对war任务的注释,得到了相同的结果。使用uploadArchive时,war可以很好地部署到nexus服务器,我没有发现任何错误。在将war部署到tomcat(在这两种情况下)时,tomcat 7和8不会抛出错误,我

  • 我正在寻找一种方法,可以在我选择的时候将战争工件部署到IntelliJ启动的Tomcat中。我有一个项目,它的配置启动了Tomcat8服务器并部署了一些工件。LaterI现在希望将更多来自不同项目的工件部署到同一个IntelliJ启动的Tomcat中。 步骤:启动包含Tomcat的项目 步骤:从另一个IntelliJ-project(从IDE内)部署war 步骤:从IntelliJ部署另一个war

  • 我正在自学RESTEasy,它将与Maven一起构建,并部署在jBoss中,然后再与Jenkins集成。 目前,我已经创建了一个非常简单的RESTEasy网络服务,并用maven构建了它。我有一个文件和爆炸的战争(这是我相信的战争的解压文件夹),一个与和文件夹在我的netbean里面项目目标文件夹。 我已经安装了JBoss7。x、 并成功启动并验证了它在我的

  • 我正在尝试将一个简单的JSF“hello world”应用程序部署到Jetty 9.3.11,并出现以下错误: war文件包含路径WEB-INF/lib/javax。面-2.2.1。jar有什么问题吗?

  • 如何使war文件自动部署?服务器组件是glass乐于,数据库是在MySQL中创建的。我需要创建一个可执行文件来提取war文件吗?以及如何做到这一点?

  • 我想在Glassfish中使用Jenkins的这些批处理命令部署一个WAR。: