SSH输入错误Action

news/2024/7/5 14:56:04

在类型转化、输入验证校验 、文件上传等出错的时候,如Action中某个变量是int,而上传的值是"ABC",此时Action不会执行execute()函数,而是直接返回result name="input",如果没有定义result name="input"跳转的Action,就会报错: 

No result defined for action com.xxx.action.XXXXAction and result input

 可以自己定义一个Action,遇到此类情况时返回自己定义的信息。

首先定义输入错误Action类:

@SuppressWarnings("serial")
public class InputErrorAction extends ActionSupport {    
    
    public String execute(){        
        int status;
        Map<String, Object> map = new HashMap<String, Object>();
        status = -1001;
        map.put("Status", status);
        map.put("Desc", "输入错误未通过验证");
        
        // 返回结果
        try{            
            ResUtil.toJson(ServletActionContext.getResponse(), map);
        }catch (IOException e){
            e.printStackTrace();
        }
        
        return null;
    }

}

在applicationContext.xml中为该类定义一个bean:

    <!-- 输入错误 -->
    <bean id="inputErrorAction" class="com.xkssh.action.InputErrorAction">
    </bean>

在struts中定义一个Action:

        <!-- 输入错误未通过验证 -->
        <action name="input_error" class="inputErrorAction">
        </action>

为其他Action定义result name="input"时跳转的Action:

        <action name="xkgwc_delete" class="xkgwcDeleteAction">
            <result name="success"/>
            <result name="input" type="redirectAction"> 
                <param name="actionName">input_error</param> 
            </result>
        </action>

这样,当发生输入错误时,就会返回自己定义的信息:


http://www.niftyadmin.cn/n/2643107.html

相关文章

java 基本数据的引用_Java 数据类型(基本数据类型、引用数据类型)

一. Java数据类型概览二. Java中八大基本数据类型类型名称类型定义取值范围boolean布尔值&#xff0c;作二元判断true, falsebyte8位有符号整数-128 ~ 127short16位有符号整数-32768 ~ 32767int32位有符号整数-2147483648(-231)~ 2147483647(231-1)long64位有符号整数-263~ (2…

两种方法实现python操作日志的封装

方法1 import loggingclass Log(object):def __init__(self, name__name__, pathmylog.log, levelDEBUG):self.__name nameself.__path pathself.__level levelself.__logger logging.getLogger(self.__name)self.__logger.setLevel(self.__level)def __ini_handler(self)…

在zend studio 中使用egit

2019独角兽企业重金招聘Python工程师标准>>> 一、egit插件安装 在这里复制需要安装的地址&#xff1a;http://www.eclipse.org/egit/download/ 比如http://download.eclipse.org/egit/updates/ windows->preferences->install/update->available software-…

java 生成tcp字节流头部_java通过TCP字节流传输和读取数据

java使用tcp协议时,客户端和服务端都有一个输入流和输出流.但是当需要通过这个流来传输多种信息的时候,比如传文件时先传文件名,再传文件内容,单从流本身来看是无法知道从流中读取多少字节是文件名,多少字节是文件内容.曾经试过在服务端传送文件名时,自己在后面加一个换行符\n,…

java基础流程控制语句_JAVA基础知识点梳理三:流程控制语句-Go语言中文社区

条件语句之 if语法&#xff1a;执行过程&#xff1a;例&#xff1a;int score 65;if (score > 60) {System.out.println("该学生及格");}//注&#xff1a;如果 if 条件成立时的执行语句只有一条&#xff0c;大括弧可以省略&#xff0c;但如果执行语句有多条&…

版本管理工具:linux下svn的基本使用

参考&#xff1a; linux下安装SVN    http://jingyan.baidu.com/article/3c343ff7039de20d37796306.html svn客户端使用linux篇 http://jeanlyn.sinaapp.com/svn_linux/ svn使用简介 1&#xff09;创建目录&#xff1a; mkdir /home/svn_hl_gg/ cd /home/svn_hl_gg/ 2&am…

CSS块级元素、内联元素

在css盒子模型中&#xff0c;我们提到了html元素中的块元素&#xff08;block element&#xff09;和内联元素&#xff08;inline element&#xff09;。那么它们究竟是什么呢&#xff1f; 其实&#xff0c;这两种元素都是html规范中的概念。块元素(block element)一般是其…

php discuzSQL注入_Discuz 7.2 /search.php SQL注入漏洞

在文件/include/search_sort.inc.php150行include_once DISCUZ_ROOT../forumdata/cache/threadsort_.$selectsortid..php;这个$selectsortid变量没有做过任何处理&#xff0c;而且最后进入到了170行的SQL语句$query $db->query("SELECT tid FROM {$tablepre}optionval…