gpt4 book ai didi

java - 在glassfish中加载restful webapp时如何解决IllegalStateException?

转载 作者:行者123 更新时间:2023-12-02 02:21:25 25 4
gpt4 key购买 nike

我正在尝试使用 this link 创建一个基本的 Hello world 应用程序.

我已经按照要求创建了所有内容,但出现以下错误:

Exception while loading the app : java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: org.apache.catalina.LifecycleException: java.lang.NoSuchMethodError: com.sun.research.ws.wadl.Response.getRepresentationOrFault()Ljava/util/Lis

我的web.xml

<web-app id="WebApp_ID" version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>Restful Web Application</display-name>

<servlet>
<servlet-name>jersey-serlvet</servlet-name>
<servlet-class>
com.sun.jersey.spi.container.servlet.ServletContainer
</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>com</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>jersey-serlvet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>

</web-app>

my dir structure

最佳答案

<强> java.lang.NoSuchMethodError 如果类的定义发生不兼容的更改,错误只会在运行时发生。

我可以看到,您已经使用 Jersey 1.8 编译了代码,并在 Glassfish 4.1.1 上部署了您的 Web 应用程序。

并且,根据预言之一 official blog Glassfish 4.1.1 具有 Jersey 2.2

因此,结论是 Jersey 版本不匹配(使用 Jersey 1.8 编译,但 Glassfish 使用 Jersey 2.2)。因此,您会在运行时收到此异常。

可能的解决方案是更改代码以支持 jersey 2.2(当然也替换库)

关于java - 在glassfish中加载restful webapp时如何解决IllegalStateException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48443173/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com