作者sheuredsox (sheu46)
看板java
标题[问题] Restful问题
时间Thu Mar 28 18:39:28 2013
各位大大好:
最近因为专题需要正在练习Restful,
并且也成功写出程式,
可以在Eclipse上藉由Tomcat当作server跑,
也可以透过browser连到网页,
然後透过别台电脑也能连到我写的程式,
也都有成功秀出我要的结果,
但是当我从eclipse关掉Tomcat Server,
并且将档案布署到Tomcat後,
然後再连上网页,
可是却出现404的错误讯息。
不知道各位大大知道这是什麽问题吗??
以下是我的code:
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import javax.ws.rs.FormParam;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Response;
@Path("/GPS")
public class serverTest {
@POST
@Produces("text/plain")
public Response doPostMessage(@FormParam("longitude") String
x,@FormParam("latitude") String y) throws IOException {
try {
String filePath = "test.txt";
FileOutputStream fileOutputStream = new FileOutputStream(filePath);
OutputStreamWriter outputStreamWriter = new
OutputStreamWriter(fileOutputStream);
outputStreamWriter.write(x + "," + y);
outputStreamWriter.close();
} catch (Exception e) {
e.printStackTrace();
}
return Response.status(200).entity(x + "," + y).build();
//return x + " ," + y;
}
@GET
@Produces("text/plain")
public String getClichedMessage() {
return "This is Get";
}
}
然後以下是web.xml的code:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
xmlns="
http://java.sun.com/xml/ns/javaee"
xmlns:web="
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="
http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID"
version="3.0">
<display-name>HelloGPS</display-name>
<servlet>
<servlet-name>Jersey Web Application</servlet-name>
<servlet-class>
com.sun.jersey.spi.container.servlet.ServletContainer
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Jersey Web Application</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
</web-app>
我输入的网址:我的IP/gpsTest/GPS
再麻烦各位大大了~~
谢谢~~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 122.118.25.195
1F:推 PsMonkey:你都说在 Eclipse 上没问题了,那就不是程式码问题 03/28 18:47
2F:→ PsMonkey:po 程式码只是增加版规动用机会 Orz,重点是你没讲你怎麽 03/28 18:47
3F:→ sheuredsox:那为何单独用Tomcat run 不行~~?? 03/28 18:47
4F:→ PsMonkey:作 deploy 的动作,档案直接 copy? 汇出 war丢过去? 03/28 18:48
5F:→ sheuredsox:我两个都有试过~不过结果都一样不行 03/28 18:49
6F:→ sheuredsox:结果我将<url-pattern>里改成rest/*就可以用了 03/28 19:20
7F:→ sheuredsox:谢谢您~ 03/28 19:21
8F:推 abola921:servlet-mapping中设定<url-pattern>/*</url-pattern> 03/29 16:51
9F:→ abola921:我的理解是,所有的动作都会转给JerseyServlet 03/29 16:52
10F:→ abola921:这设定有点怪,而404应该只是你restful网址没打对 03/29 16:55