zoukankan      html  css  js  c++  java
  • <s:submit> 指定的method方法不执行

    很多文章在讲一个表单多个提交方法的时候都是在<s:submit>中通过method来指定,但是我在试验中怎么也不对,jsp页面代码如下

    <%@page import="org.apache.naming.java.javaURLContextFactory"%>
    <%@ page language="java" contentType="text/html; charset=GB18030"
        pageEncoding="GB18030"%>
    <%@taglib prefix="s" uri="/struts-tags" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=GB18030">
    <title>输入操作数</title>
    </head>
    <body>
    <!-- 提交请求参数的表单 -->
    <s:form action="submit" namespace="/test2">
    <font color='red'>
    <s:property value="message"/></font>
    输入内容<s:textfield name="msg"/>
    <s:submit name="save" value="保存" align="left" method="save"/>
    <s:submit name="print" value="打印" align="left" method="print"/>
    </s:form>
    </body>
    </html>
    

     struts.xml文件如下:

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
        "http://struts.apache.org/dtds/struts-2.3.dtd">
    <struts>  
        <package name="p2"  namespace="/test2" extends="struts-default" >
            <action name="submit" class="action.MoreSubmitAction" >
            <!-- method 屬性的默認值是execute方法 -->
                <result name="save">/test2/result.jsp</result>
                <result name="print">/test2/result.jsp</result>
            </action>
        </package>
    </struts>

    每次提交都提示找不到execute方法,也就是说设置的method方法无效。

    解决方法:

    struts2版本是2.3的,需要在struts.xml中加入

    <constant name="struts.enable.DynamicMethodInvocation" value="true" />

    新的struts2.xml如下:

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
        "http://struts.apache.org/dtds/struts-2.3.dtd">
    <struts>  
      <constant name="struts.enable.DynamicMethodInvocation" value="true" />  <package name="p2" namespace="/test2" extends="struts-default" > <action name="submit" class="action.MoreSubmitAction" > <!-- method 屬性的默認值是execute方法 --> <result name="save">/test2/result.jsp</result> <result name="print">/test2/result.jsp</result> </action> </package> </struts>
  • 相关阅读:
    Android 四大组件 (二) Service 使用
    使用fiddler抓手机端http数据包
    解决问题:保存图片到本地文件夹后,在图库里看不到保存的图片问题。
    Android 四大组件 (一) Activity 生命周期
    第二次裸辞_潜伏期_一些感想
    最近的一些感想(关于移动客户端开发android,ios)
    错误:类型 'System.Object' 未定义或者不能引入项目
    easyui换主题,并记录在cookie.以及cookie作用域介绍
    VS发布报错 "未能将文件……复制到……"
    VS2013修改模板,增加类文件的头注释
  • 原文地址:https://www.cnblogs.com/anan1688/p/4481053.html
Copyright © 2011-2022 走看看