java - 获取 FormDataParam 属性和特性

标签 java web-services forms post jersey

    @POST
    @Path("post")
    @Consumes("multipart/form-data")
    public Response postCategory(@FormDataParam("text1") String text1,
            @FormDataParam("file1") InputStream file1,
            @FormDataParam("text2") String text2,
            @FormDataParam("file2") InputStream file2) {
        System.out.println("CategoryService.postCategory()");
        System.out.println("text1:" + text1);
        System.out.println("text2:" + text2);

        String uploadedFileLocation = "d://uploaded/test.jpg";
        writeToFile(file1, uploadedFileLocation);

        return Response.ok().build();
    }

通过这段代码,我可以获得 HtmlInputFile 作为 InputStreamHtmlInputText 作为 String,但我想获得HtmlInputText 的其他属性,如 id、name、class 甚至更多:我的动态属性如下所示:

<input type='text' myattr='myattr-value' name='inpp'/>

最佳答案

提交表单时(根据 WC3 spec ),名称和值将发送到服务器。要获得其他值,我建议创建一些额外的隐藏输入。

<input type="hidden" name="valueOne" value="">
<input type="hidden" name="valueTwo" value="">

还有一些 javascript 在提交时设置这些字段。

<script>
    document.yourForm.elements["valueOne"].value = "someValue";
    document.yourForm.elements["valueTwo"].value = "someOtherValue";
</script>

<form name="yourForm" method="POST" onSubmit="setValues();">

但是您可能想问为什么 id 和类对表单提交很重要。这种类型的设计可能会将您的后端 Controller 与前端标记过于紧密地耦合在一起。这可能会导致一些问题。

关于java - 获取 FormDataParam 属性和特性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13788254/

相关文章:

java - 在生成的事件流值中找不到 Spring 的 SSEmitter 事件 "name"属性

java - Cipher.unwrap() key 长度 Sun - BouncyCaSTLe 兼容性

java - Java中接口(interface)和类之间的契约

rest - Goroutine 已经根据请求在 Go Web 服务器中启动,但客户端断开连接,Web 服务器是否可以关闭该特定的 goroutine?

Ruby 和 SOAP 创建 Web 服务代理和命名空间

javascript - 从 div 中选择文本并将其包含到电子邮件中

java - 对于这种情况我应该使用反射吗?

.net - 如何确保一次仅调用一次 asmx Web 服务?

html - 使用 SimpleForm 在 Dropdown 中有多个选项

c# - 在 WPF Windows 之间发送数据