code-behind在struts2里有两种表现形式:
1.Default mappings (默认映射):其实就是访问那些没有配置过Action的JSP页面,也能像访问Action那样访问。
比如说在项目${root}/leo/a.jsp 有这么一个a.jsp.
我可以在地址栏里输入:http://localhost:8080/项目名称/leo/a.action 来访问这个 a.jsp
效果与 http://localhost:8080/项目名称/leo/a.jsp是一样的。类似于咱们在welcome-file 那里定义的index,
这就是默认映射。
2.Default results (默认结果):其实就是无须显示的在struts-*.xml里配置那些返回 jsp, vm. ftl视图的Action。
比如说,我有一个以下配置文件, 没有result.
<package name="code" extends="struts-default" namespace="/code">
<action name="leo" class="code.LeoAction" />
</package>
Action文件是这样的:
package code;
import com.opensymphony.xwork2.ActionSupport;
public class LeoAction extends ActionSupport {
private static final long serialVersionUID = 1L;
private String flag = "";
public String getFlag() {
return flag;
}
public void setFlag(String flag) {
this.flag = flag;
}
public String execute() {
if (flag == null || flag.equals("")) {
this.addActionMessage("input message");
return INPUT;
} else if (flag != null && flag.equals("error")) {
this.addActionError("error happen");
return ERROR;
} else {
this.addActionMessage("I am leo");
return SUCCESS;
}
}
}
故意设置了一个 flag 来查看结果。 通过,http://localhost:8080/项目名称/leo/leo.action?flag=测试值
你会发现,
INPUT 对应 http://localhost:8080/项目名称/leo/leo-input.jsp
ERROR 对应 http://localhost:8080/项目名称/leo/leo-error.jsp
SUCCESS 对应 http://localhost:8080/项目名称/leo/leo-success.jsp
这就是默认结果的意思。
下面是codebehind的path示例:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="false" />
<constant name="struts.i18n.encoding" value="UTF-8" />
<constant name="struts.action.extension" value="html" />
<constant name="struts.objectFactory" value="spring" />
<constant name="struts.custom.i18n.resources"
value="ApplicationResources,errors" />
<constant name="struts.multipart.maxSize" value="2097152" />
<constant name="struts.ui.theme" value="css_xhtml" />
<constant name="struts.codebehind.pathPrefix"
value="/WEB-INF/pages/" />
<!-- Include Struts defaults -->
<include file="struts-default.xml" />
<!-- Configuration for the default package. -->
<package name="default" extends="struts-default">
<default-interceptor-ref name="defaultStack" />
<!-- DashBoard-->
<action name="dashBoard" method="showDashBoard"
class="com.flips.action.DashBoard">
<result name="success">dashBoard.jsp</result>
<interceptor-ref name="basicStack"/>
</action>
<action name="showRule" method="showRule"
class="com.flips.action.RuleImpl">
<result name="success">ruleList.jsp</result>
<interceptor-ref name="basicStack"/>
</action>
</package>
</struts>
分享到:
相关推荐
struts2-core-2.0.1.jar, struts2-core-2.0.11.1.jar, struts2-core-2.0.11.2.jar, struts2-core-2.0.11.jar, struts2-core-2.0.12.jar, struts2-core-2.0.14.jar, struts2-core-2.0.5.jar, struts2-core-2.0.6.jar,...
赠送jar包:struts2-json-plugin-2.3.24.jar; 赠送原API文档:struts2-json-plugin-2.3.24-javadoc.jar; 赠送源代码:struts2-json-plugin-2.3.24-sources.jar; 赠送Maven依赖信息文件:struts2-json-plugin-...
-- 为修复struts2 s2-016、s2-017漏洞,重写DefaultActionMapper --> <bean type="org.apache.struts2.dispatcher.mapper.ActionMapper" name="myDefaultActionMapper" class=...
struts2-spring-plugin-2.3.15.2.jar ; struts2-json-plugin-2.3.16.3.jarstruts2-spring-plugin-2.3.15.2.jar ; struts2-json-plugin-2.3.16.3.jar
2017年7月7日,Apache Struts发布最新的安全公告,Apache Struts2-strus1-plugin插件存在远程代码执行的高危漏洞,漏洞编号为CVE-2017-9791(S2-048),主要受影响的Struts版本为:2.3.x。 攻击者可以构造恶意的字段值...
struts2-ssl-plugin-1.2.1.jar
`struts2-json-plugin-2.1.8.1.jar` 则是Struts 2框架的一个插件,主要用于增强Struts 2对JSON的支持。Struts 2是一款非常流行的MVC(Model-View-Controller)框架,用于构建企业级的Java Web应用程序。这个插件允许...
struts2-config-browser-plugin-2.3.24.jar, struts2-core-2.3.24.jar, struts2-jasperreports-plugin-2.3.24.jar, struts2-jfreechart-plugin-2.3.24.jar, struts2-pell-multipart-plugin-2.3.24.jar, struts2-...
【Struts2】〖所有依赖jar包〗struts-2.3.37-lib 我寻见一片海 碧蓝且耀着光 大片船只航行其上 都向着远方 Shared by Foriver_江河 © 1997-8023 江河 All Rights Reserved.
struts2-json-plugin,Struts JSON插件
Struts2 S2-029 远程代码执行漏洞初探 Struts2 是一个基于 Java 的 Web 框架,使用 OGNL 表达式来访问 ActionContext 中的对象数据。在 Struts2 中,标签库使用 OGNL 表达式来获取对象数据,例如 `...
struts-spring-other-lib 等jar包struts-spring-other-lib 等jar包struts-spring-other-lib 等jar包struts-spring-other-lib 等jar包struts-spring-other-lib 等jar包struts-spring-other-lib 等jar包struts-spring-...
struts2-bean-validation-plugin-2.5.2.jar, struts2-cdi-plugin-2.5.2.jar, struts2-config-browser-plugin-2.5.2.jar, struts2-convention-plugin-2.5.2.jar, struts2-core-2.5.2.jar, struts2-dwr-plugin-2.5.2....
包含Struts2框架的核心类库,以及Struts2的第三方插件类库 struts2-core-2.0.14 xwork-2.0.7 ognl-2.6.11 commons-logging-1.0.4 freemarker-2.3.8 等等。
struts2-struts1-plugin-2.1.6.jar
首先,我们来看`struts-json-plugin-2.1.8.jar`,这是Struts2的JSON插件,它允许Struts2的动作类直接返回JSON格式的数据,方便前端进行Ajax请求处理。该插件在2.1.8版本中修复了若干bug,并提供了对JSON输出的支持。...
包含struts2-core-2.5.10.1.jar,struts2-jfreechart-plugin-2.5.10.1.jar,struts2-json-plugin-2.5.10.1.jar,struts2-junit-plugin-2.5.10.1.jar,struts2-bean-validation-plugin-2.5.10.1.jar,struts2-cdi-...
Struts2-dojo-plugin-2.2.1.jar 是一个针对Apache Struts2框架的扩展插件,主要用于增强Struts2应用的用户界面交互性,特别是通过集成Dojo JavaScript库来提供丰富的AJAX功能和用户体验。这个插件是Struts2与Dojo ...
struts2-jquery-plugin-3.1.0.jar
`struts-2.5.22-all`这个压缩包名称暗示了它包含了Struts2框架的所有组成部分,可能包括: 1. `struts2-core.jar`:核心框架,提供基础的MVC功能。 2. `struts2-convention-plugin.jar`:约定优于配置的插件,使得...