Java 在glassfish中加载restful webapp时如何解决IllegalStateException?
我正在尝试使用创建一个基本的Hello world应用程序 我已按要求创建了所有内容,但我发现以下错误: 加载应用程序时出现异常: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 我的Java 在glassfish中加载restful webapp时如何解决IllegalStateException?,java,rest,jersey,glassfish-4,Java,Rest,Jersey,Glassfish 4,我正在尝试使用创建一个基本的Hello world应用程序 我已按要求创建了所有内容,但我发现以下错误: 加载应用程序时出现异常:java.lang.IllegalStateException:ContainerBase.addChild:start:org.apache.catalina.LifecycleException:org.apache.catalina.LifecycleException:java.lang.NoSuchMethodError:com.sun.research.w
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>
Restful Web应用程序
泽西塞尔维特酒店
com.sun.jersey.spi.container.servlet.ServletContainer
com.sun.jersey.config.property.packages
通用域名格式
1.
泽西塞尔维特酒店
/休息/*
如果类的定义发生了不兼容的更改,则只有在运行时才会发生错误
我可以看到,您已经使用Jersey 1.8
编译了代码,并在Glassfish 4.1.1
上部署了您的webapp
而且,根据oracle的其中一个,Glassfish 4.1.1
拥有Jersey 2.2
因此,这意味着jersey版本不匹配(使用jersey 1.8
编译,但Glassfish使用jersey 2.2
)。因此,您在运行时会遇到此异常
可能的解决方案是将代码更改为支持jersey 2.2(当然也要替换库)如果类的定义发生了不兼容的更改,则只有在运行时才会发生错误
我可以看到,您已经使用Jersey 1.8
编译了代码,并在Glassfish 4.1.1
上部署了您的webapp
而且,根据oracle的其中一个,Glassfish 4.1.1
拥有Jersey 2.2
因此,这意味着jersey版本不匹配(使用jersey 1.8
编译,但Glassfish使用jersey 2.2
)。因此,您在运行时会遇到此异常
可能的解决方案是更改代码以支持jersey 2.2
(当然也要替换库)