【发布时间】:2013-07-22 00:24:45
【问题描述】:
我正在尝试从 html 表单调用用 java 编写的 rest web 服务
我的网络服务代码是
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
@Path("/hello")
public class Hello {
@POST
@Path("/hello")
@Consumes(MediaType.TEXT_HTML)
@Produces(MediaType.TEXT_HTML)
public String hello( @FormParam("username") String name1) {
return "<html> " + "<title>" + "Hello Jersey" + "</title>"
+ "<body><h1>" + "Hello from helpdesk" + "</body></h1>" + "</html> ";
}
}
我的html页面是
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form action= "http://localhost:8080/helpdesk/rest/hello" method="POST">
Username: <input type="text" name="username">
<p>
<input type="submit" value="Submit">
</form>
</body>
</html>
在 html 表单中,我调用了 Web 服务 ../rest/hello。 我参考了http://www.vogella.com/articles/REST/的示例
谁能告诉我怎么做?
谢谢
【问题讨论】:
-
您可以尝试将用户名: 更改为用户名: 看看是否有效跨度>
-
@Satya,试过了。但没有变化。实际上点击提交按钮后,浏览器中的 url 没有变化,例如 .../first.jsp?name=xxx 的东西
-
您的应用服务器运行正常吗?
-
是的,我使用的是 tomcat 7。当我将 Web 服务作为独立应用程序运行时,不带参数(删除 @param 和所有),xx.xx.xx.xx:8080/helpdesk/rest/hello ,然后我得到回复作为我在 Web 服务代码中返回的 html 页面
-
得到它改变 到 因为您的表单没有被提交