Glassfish 4使用Jersey2.x。您应该相应地更改依赖关系和web.xml配置。对于依赖项,您可以使用
<dependency> <groupId>org.glassfish.jersey.containers</groupId> <artifactId>jersey-container-servlet</artifactId> <version>${jersey2.version}</version> <scope>provided</scope></dependency>和配置
<servlet> <servlet-name>jersey-serlvet</servlet-name> <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class> <init-param> <param-name>jersey.config.server.provider.packages</param-name> <param-value>com.wld.rest</param-value> </init-param> <load-on-startup>1</load-on-startup></servlet><servlet-mapping> <servlet-name>jersey-serlvet</servlet-name> <url-pattern>/api/*</url-pattern></servlet-mapping>
最近很多人(正在使用Glassfish和Jersey的人)看到的一个“陷阱”是,Glassfish使用了较旧版本的Jersey(在较早的2.x版本中是旧的)。到目前为止,最新的是2.17。Glassfish使用的版本接近2.x系列中的第一个版本。因此,新功能似乎存在一些兼容性问题。
我绝对会关注的一件事是在GlassFish 4中更新Jersey
2。这是一篇很好的文章。简单的启动应用程序可能不会有任何问题,但是具有新功能,尝试在Glassfish中升级Jersey可能会有所帮助。
另一件事,请记住摆脱您的Jersey
1.x依赖项。两者是完全不兼容的。还要注意
providedMaven依赖项中的作用域。由于Glassfish已经内置了Jersey,因此我们仅使用内部依赖项。
Jersey
2.x文档也是方便使用的一件好事
哦,还有另一件事。泽西岛的原型可以帮助您轻松入门。在Netbeans中
- 新项目
- Maven→来自原型的项目
- 搜索
jersey-quickstart-webapp
- 选择一个具有组ID的
org.glassfish.jersey.archetypes
- 应该显示最新版本。



