【发布时间】:2014-10-21 09:17:04
【问题描述】:
我正在使用Jersey Java Framework 将数据从 HTML 表单发送到 Java RESTful Web 服务。我需要知道以这种形式检查了哪些复选框(具有不同的名称和用途)。我已经在网络服务中尝试过:
package com.myexample;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import com.sun.jersey.multipart.FormDataParam;
@Path("/service")
public class MyService{
@POST
@Path("/formData")
@Produces(MediaType.TEXT_HTML)
@Consumes(MediaType.MULTIPART_FORM_DATA)
public String formData(@FormDataParam("myInputbox") String myInputbox, @FormDataParam("myCheckbox") String myCheckbox){
return "Now I get: <br/>Inputbox: " + myInputbox + "<br/>Checkbox: " + myCheckbox;
}
}
发送者表单是这样的:
<html>
<head>
<title>Send a checkbox</title>
</head>
<body>
<form method="post" action="http://localhost:8080/Example/rest/service/formData" enctype="multipart/form-data">
<input type="checkbox" name="myCheckbox">This is my checkbox
<input type="text" name="myInputbox" value=""/>
<input type="submit" value="Send data"/>
</form>
</body>
</html>
我可以成功获取输入文本中的值,但复选框名称返回空值。我只需要知道该复选框是否被选中。
(注意:我使用multipart/form-data,因为我也在最终版本中发送文件,所以我需要使用那个格式)
感谢您的帮助!
【问题讨论】:
标签: java html rest checkbox jersey