获取所有html表单参数名称&使用球衣的价值

时间:2011-09-13 18:50:30

标签: java jersey jax-rs

我有一个html表单,其中包含这样的元素

<input type="text" value="Val1" name="Name1"/>
<input type="text" value="Val2" name="Name2"/>
<input type="hidden" value="Val3" name="Name3"/>

在服务器端,我使用Jersey实现来捕获表单名称和值。有没有办法在像这样的单个地图中捕捉上述所有内容

Name1 ==&gt; VAL1 Name2 ==&gt; VAL2 Name3 ==&gt; VAL3

据我所知,使用@FormParam,我可以捕获变量中的表单值。但我需要捕获表单元素名称以及值。

感谢任何帮助。

2 个答案:

答案 0 :(得分:7)

为您的方法提供类型为MultivaluedMap<String,String>的参数。需要实现为此类型提供MessageBodyReader响应媒体类型application/x-www-form-urlencoded(规范的§4.2.4)。如下所示:

@POST
@Consumes("application/x-www-form-urlencoded")
public Response foo(MultivaluedMap<String, String> form) {
    ...
}

答案 1 :(得分:0)

仅供参考 - 您也可以使用com.sun.jersey.api.representation.Form而不是MultivaluedMap - 它本质上是相同的。