Java 无法从SpringMVCPortlet的视图中检索模型属性

Java 无法从SpringMVCPortlet的视图中检索模型属性,java,spring-mvc,model,liferay-6,spring-portlet-mvc,Java,Spring Mvc,Model,Liferay 6,Spring Portlet Mvc,这是SpringMVCPortlet的一部分,我们试图从控制器的视图层检索模型属性,但它显示为null。 我们尝试对bean名称使用modeldattribute以及commandName,并使用路径名对应bean属性的表单输入字段 查看jsp 豆类 public类Employee实现了可比较、可序列化的{ /** * */ 私有静态最终长serialVersionUID=1L; 私人长empId; 私有字符串名称; 私家弦级; 公共长getEmpId(){ 返回empId; } 公职人员()

这是SpringMVCPortlet的一部分,我们试图从控制器的视图层检索模型属性,但它显示为null。 我们尝试对bean名称使用
modeldattribute
以及
commandName
,并使用路径名对应bean属性的表单输入字段

查看jsp

豆类

public类Employee实现了可比较、可序列化的{
/**
* 
*/
私有静态最终长serialVersionUID=1L;
私人长empId;
私有字符串名称;
私家弦级;
公共长getEmpId(){
返回empId;
}
公职人员(){
超级();
//TODO自动生成的构造函数存根
}
公共无效setEmpId(长empId){
this.empId=empId;
}
公共字符串getEmpName(){
返回empName;
}
public void setEmpName(字符串empName){
this.empName=empName;
}
公共字符串getGrade(){
返回等级;
}
公共坡率(字符串坡率){
这个。等级=等级;
}
@凌驾
公共内部比较(员工o){
return(int)(this.getEmpId()-o.getEmpId());
}
}
使现代化
已将此URL用于操作URL:


任何关于可能缺少的内容的线索都会有帮助吗?请对所需的任何进一步详细信息进行评论。

尝试根据需要修改控制器方法

  • 添加url
    @ActionMapping(value=“/someUrl”)
  • 尝试使用
    BindingResult

    @ActionMapping(value="/someUrl")
    public void createEmp(@ModelAttribute("empBean") Employee emp, BindingResult bindingResult,ActionRequest req,ActionResponse res)
    {
        for( FieldError fieldError : bindingResult.getFieldErrors() )
            System.out.println(fieldError.getField() +" : "+fieldError.getDefaultMessage());
        System.out.println("------------->"+emp);
    }
    
  • 更新:- 尝试将URL创建为

    <portlet:actionURL var="createEmpURL" name="createEmp" escapeXml="false">
    </portlet:actionURL>
    
    
    
    从此链接更新2

    你好
    我在liferay-portlet.xml文件中使用了以下标记,并成功地工作了

    false
    
    liferay-portlet.xml,如下所示

    <portlet>
        <portlet-name>welcome</portlet-name>
        <requires-namespaced-parameters>false</requires-namespaced-parameters>
    </portlet>
    
    
    欢迎
    错误的
    

    希望这对您有所帮助……

    您有什么错误吗?您映射的url是什么?@shantaram\t本身没有错误。我正在将表单映射到操作url。将更新问题我已尝试bindingResult.getFieldErrors()但它是空的关于操作url的内容是什么?在问题中更新问题仍然存在。已达到正确的控制器方法,因此,我不认为url应该是服务器控制台上的问题!
    @ActionMapping(value="/someUrl")
    public void createEmp(@ModelAttribute("empBean") Employee emp, BindingResult bindingResult,ActionRequest req,ActionResponse res)
    {
        for( FieldError fieldError : bindingResult.getFieldErrors() )
            System.out.println(fieldError.getField() +" : "+fieldError.getDefaultMessage());
        System.out.println("------------->"+emp);
    }
    
    <portlet:actionURL var="createEmpURL" name="createEmp" escapeXml="false">
    </portlet:actionURL>
    
    <requires-namespaced-parameters>false</requires-namespaced-parameters>
    
    <portlet>
        <portlet-name>welcome</portlet-name>
        <requires-namespaced-parameters>false</requires-namespaced-parameters>
    </portlet>