`
wutheringsea
  • 浏览: 263242 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

[转] struts 调用首页 action 的两种方法

阅读更多


由于 Struts 将实现于页面分离,又是以提交驱动的方式,所以不能象 jsp、php 那样直接设置首页为 index.jsp 或 index.php 就可以的。需要访问 struts servlet 并执行后台应用后由后台定向到前台 jsp 文件,所以首页的配置就出现了一点小问题。
  大多数人想到的方法是建立 index.jsp (或 html)文件,当访问这个文件时定向到 Struts 后台 action。虽然也能解决问题,不过并不完美。因为地址栏 url 将会变成定向后的 url。如 index.jsp 中定向到 index.do ,那么访问 http://www.mxjava.com 后,url 将变成 http://www.mxjava.com/index.do。
  有两种方法可以解决这个问题:
1、配置 web.xml 的 welcome-file-list 如下:
<WELCOME-FILE-LIST>
<WELCOME-FILE>index.do</WELCOME-FILE>
</WELCOME-FILE-LIST>
  在网站根目录下创建 index.do 文件。注意这个文件一定要创建,否则系统出错。
2、将 index.do 的 Struts 配置改为如下:
<PACKAGE name=”home” extends=”struts-default”>
<ACTION class=indexAction name=”">
<RESULT type=”freemarker”>/WEB-INF/ui/index.html</RESULT>
</ACTION>
</PACKAGE>
 action 的 name=”" 即可。
  两种方法都能解决问题,并没有多少不同,个人更倾向于第一种,毕竟 struts 的 action name=”” 看上去比较怪异。

 

来源:http://javatest.cn/?p=106

 

分享到:
评论

相关推荐

    struts2 result转向到action

    这里定义了一个名为 `login` 的 Action,当表单提交到 `/login.action` 时,Struts2 将会调用 `action.LoginAction` 类来处理这个请求。如果 `LoginAction` 返回 `"success"`,那么根据配置的 `redirect-action` ...

    Struts2的Action多个方法配置和验证

    1. 基于注解的验证:在Action类的方法参数或Action类的属性上添加注解,如`@RequiredString`、`@Min`、`@Max`等,Struts2在调用方法前会自动执行这些注解定义的验证规则。例如: ```java public class MyAction { ...

    struts2的API耦合与动态方法调用

    本文将重点讨论Struts2中的API耦合和动态方法调用,这两种特性对于理解框架的工作原理和提高代码的灵活性至关重要。 首先,我们来看看Struts2 API耦合的几种方式: 1. **ActionContext类**:ActionContext是Struts...

    struts2 action跳转action传参数

    通过以上两种方式,我们可以在Struts2框架中轻松地实现Action之间的跳转以及参数传递。使用`chain`类型的结果不仅能够实现跳转,还能够在不使用额外的HTTP请求的情况下传递参数,而使用`redirectAction`类型的结果...

    struts调用drools小实例

    Struts和Drools是两种在Java开发领域中广泛应用的技术。Struts是一个MVC(Model-View-Controller)框架,用于构建基于Java EE的Web应用程序,而Drools则是一个强大的规则引擎,允许开发者在应用中引入业务规则管理。...

    Struts2在Action中获得Response对象的四种方法

    这里,Action类实现`ServletResponseAware`接口并提供一个`setServletResponse`方法,Struts2会自动调用这个方法将Response对象设置进去。同样,我们还可以通过实现`ServletRequestAware`、`SessionAware`和`...

    Struts2操作同一action的不同方法跳转jar包(包括示例代码)

    在这个例子中,`TestAction`类有两个方法:`execute()`和`anotherMethod()`。`execute()`方法默认处理无特定方法名的请求,而`anotherMethod()`则通过`testAction_anotherMethod.action`来调用。 接着,讲解如何在...

    一个struts的action跳转大全

    另外,通过两个`forward`元素指定了两种可能的结果路径:成功路径(`someJSP.jsp`)和失败路径(`someOtherJSP.jsp`)。 2. **仅有Form的Action** ```xml &lt;action path="/aFormOnlyAction" type="org.apache....

    Struts2 in action中文版

    2.1.2 声明架构的两种方式 17 2.1.3 智能默认值 20 2.2 简单的HelloWorld示例 20 2.2.1 部署示例应用程序 20 2.2.2 探索HelloWorld应用程序 24 2.3 使用注解的HelloWorld 31 2.4 小结 33 第二部分 核心概念:动作、...

    Struts2登陆+输入验证+动态调用实例

    Struts2提供两种主要的输入验证方式:客户端验证和服务器端验证。 1. 客户端验证:通过JavaScript在用户提交表单前检查输入,可以提供实时反馈,但安全性较低,因为JavaScript可以被禁用或篡改。 2. 服务器端验证:...

    struts2.0整合Struts 1

    4. **配置方式**:Struts 2支持XML和注解两种配置方式,注解配置更加简洁,减少了XML的繁琐。 5. **Tiles视图技术**:虽然不是Struts 2的核心部分,但可以通过Struts 2的集成来实现页面布局和组件重用,提高开发...

    struts2自定义数据类型转换练习

    通过这样的方式,Struts2在处理Action的字段时,会自动调用我们的自定义转换器。 在实际项目中,我们可能会遇到更复杂的数据转换情况,例如日期格式的转换、货币金额的转换等。此时,自定义类型转换器能提供灵活的...

    struts和spring的三种整合方法

    本文将详细介绍Struts与Spring的三种整合方式,帮助开发者更好地理解和应用这两种框架。 #### 一、使用Spring的ActionSupport类整合Struts 1.x **概述:** 这种方式是最直接的整合方法,通过让Struts的Action继承...

    Struts 2 in Action (May 2008).pdf

    5. **配置和注解**:Struts 2支持XML配置和注解配置两种方式,使得开发者可以根据项目需求选择合适的配置方式。书中会对比和解释这两种配置方法的使用场景和优缺点。 6. **国际化和本地化**:Struts 2提供了便捷的...

    struts1和struts2的区别

    - **Struts1**: Struts1中的Action通常需要实现`execute`方法,并且依赖于Servlet API。为了测试Action的行为,通常需要使用StrutsTestCase等工具提供的模拟环境。 - **Struts2**: Struts2支持更加灵活的单元测试...

    Struts2中直接和间接访问ServletAPI以及动态方法调用之感叹号

    在Struts2框架中,直接和间接访问Servlet API以及动态方法调用是两个关键概念,它们对理解和优化应用性能至关重要。 首先,让我们深入理解直接访问Servlet API。在传统的MVC模式中,Servlet扮演着控制器的角色,...

    struts1和struts2获取相对路径的方法

    Struts1和Struts2分别是该框架的两个不同版本,它们在处理相对路径的方式上有所不同。本文将详细讲解在Struts1和Struts2中如何获取相对路径。 ### Struts1 获取相对路径的方法 在Struts1中,我们通常会用到`...

    Struts2+DWR的简单实现

    Struts2和Direct Web Remoting (DWR) 是两种在Web开发中常用的技术。Struts2是一个基于MVC设计模式的Java EE框架,用于构建可维护性和可扩展性高的企业级应用程序,而DWR则是一种使得JavaScript可以调用服务器端Java...

    Servlet和Struts2的交互(转载)

    1. 直接集成:在Servlet中创建Struts2的ActionContext,并手动设置请求和响应对象,然后调用Action的execute()方法执行业务逻辑。 2. 使用Filter转发:配置Struts2的Filter在Servlet处理完请求后,将控制权交给...

    struts2开发文档

    同时,它还支持动态方法调用,即可以根据请求参数直接调用Action中的方法。 3. **插件支持**:Struts2有一个丰富的插件生态系统,如Tiles插件用于页面布局,Struts2-dojo-plugin提供Ajax支持,Struts2-json-plugin...

Global site tag (gtag.js) - Google Analytics