Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
请求处理失败;嵌套的异常是java.lang.NumberFormatException:对于输入字符串:"&引用;_Java_Jsp_Spring Mvc_Annotations_Spring Data Mongodb - Fatal编程技术网

请求处理失败;嵌套的异常是java.lang.NumberFormatException:对于输入字符串:"&引用;

请求处理失败;嵌套的异常是java.lang.NumberFormatException:对于输入字符串:"&引用;,java,jsp,spring-mvc,annotations,spring-data-mongodb,Java,Jsp,Spring Mvc,Annotations,Spring Data Mongodb,org.springframework.web.util.NestedServletException:请求处理失败;嵌套异常为java.lang.NumberFormatException:用于输入字符串:“” 我正在尝试只使用注释、java、JSP、spring数据、spring mvc和mongo db构建一个web应用程序 我的工作基本正常,但是当我试图创建一个包含多个选择列表的JSP表单时,出现了标题错误 我正在尝试创建一个代理对象并将其保存到mongodb数据库。多选框将传回选定对象

org.springframework.web.util.NestedServletException:请求处理失败;嵌套异常为java.lang.NumberFormatException:用于输入字符串:“”

我正在尝试只使用注释、java、JSP、spring数据、spring mvc和mongo db构建一个web应用程序

我的工作基本正常,但是当我试图创建一个包含多个选择列表的JSP表单时,出现了标题错误

我正在尝试创建一个代理对象并将其保存到mongodb数据库。多选框将传回选定对象的字符串ID。代理对象具有需要使用多选列表填充的列表

以下是chrome开发工具的响应数据:

id: name:Test1 type:MOB
attributeList[]:687a1964-4179-4631-832b-e23b34300840
personalityTraitList[]:8b321f3c-6398-4bc4-afc6-e6c7e4a6a3e3
skillList[]:53090226-0f54-4121-90c0-4d3a188aa5f8
triggerList[]:923048ef-7a4d-42e3-8691-2d2e9603e79b
behaviorTreeList[]:84966b7a-fb53-4f64-be2a-203ae3743250
下面是第一个多选框的html。他们都一样

<td align="left">
    <select size="10" id="selectedAttributes" multiple="multiple" name="attributeList[${attribute.id}]" style="width: 130px;"></select>
</td>
如果要保存代理时ID字段为空,代理服务将创建一个随机UUID

以下是堆栈跟踪:

java.lang.NumberFormatException:用于输入字符串:“” forInputString(NumberFormatException.java:65) java.lang.Integer.parseInt(Integer.java:504) java.lang.Integer.parseInt(Integer.java:527) org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:969) org.springframework.beans.BeanWrapperImpl.setPropertyValue(BeanWrapperImpl.java:902) org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:75) org.springframework.validation.DataBinder.applyPropertyValues(DataBinder.java:740) org.springframework.validation.DataBinder.doBind(DataBinder.java:636) org.springframework.web.bind.WebDataBinder.doBind(WebDataBinder.java:191) org.springframework.web.bind.ServletRequestDataBinder.bind(ServletRequestDataBinder.java:112) org.springframework.web.servlet.mvc.method.annotation.ServletModelAttributeMethodProcessor.bindRequestParameters(ServletModelAttributeMethodProcessor.java:153) org.springframework.web.method.annotation.ModelAttributeMethodProcessor.resolveArgument(ModelAttributeMethodProcessor.java:106) org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument(HandlerMethodArgumentResolverComposite.java:77) org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues(InvocableHandlerMethod.java:162) org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:123) org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:745) org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:686) org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:925) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:936) org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:838) javaservlet.http.HttpServlet.service(HttpServlet.java:647) org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:812) javaservlet.http.HttpServlet.service(HttpServlet.java:728)

我试着创建一个自定义数据绑定器,但没有用

有人能告诉我做这些事情的正确方法吗?这是我第一次尝试自己制作一个网络应用

以下是代理类:

