我的代码:
@Path("/NothificationListner")
public class NothificationListner {
@GET
@Consumes(MediaType.TEXT_PLAIN)
public String pojo() {
logger.info("[GET] REQUEST RECEIVED");
return "[GET] pojo ok @ " + new Date().toString();
}
}
我的Web.xml
<servlet>
<servlet-name>jersey</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>jersey</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>jersey</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
我将项目“myProg”导出为war文件到“C:\ apache-tomcat-8.0.37 \ webapps \” Tomcat启动没有错误。 Tomcat创建文件夹“myProg”,其中包含所有内容:
myProg
--META-INF
-MANIFEST.MF
-war-tracker
--WEB-INF
--classes/com/listner
NothificationListner .class
NothificationListner .java
--lib
"containts all libs for application"
web.xml
当我尝试调用时:localhost:8080 / myProg / NothificationListner 我得到404,请求的资源不可用。
答案 0 :(得分:1)
您应该列出资源类所在的软件包
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>jersey</param-value>
</init-param>
我不知道jersey
是什么,但是从您的帖子中,监听器位于com.listner
包中。如果您有其他包,可以用逗号或分号分隔它们