http://oma1989.iteye.com/blog/1421746
struts.xml 配置
- <?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.enable.DynamicMethodInvocation" value= "false" />
- <constant name= "struts.devMode" value= "false" />
- < package name= "default" extends = "struts-default" >
- <action name= "test" class = "com.test.TestAction" >
- <result name= "success" type= "freemarker" >test-success.ftl </result>
- </action>
- <action name= "login" >
- <result type= "freemarker" >/login.ftl </result>
- </action>
- </ package >
- </struts>
*.ftl 编写
- <#assign s=JspTaglibs[ "/WEB-INF/struts-tags.tld" ] />
- <html>
- <head>
- <title>Hello</title>
- </head>
- <body>
- < @s .form action= "/test.action" >
- < @s .textfield name= "name" />
- < @s .submit/>
- </ @s .form>
- </body>
- </html>
<#assign s=JspTaglibs[ "/WEB-INF/struts-tags.tld" ] />
这一句是为了让Freemarker识别struts2的标签,因为在Freemarker文件内,除了它自己的,都会原样显示。
web.xml 配置
- <?xml version= "1.0" encoding= "UTF-8" ?>
- <web-app id= "WebApp_9" version= "2.4" xmlns= "http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation= "http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
- <display-name>Struts Blank</display-name>
- <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>
- <servlet>
- <servlet-name>JspSupportServlet</servlet-name>
- <servlet- class >org.apache.struts2.views.JspSupportServlet</servlet- class >
- <load-on-startup> 1 </load-on-startup>
- </servlet>
- <welcome-file-list>
- <welcome-file>login.action</welcome-file>
- </welcome-file-list>
- </web-app>
java 代码编写
1. import com.opensymphony.xwork2.ActionSupport;
2. public class TestAction extends ActionSupport {
3. private String name = "ChainHou";
4. public String getName() {
5. return name;
6. }
7. public void setName(String name) {
8. this.name = name;
9. }
10. @Override
11. public String execute() throws Exception {
12. return SUCCESS;
13. }
14. }