@Document(collection = "AgentCollection")
public class Agent 
{
@Id
private String _id;

private String _name;
private String _type;
private ArrayList<String> _actionList;
private ArrayList<String> _attributeList;
private ArrayList<String> _behaviorTreeList;
private ArrayList<String> _itemList;
private ArrayList<String> _personalityTraitList;
private ArrayList<String> _skillList;
private ArrayList<String> _triggerList;


public String getId() 
{
    return _id;
}


public void setId(String id) 
{
    _id = id;
}


public String getName() 
{
    return _name;
}


public void setName(String name)
{
    _name = name;
}


public String getType() 
{
    return _type;
}


public void setType(String type)
{
    _type = type;
}


public ArrayList<String> getAttributeList()
{
    return _attributeList;
}


public void setAttributeList(final ArrayList<String> attributeList)
{
    _attributeList = attributeList;
}


public ArrayList<String> getPresonalityTraitList()
{
    return _personalityTraitList;
}


public void setPersonalityTraitList(final ArrayList<String> personalityTraitList)
{
    _personalityTraitList = personalityTraitList;
}


public ArrayList<String> getSkillList()
{
    return _skillList;
}


public void setSkillList(final ArrayList<String> skillList)
{
    _skillList = skillList;
}


public ArrayList<String> getActionList()
{
    return _actionList;
}


public void setActionList(final ArrayList<String> actionList)
{
    _actionList = actionList;
}


public ArrayList<String> getTriggerList()
{
    return _triggerList;
}


public void setTriggerList(final ArrayList<String> triggerList)
{
    _triggerList = triggerList;
}


public ArrayList<String> getItemList()
{
    return _itemList;
}


public void setItemList(final ArrayList<String> itemList)
{
    _itemList = itemList;
}


public ArrayList<String> getBehaviorTreeList()
{
    return _behaviorTreeList;
}


public void setBehaviorTreeList(final ArrayList<String> behaviorTreeList)
{
    _behaviorTreeList = behaviorTreeList;
}
}
@文档(collection=“AgentCollection”)
公共类代理
{
@身份证
私有字符串_id;
私有字符串\u名称;
私有字符串_类型;
private ArrayList_actionList;
私人ArrayList_attributeList;
私人ArrayList(行为主义者);
私有ArrayList_itemList;
私人阵列列表(personalityTraitList);;
私人ArrayList_skillList;
私有ArrayList\u triggerList;
公共字符串getId()
{
返回_id;
}
公共无效集合id(字符串id)
{
_id=id;
}
公共字符串getName()
{
返回_name;
}
公共void集合名(字符串名)
{
_名称=名称;
}
公共字符串getType()
{
返回型;
}
公共void集合类型(字符串类型)
{
_类型=类型;
}
公共数组列表getAttributeList()
{
返回属性列表;
}
public void setAttributeList(最终ArrayList attributeList)
{
_属性列表=属性列表;
}
公共数组列表GetPresonaltTraitList()
{
return_personalityTraitList;
}
public void setPersonalityTraitList(最终ArrayList personalityTraitList)
{
_personalityTraitList=personalityTraitList;
}
公共ArrayList getSkillList()
{
返回技能列表;
}
公共无效集合技能列表(最终ArrayList技能列表)
{
_skillList=skillList;
}
公共阵列列表getActionList()
{
返回操作列表;
}
公共作废setActionList(最终ArrayList actionList)
{
_actionList=actionList;
}
公共数组列表getTriggerList()
{
返回触发列表;
}
公共无效setTriggerList(最终ArrayList triggerList)
{
_triggerList=triggerList;
}
公共ArrayList getItemList()
{
返回项目列表;
}
公共无效setItemList(最终ArrayList itemList)
{
_itemList=itemList;
}
公共数组列表GetBehaviorTreelList()
{
返回行为主义者;
}
公共无效挫折行为卷轴列表(最终阵列列表行为卷轴列表)
{
_行为主义者=行为主义者;
}
}
谢谢,
马特

弹簧不能处理空的方形支架。总结一下,你可以使用

  • ?myarray[0]=aa&myarray[1]=bb
  • ?myarray=aa和myarray=bb
  • @Document(collection = "AgentCollection")
    public class Agent 
    {
    @Id
    private String _id;
    
    private String _name;
    private String _type;
    private ArrayList<String> _actionList;
    private ArrayList<String> _attributeList;
    private ArrayList<String> _behaviorTreeList;
    private ArrayList<String> _itemList;
    private ArrayList<String> _personalityTraitList;
    private ArrayList<String> _skillList;
    private ArrayList<String> _triggerList;
    
    
    public String getId() 
    {
        return _id;
    }
    
    
    public void setId(String id) 
    {
        _id = id;
    }
    
    
    public String getName() 
    {
        return _name;
    }
    
    
    public void setName(String name)
    {
        _name = name;
    }
    
    
    public String getType() 
    {
        return _type;
    }
    
    
    public void setType(String type)
    {
        _type = type;
    }
    
    
    public ArrayList<String> getAttributeList()
    {
        return _attributeList;
    }
    
    
    public void setAttributeList(final ArrayList<String> attributeList)
    {
        _attributeList = attributeList;
    }
    
    
    public ArrayList<String> getPresonalityTraitList()
    {
        return _personalityTraitList;
    }
    
    
    public void setPersonalityTraitList(final ArrayList<String> personalityTraitList)
    {
        _personalityTraitList = personalityTraitList;
    }
    
    
    public ArrayList<String> getSkillList()
    {
        return _skillList;
    }
    
    
    public void setSkillList(final ArrayList<String> skillList)
    {
        _skillList = skillList;
    }
    
    
    public ArrayList<String> getActionList()
    {
        return _actionList;
    }
    
    
    public void setActionList(final ArrayList<String> actionList)
    {
        _actionList = actionList;
    }
    
    
    public ArrayList<String> getTriggerList()
    {
        return _triggerList;
    }
    
    
    public void setTriggerList(final ArrayList<String> triggerList)
    {
        _triggerList = triggerList;
    }
    
    
    public ArrayList<String> getItemList()
    {
        return _itemList;
    }
    
    
    public void setItemList(final ArrayList<String> itemList)
    {
        _itemList = itemList;
    }
    
    
    public ArrayList<String> getBehaviorTreeList()
    {
        return _behaviorTreeList;
    }
    
    
    public void setBehaviorTreeList(final ArrayList<String> behaviorTreeList)
    {
        _behaviorTreeList = behaviorTreeList;
    }
    }