zoukankan      html  css  js  c++  java
  • No result defined for action的一个原因

    No result defined for action com.tazi.action.SomeAction and result input - action - file:/D:/MyEclipse_Workspaces/XXX/WebRoot/WEB-INF/classes/struts-omc.xml:383:69

    我碰到的这个问题的原因是:

    Action的参数填充时出了问题。

    比如我有一个参数是Integer类型的(名称为state),但客户端传过来的是一个不能转换为Integer的字符串,比如"hello"。

    我当时前台使用了Ext Js的FormPanel(对象名为myForm),其中有一个name为state的ComboBox(值为1,2,3,对应的显示值为"success","fail","unknown").但由于某些特殊的需要,我不得不使用FormPanel的原始表单提交方式,即使用这个myForm.form.submit()方法:

    myForm.form.el.dom.action='SomeAction!exportReport.action';
    myForm.form.el.dom.target="exportFrame";   //这里target可以是"_blank"等也可以是某一个iframe的名称,因为我这边是要导出Excel,所以在页面里嵌入了iframe.
    myForm.form.submit();

    提交表单时,传到Action里的state的值其实是"success","fail","unknown"中的一个,因为原始的表单提交方式是不会对ComboBox进行值转换的。所以就报错了。

    解决办法是:

    去掉state对应的ComboBox的name属性。同时在FormPanel中增加一个{xtype:'hidden',name:'state'}这样的表单域,并

    form.form.findField('state').setValue(stateComboBox.getValue());

    就ok了。

  • 相关阅读:
    正则表达式
    request库解析
    urllib库解析
    爬虫入门基本原理
    图的遍历dfs和bfs
    KMP算法
    Linux操作系统实验-线程同步
    Leetcode 183场周赛
    并查集--Disjoint Set
    C#杂乱知识汇总
  • 原文地址:https://www.cnblogs.com/tazi/p/2955111.html
Copyright © 2011-2022 走看看