`

struts 设置默认 action

阅读更多

struts 如何设置默认action呢?

我要达到的目的是:访问不存在的action时自动跳转到默认的action

在struts.xml中添加:

 

<!-- 404页面 -->
		<default-action-ref name="notFound" />
<action name="notFound" class="com.common.action.error.NotFoundErrerAction">
			<result name="success">/error/not_found.jsp</result>
		</action>

 效果如下:

 action  aaa/xxx.action 不存在,所以自动跳转到了notFound.

 

 

但是现在有一个问题,如果我的url是http://localhost:8082/shop_goods/acc 时,界面如下:

 这是为什么呢?

我检查我的web.xml发现struts 过滤器配置如下:

<filter>

    <filter-name>struts2</filter-name>

    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>

  </filter>

  <filter-mapping>

    <filter-name>struts2</filter-name>

    <url-pattern>*.action</url-pattern>

  </filter-mapping>

 

所以struts只会处理url后缀名为action的,比如xxx.action,abc.action.

解决方法:struts 过滤器配置改为:

 

<filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>
<filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

 

 

修改之后的效果:

 

 

如果struts过滤器非要使用*.action呢?

那么需要在web.xml中添加:

 

<error-page>
            <error-code>404</error-code>
            <location>/error/not_found.jsp</location>
        </error-page>

 这样,访问http://localhost:8082/shop_goods/acc 也会自动跳转到/error/not_found.jsp

 

注意:上述页面(/error/not_found.jsp)不能有struts 标签

 

 

  • 大小: 45.4 KB
  • 大小: 52.8 KB
  • 大小: 45.4 KB
  • 大小: 43.9 KB
分享到:
评论

相关推荐

    struts2.0之action

    Struts2.0是Java Web开发中的一个框架,它的核心组件是Action,它负责处理用户的请求并进行业务逻辑处理。相较于Struts 1.x,Struts 2.0的Action模型有着显著的区别。 在Struts 1.x中,Action类需要继承`org.apache...

    struts2笔记之动态调用Action指定方法及默认Action

    Struts2 动态调用 Action 指定方法及默认 Action 配置 Struts2 框架中,一个 Action 可以包含多个处理逻辑,而不是只有一个 execute() 方法。在实际开发中,我们经常需要在一个 Action 中实现多个处理逻辑,这样...

    struts2 使用action属性接收中文参数(post提交)

    在处理用户请求时,Struts2允许开发者通过Action类来接收和处理参数,包括中文参数。当我们需要通过POST方法提交包含中文字符的数据时,可能会遇到编码问题,因为HTTP请求默认使用的是ASCII编码,而中文字符需要UTF-...

    struts2一个action处理多个请求 struts2实例

    在Struts2框架中,Action类是业务逻辑处理的核心组件,它负责接收并处理来自用户的请求。本实例探讨了如何让一个Action类处理多个请求,这在开发中常见于需要集中处理相似请求的情况,可以提高代码复用性和结构的...

    详解Struts2中配置默认Action的方法

    同时,我们还定义了一个名为"HelloWorld"的Action,并将其设置为默认Action的目标Action。 三、 默认Action的使用场景 默认Action的使用场景非常广泛,以下是一些常见的使用场景: * 当用户访问一个不存在的...

    Struts2 in action中文版+配套源代码

    5. **OGNL(Object-Graph Navigation Language)**:Struts2使用OGNL作为默认的表达式语言,用于在Action与视图之间传递数据,支持动态属性访问和方法调用。 6. **插件系统**:Struts2拥有丰富的插件库,如Tiles、...

    struts2 result转向到action

    - **`redirect-action`**: 相对于 `redirect`,`redirect-action` 类型的 Result 只能用于重定向到当前应用中的另一个 Action,并且默认情况下只能在同一命名空间内跳转。这种方式不会改变浏览器地址栏中的 URL,...

    Struts2 in action中文版

    11.3.1 Struts 2默认的TextProvider Re-sourceBundle搜索算法 248 11.3.2 从包中取得消息文本 251 11.3.3 使用i18n标签指定包 254 11.3.4 参数化本地化文本 255 11.3.5 格式化日期和数字 256 11.4 覆盖框架默认的...

    struts 2 action 动态调用

    默认情况下,Struts 2会调用Action类中的`execute()`方法。 2. **Struts.xml**: 这是Struts 2的配置文件,用于配置Action、拦截器等组件。 3. **Interceptors (拦截器)**: 拦截器用于处理Action执行前后的一系列...

    Struts2的Action讲解

    ### Struts2的Action详解 #### 一、引言 在Web开发领域,Struts框架因其优秀的MVC架构设计而广受欢迎。随着技术的发展,Struts框架也经历了从1.x到2.0的重大升级。本文将重点介绍Struts 2.0中的核心组件——Action...

    struts2 in action 中文版 英文版 源代码 合集

    5. **OGNL表达式**: OGNL(Object-Graph Navigation Language)是Struts2的默认表示语言,用于在Action、值栈和视图之间传递数据。 6. **Tiles和FreeMarker**: Struts2可以与Tiles框架集成,用于创建可重用的页面...

    去掉.action去掉.do字样 隐藏struts2 URL地址action, strus1的扩展名do也是同理.zip

    这行配置告诉Struts2不再使用默认的.action后缀,而是接受无扩展名的URL。但是,这样做可能会导致其他未配置的Action无法被正确识别,因此你需要确保每个Action都有对应的无扩展名映射。例如: ```xml ...

    Struts2 Action参数详细说明

    默认情况下,Struts2会调用Action类中的execute方法来处理请求。但是,通过`method`属性,我们可以指定不同的方法对应不同的Action,这样可以实现一个类中多个方法的映射,提高代码复用性。例如: ```xml &lt;action ...

    Struts2中struts_xml的Action配置详解

    本文将深入解析`struts.xml`中的Action配置,帮助开发者更好地理解和运用这一关键组件。 首先,Action配置是Struts2中定义业务逻辑入口的关键,它将HTTP请求映射到特定的Java类方法上。在`struts.xml`中,一个...

    struts2 action 返回json方法(一)源码

    默认情况下,Struts2会把所有非`null`的Action或值栈属性转换成JSON。 5. **自定义JSON输出** 如果需要控制哪些属性被包含在JSON中,或者需要额外的JSON配置,可以在Action类上使用注解`@Results`和`@Result`。...

    Struts2_Action

    1. struts-default.xml:提供默认的配置,包含默认拦截器栈和拦截器定义。 2. struts-plugin.xml:插件的配置文件,如果使用Struts2插件,会加载该文件。 3. struts.xml:用户自定义的配置文件。 4. struts....

    spring管理struts的action的代码

    为了让Struts能够使用Spring来创建Action实例,需要在Struts配置文件(通常为`struts.xml`)中设置`objectFactory`属性为`spring`。 ```xml &lt;!-- 自动默认使用spring对象工厂 --&gt; &lt;constant name="struts....

    ·Struts2配置文件介绍 超级详细

    总结来说,Struts2的配置文件主要涉及到了核心框架的各个组成部分,包括但不限于Action的定义、拦截器的配置以及结果类型的设置等。通过合理的配置,开发者可以轻松地构建出复杂且灵活的应用程序架构。

    struts2inaction

    这些配置可以实现URL映射,指定Action类及其方法,以及设置默认结果页面。 3. **Action类**:Action类是处理用户请求的入口,其中包含了一系列的执行方法,每个方法对应一个HTTP请求。通过注解或配置文件可以将请求...

    Struts2Action处理中文乱码

    在Struts2的配置文件`structs.xml`中,你可以添加一个常量配置来指定请求和响应的默认编码格式。例如,如果你的项目中中文字符采用GBK编码,可以在`structs.xml`中添加以下代码: ```xml &lt;constant name="struts....

Global site tag (gtag.js) - Google Analytics