Java Spring引导post参数作为数组获取空值 @PostMapping(值=(“/addMessage”)) 公共字符串addMessagePostPicture(@RequestParam(“picture”)多部分文件图片,映射模型,HttpServletRequest请求,@ModelAttribute MessageForm消息){ String[]contacts=request.getParameterValues(“contacts”); if(message.getContacts()==null){ System.out.println(“是”); message.setContact(联系人); } 公共类消息表单{ 私人字符串[]联系人; 公共字符串[]getContacts(){ 返回联系人; } public void setContact(字符串[]联系人){ 这个。联系人=联系人; } }

Java Spring引导post参数作为数组获取空值 @PostMapping(值=(“/addMessage”)) 公共字符串addMessagePostPicture(@RequestParam(“picture”)多部分文件图片,映射模型,HttpServletRequest请求,@ModelAttribute MessageForm消息){ String[]contacts=request.getParameterValues(“contacts”); if(message.getContacts()==null){ System.out.println(“是”); message.setContact(联系人); } 公共类消息表单{ 私人字符串[]联系人; 公共字符串[]getContacts(){ 返回联系人; } public void setContact(字符串[]联系人){ 这个。联系人=联系人; } },java,spring-boot,Java,Spring Boot,为什么message.getContacts值为空?名为contacts的请求参数 addMessage.html代码部分,获取联系人参数值的位置 @PostMapping(value=("/addMessage")) public String addMessagePostPicture(@RequestParam("picture") MultipartFile picture, Map<String, Object> model, HttpServletRequest requ

为什么message.getContacts值为空?名为contacts的请求参数

addMessage.html代码部分,获取联系人参数值的位置

@PostMapping(value=("/addMessage"))
public String addMessagePostPicture(@RequestParam("picture") MultipartFile picture, Map<String, Object> model, HttpServletRequest request, @ModelAttribute MessageForm message) {

String[] contacts = request.getParameterValues("contacts");
    if(message.getContacts() == null){
        System.out.println("yes");
        message.setContact(contacts);
    }


public class MessageForm {
    private String[] contacts;
    public String[] getContacts() {
        return contacts;
    }
    public void setContact(String[] contacts) {
        this.contacts = contacts;
    }
}

康塔克提德
* 
丽莎·康塔克
javascript在此添加的选项
萨尔维斯塔
javascript生成代码的示例

<form id="addMessageForm" class="form-horizontal" method="post" action="addMessage" enctype="multipart/form-data">
    <div class="form-group ">
        <label class="control-label col-sm-3 requiredField" for="contacts"> Kontaktid 
            <span class="asteriskField">* </span>
        </label>
        <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#addContactModal">Lisa kontakt</button>
        <div class="col-sm-9">
            <select id="contacts" name="contacts" multiple="multiple">
options added here by javascript
            </select>
        </div>
    </div>

    <div class="form-group">
        <div class="col-sm-9 col-sm-offset-3">
            <button class="btn btn-primary " name="submit" type="submit" th:text="#{save}"> Salvesta</button>
        </div>
    </div>
</form>

test@mail.ee
mail@mail.ee
isik@mail.ee

您必须向我们显示将数据提交给此控制器的jsp文件。在控制器中,您预期会收到一条
@modeldattribute MessageForm消息
,但在jsp表单中,您没有任何
MessageForm
提交给控制器,因此导致您的错误。我在这里这样做是为了从控制器发送MessageForm以查看d在那里使用了th:object和th:field,但仍然为null。
<select id="contacts" name="contacts" multiple="multiple">
    <option value="2">test@mail.ee</option>
    <option value="3">mail@mail.ee</option>
    <option value="4">isik@mail.ee</option>
</select>