我在我的Java類下面的代碼新澤西州的hello world給404
import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;
@Path("/hello")
public class Hello {
//This method is called is TEXT_PLAIN is request
@GET
@Produces(MediaType.TEXT_PLAIN)
public String sayPlainTextHello(){
return "Hello World";
}
//this method is called if TEXT_XML is requested
@GET
@Produces(MediaType.TEXT_XML)
public String sayXMLHello(){
return "<?xml version=\"1.0\"?>"+"<Hello> Hello World"+"</hello>";
}
//this method is called if HTML is requested
@GET
@Produces(MediaType.TEXT_HTML)
public String sayHtmlHello(){
return "<html>"+"<title>"+"hello jersey"+"</title>"+"<body><h1>"+"hello World!!"+"</body></h1>"+"</html>";
}
}
我編譯它,並出口它作爲一個.war文件,當我輸入
我得到了404。我試了它在WTP,捲曲他們都返回404 ..我使用的是tomcat 7.0.26
注:我在端口80上運行Tomcat,其他servlet按預期做出響應。
的web.xml配置
<display-name>Jersey_Test</display-name>
<servlet>
<servlet-name>Hello</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.example.service</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>Hello</servlet-name>
<url-pattern>/*</url-pattern>
下面的網址給我的HTTP狀態500
http://localhost/Jersey_Test/rest/hello
java.lang.ClassNotFoundException: com.sun.jersey.spi.container.servlet.ServletContainer
我收到以下錯誤'java.lang.ClassNotFoundException:com.sun.jersey.spi.container.servlet.ServletContainer'我的buildpath中有以下.jar文件'asm-3.1.jar,jersey- core-1.12.jar,jersey-server-1.12.jar,jersey servlet-1.12.jar和jsr311-api-1.11.jar'關於'web.xml'的另一個問題我一直在用書來學習servlet編程,它由budi kurniawan寫的一個新的。本書到目前爲止我還沒有遇到過編輯web.xml的問題,我曾經寫過,然後將它作爲'.war'文件導出並運行,所以我現在對web.xml的目的感到困惑。 – cyberbemon
使用當前'web.xml'更新的問題config – cyberbemon
要部署哪個servletcontainer? – BalusC