DWR与Struts整合2007-08-07 【收藏】
1.下載DWR Version 2
https://dwr.dev.java.net/files/documents/2427/47504/dwr.jar
2.安裝DWR,把dwr.jar放到WEB-INF/lib下
web.xml中加入DWRServlet & ActionServlet
其中<load-on-startup>的部分要特別注意,ActionServlet要先初始化,所以數字要比較小.
https://dwr.dev.java.net/files/documents/2427/47504/dwr.jar
2.安裝DWR,把dwr.jar放到WEB-INF/lib下
web.xml中加入DWRServlet & ActionServlet
其中<load-on-startup>的部分要特別注意,ActionServlet要先初始化,所以數字要比較小.
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet
</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>2</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>10</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
dwr.xml中加入struts的設定,其中formBean的參數的value值,會對應到struts-config.xml中<form-beans>的設定
<dwr><allow><create creator="struts" javascript="testFrm"><param name="formBean" value="testActionForm"/></create></allow></dwr>
struts-config.xml<struts-config><form-beans><form-bean name="testActionForm" type="test.struts.testActionForm" /></form-beans><action-mappings><action name="testActionForm" path="/testAction" scope="session" type="test.struts.testAction" validate="false"><forward name="display" path="/display.jsp" /></action></action-mappings><message-resources parameter="ApplicationResources" /></struts-config>
testActionForm.java,getDate()會透過dwr,取得現在最新的日期package test.struts;import org.apache.struts.action.*;import java.util.*;public class testActionForm extends ActionForm {private String strDate;public void setStrDate(String strDate) {this.strDate = strDate;}public String getStrDate() {return strDate;}//dwr public String getDate() {Date date = new Date();return date.toString();}}
testAction.java
package test.struts;import org.apache.struts.action.ActionMapping;import org.apache.struts.action.ActionForm;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.struts.action.ActionForward;import org.apache.struts.action.Action;import org.apache.struts.action.*;public class testAction extends Action {public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request,HttpServletResponse response) {testActionForm actionForm = (testActionForm) form;System.out.println(actionForm.getStrDate());return mapping.findForward("display");}}
date.jsp,在form的部分,請用struts 的 tag library,我把<html:text property="strDate" size="30" >改成<input type="text" name="strDate">後,無法正常的接受到值.
<%@ page contentType="text/html; charset=Big5" %><%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %><%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %><%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %><html><head><title>title</title><script type='text/javascript' src='dwr/interface/testFrm.js'></script><script type='text/javascript' src='dwr/engine.js'></script><script type='text/javascript' src='dwr/util.js'></script></head><SCRIPT LANGUAGE="JavaScript" type="">function refreshDate() {testFrm.getDate(populateDate);}function populateDate(data){DWRUtil.setValue('strDate', data);}</script><body><html:form action="testAction.do">date:<html:text property="strDate" size="30" ></html:text><input type="button" onclick="refreshDate();" value="更新日期"/><br/><html:submit>送出 </html:submit></html:form></body></html>
display.jsp
<%@ page contentType="text/html; charset=Big5" %><%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>%@page import="test.struts.*"%<html><head><title>test</title></head><body bgcolor="#ffffff"><h1>您送出的日期:<br><bean:write name="testActionForm" property="strDate"/></h1></body></html>
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1621900
posted on 2008-08-03 15:34 weesun一米阳光 阅读(421) 评论(0) 编辑 收藏 所属分类: Struts 、 AJAX 、 总结备用