1、创建web工程
2、拷贝WebWork的jar文件到web工程的lib目录,必须的jar文件包括Webwork-2.2.4.jar和WebWork的lib目录下的default目录中的所有jar文件。
3、修改web.xml,添加WebWork过滤器,固定内容如下:
<o:p>
</o:p>
这样,
.action结尾的所有url请求将直接有ServletDispatcher去调度。下面我们写一个经典的HelloWorld,跑一个简单实例来验证你运行环境是否可用,并感受一下简单、功能强大的WebWork的开发。
以上内容,WebWork包中提供了模板文件,可以直接拷贝过来修改一下即可。
模板文件路径:Webwork-2.2.4\webapps\shopping-cart\src\webapp\WEB-INF\web.xml
4、在src目录下创建xwork.xml文件(路径和文件名均是固定写法),内容如下
以上内容,WebWork包中提供了模板文件,可以直接拷贝过来修改一下即可。
模板文件路径:Webwork-2.2.4\webapps\shopping-cart\src\webapp\WEB-INF\classes\xwork.xml
其中被包含的webwork-default.xml文件不要随意修改(包括里面内容的顺序),修改后WebWork可能会无法正常工作。
package标签使得配置文件也可以分包存放(与代码的包不同)。action标签的name属性就是表单提交时使用的action的名字,class属性代表处理请求的action类。method属性(可选)可以指定执行的方法名,这是一个非常好用的属性,在Struts中每个逻辑处理单元都要单独写一个action类,这样一个工程可能会有很多action类,而每个action只做一个处理,使用method属性可以只写一个action类,根据需要指定不同的方法处理请求即可。
result标签指定action类执行完后转向的显示页面。result标签也可以指定使用模板输出显示内容,如Freemarker或Velocity。
5、创建action类,需要手工指定实现com.opensymphony.xwork.Action接口。在Struts中如果有表单,则对应表单需要有formbean,在WebWork中formbean则不是必须的,可以将表单提交的属性作为变量,都写到action类中,但必须为变量添加set和get方法,WebWork使用类似Spring的注入功能实现变量的赋值。
action类也可以指定使用单独的bean类实现类似formbean的功能,只需在action类中将此bean类的对象实例化好,并设置set和get方法即可。
如果不使用formbean则表单提交时表单元素的name属性值要和action类中相应的变量名相同,如果使用formbean则表单元素的name属性值为“bean类名.属性名”。
com.opensymphony.xwork.Action接口中的execute方法并没有request和response参数,而是将请求和响应与web容器剥离,单独封装起来,由WebWork核心控制器管理,所以在处理请求时使用的request或session都要从WebWork上下文中获取。
execute方法返回的是一个字符串而不是像Struts一样封装的ActionMapping对象,返回的字符串根据xwork.xml文件中对应的action标签中的result标签找到指定的显示页面。
com.opensymphony.xwork.Action接口中定义了一些常用的常量用来表示页面的转向,常量的值与常量名相同。例如SUCCESS表示执行成功。WebWork默认的也是转发而不是重定向。
最简单的action类的代码如下:
java 代码
- import java.util.Map;
-
- import com.opensymphony.xwork.Action;
- import com.opensymphony.xwork.ActionContext;
-
- public class SampleAction implements Action {
-
- private String param = null;
-
-
- public String getParam() {
- return param;
- }
-
-
- public void setParam(String param) {
- this.param = param;
- }
-
-
- public String execute() throws Exception {
- Map session = ActionContext.getContext().getSession();
- session.put("anyParam",getParam());
- return SUCCESS;
- }
-
- }
-
6、至此基本的WebWork应用已经配置好了,创建Model层和View层实现业务逻辑即可。
WebWork的工作流程如图:
WebWok还有一个可选的配置文件,文件名为webwork.properties,同样是放在src目录下。WebWork2.X在Tomcat5.5以上或Resin3可以正常运行,对中文支持不好,需要手动转换编码,可以添加如下配置信息:
webwork.locale=zh_CN
webwork.i18n.encoding=GBK
webwork中的action类缺省后缀是action,也可以通过配置文件修改
webwork.action.extension=action
对webwork.properties文件详细的配置说明可以参考:
p.s :记录一下,容易忘记~ :)
分享到:
相关推荐
`web.xml`则是标准的Servlet配置文件,虽然在WebWork中主要用来引导WebWork的初始化,但它也包含一些关键的WebWork配置: 1. **Servlet配置**:你需要配置`ActionServlet`,它是WebWork的核心Servlet,负责处理HTTP...
总结来说,WebWork 配置涉及Action的创建、ActionContext的理解和使用、ServletDispatcher的调度机制,以及Action的测试和Result Type的设置。熟练掌握这些知识点,能够帮助开发者高效地构建和维护基于WebWork的Java...
`xwork-default.xml` 包含了 WebWork 的默认配置,而自定义配置可以通过 `include` 元素引入。在提供的配置中,创建了一个名为 "default" 的包,并扩展了 "webwork-default" 包,这意味着它继承了父包的所有配置。 ...
综上所述,`xwork.xml`和`web.xml`是WebWork配置的核心,它们定义了Action的行为、拦截器的使用,以及Servlet容器如何处理请求。理解并正确配置这两个文件对于有效地使用WebWork进行Web开发至关重要。在实际项目中,...
4. **WebWork配置**:`xwork.xml`是WebWork的配置文件,定义了动作类、拦截器、结果视图等。虽然文件内容没有完全展示,但通常会包含动作的命名空间、动作类映射、拦截器栈等配置。 5. **Hibernate配置**:尽管在给...
NULL 博文链接:https://panshunchang.iteye.com/blog/675464
WebWork配置 - **webwork.properties**:该文件用于指定WebWork的运行配置。其中,`webwork.objectFactory=spring` 这一行表示WebWork将使用Spring作为对象工厂,即所有的Action实例都将由Spring容器管理。 - *...
1. WebWork配置: WebWork是基于Action的MVC框架,它的核心在于Action。首先,需要在项目的WEB-INF目录下创建webwork.xml配置文件,定义全局配置。在这个文件中,你可以配置拦截器、Action路径、异常处理等。例如,...
所使用的locale可以是浏览器端指定的或者在WebWork配置文件中指定的。关于locale的具体设置方法,请参考WebWork的国际化文档。 ##### 4. **List类型** - **描述**:当请求参数的值需要转换为`List`类型时,...
2. **WebWork配置**:WebWork(或Struts2)的配置文件(如struts.xml)需要配置Action类,这些类通常由Spring管理。同时,还需要配置拦截器(Interceptor),以便在请求处理前后执行特定逻辑。 3. **Hibernate配置*...
6. **检查WebWork配置**:确认WebWork的配置文件(如`webwork.xml`)中没有错误,特别是关于Xalan的相关配置。 在使用`xalan-j_2_7_1-bin-2jars`时,通常需要解压缩并提取出其中的JAR文件,然后将它们添加到项目的...
6. **WebWork配置**:配置web.xml,设置过滤器和监听器,指定WebWork的配置文件路径。 7. **动作类和控制器**:编写WebWork的动作类,实现业务逻辑,并通过Spring的@Autowired注解注入依赖。 8. **数据库操作**:...
此外,确保在WebWork配置中正确配置了文件上传的限制,如最大文件大小和临时目录。这通常在`struts.properties`或相应的XML配置文件中完成。 总的来说,通过WebWork实现文件上传涉及HTML表单、Action类、文件验证...
这一章节详细介绍了如何配置Webwork2,包括但不限于Action映射、拦截器配置、国际化资源文件设置等,是开发过程中不可或缺的一部分。 #### 结论 Webwork2作为一款优秀的Web应用框架,其设计理念和功能特性使其在...
在这个“WebWork2配置”主题中,我们将深入探讨如何设置和优化WebWork2框架,以便在你的项目中实现高效且可维护的代码。 首先,WebWork2的配置主要涉及到以下几个方面: 1. **web.xml配置**:这是所有Java Web应用...
3. **配置Interceptor**:在Spring配置文件中定义拦截器bean,然后在WebWork配置中声明这些拦截器。 4. **数据绑定**:WebWork的ValueStack可以与Spring的ModelAndView结合,实现数据的自动绑定和传递。 **应用场景...
在WebWork配置文件中,你可以设置参数、结果类型和拦截器链。 4. 拦截器(Interceptors): WebWork引入了拦截器的概念,它们在动作执行前后进行处理,如日志记录、权限检查、事务管理等。拦截器可以被链式调用,...
1. **配置文件**:如web.xml(Web应用配置)、struts-config.xml(WebWork配置)、ibatis-config.xml(iBATIS配置)。 2. **Action类**:WebWork的动作类,实现业务逻辑。 3. **DAO(数据访问对象)**:与iBATIS结合...