`
fanjf
  • 浏览: 329727 次
  • 性别: Icon_minigender_1
  • 来自: 安徽
社区版块
存档分类
最新评论

DWR与Struts整合

 
阅读更多
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要先初始化,所以數字要比較小.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30


   <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>的設定

1
2
3
4
5
6
7
8


   <dwr>  
<allow>    
<create creator="struts"

 javascript="testFrm"

>      
<param name="formBean"

 value="testActionForm"

/>    
</create>  
</allow>  
</dwr>  



struts-config.xml

1
2
3
4
5
6
7
8
9
10
11


   <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,取得現在最新的日期

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24


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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20


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">後,無法正常的接受到值.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38


<%@ 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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15


<%@ 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>
分享到:
评论

相关推荐

    DWR与SPRING,DWR与STRUTS2的整合

    提供的文档“dwr与spring.doc”和“dwr与struts2.doc”可能详细阐述了整合过程和最佳实践,而“一个小例子.txt”可能包含了一个实际整合示例,帮助读者更好地理解整合步骤和实现方式。学习并掌握这些知识对于提升...

    dwr2.0整合Struts1.3+hibernate3.1+spring2.5的项目

    4. **DWR与Struts整合**:DWR可以通过Struts的Action来暴露远程方法,用户在前端通过AJAX调用这些方法,实现前后端数据交互。 整合这些技术的关键在于配置文件的设置,如struts-config.xml、dwr.xml、...

    struts2与dwr整合实例

    **Struts2与DWR整合步骤** 1. **添加依赖**:首先,需要在项目中引入Struts2和DWR的JAR包。这些JAR包可能包含在你提供的压缩包中,如`dwr.jar`和其他相关的Struts2依赖。 2. **配置Struts2**:在`struts.xml`配置...

    dwr-struts-示例

    **DWR(Direct Web Remoting)与Struts整合示例** DWR(Direct Web Remoting)是一个开源Java库,它允许在Web浏览器和Java服务器之间进行实时、双向通信,简化了Ajax(Asynchronous JavaScript and XML)开发。...

    dwr.rar_ajax d_dwr_dwr ajax_dwr struts2 example_struts2 ajax dwr

    在这个“dwr.rar”压缩包中,包含了一些关于DWR与Struts2框架整合使用的示例,对于学习和理解DWR在实际项目中的应用非常有帮助。 DWR的核心功能在于它提供了一种安全、高效的机制,使得前端JavaScript可以直接调用...

    Struts2_Dwr.rar_Struts2_Dwr_dwr_struts2 dwr

    在本项目"Struts2_Dwr"中,我们将看到如何整合这两个工具来实现一个登录验证系统。 Struts2是一个基于MVC设计模式的Java Web应用框架,它提供了强大的控制层结构,用于处理用户请求、业务逻辑和视图展示。Struts2的...

    dwr和spring和struts2整合

    Spring还提供了对其他框架的集成支持,如数据库访问、事务管理以及与Struts2和DWR的整合。 Struts2是一个基于MVC设计模式的Java Web框架,用于构建可维护、可扩展的应用程序。它提供了强大的动作类、拦截器、结果...

    dwr基础学习书籍新手必备

    **DWR与Struts整合**:在Struts框架下,DWR能够作为Action调用的一部分,增强了Struts的异步处理能力。 **DWR与Weblogic或PageFlow整合**:在企业级应用环境中,DWR能够与Weblogic等应用服务器集成,提供稳定可靠的...

    DWR中文文档(pdf)

    ##### 4.4 DWR与Struts整合 - **整合方式**: - 使用`StrutsCreator`来创建Action对象。 - 在`dwr.xml`中配置Struts相关的参数。 ##### 4.5 DWR与Weblogic或PageFlow整合 - **整合考虑**: - 考虑容器特性,如...

    dwr中文手册

    整合DWR与Struts需要使用Strutscreator,以及正确配置servlet过滤器,确保DWR请求能够正确处理。 ##### 3.4 DWR与Weblogic或PageFlow DWR在Weblogic服务器上的配置可能需要额外的安全设置和角色定义,以适应其特定...

    spring json dwr struts2.0 hibernate整合

    在您提供的信息中,我们看到一个基于Java的项目,它整合了Spring、JSON、DWR(Direct Web Remoting)、Struts2.0以及Hibernate3.0。下面将详细介绍这些技术及其整合方式。 1. **Spring框架**: Spring是一个开源的...

    Ajax DWR struts 应用案例

    在这一章节中,读者可能会学到如何配置DWR与Struts的整合,编写Ajax请求和响应处理,以及如何在客户端和服务器端调试和优化这些交互。 总的来说,Ajax、DWR和Struts的结合使用可以帮助开发者构建高效、响应式的Web...

    Struts2+DWR的简单实现

    **Struts2和DWR的整合** 结合Struts2和DWR可以实现富客户端应用,让前端JavaScript代码能够直接调用后台Java服务。以下步骤展示了整合过程: 1. **引入依赖**:在项目中添加Struts2和DWR的相关jar包,并配置web....

    struts2.0+spring2.0+hiberante3+dwr+freemarker整合所需jar包

    Struts2.0、Spring2.0、Hibernate3和DWR以及Freemarker是Java Web开发中的关键组件,它们各自负责不同的职责,并且通过合理的整合,可以构建出强大的企业级应用系统。 Struts2.0是Apache软件基金会下的一个开源MVC...

    dwr与ssh框架整合源码

    在整合DWR时,DWR的Controller层可以与Struts的Action类进行协作,共同处理用户请求。 3. **Hibernate框架**:Hibernate作为数据持久化层,处理数据库操作。DWR可以直接调用Hibernate封装的Java对象,进行CRUD操作...

    struts2+dwr整合例子,部署后可直接用

    "struts2+dwr整合例子"是一个结合了这两种技术的示例项目,它展示了如何将Struts2的控制层与DWR的Ajax功能集成在一起。在这个例子中,可能包含了以下关键部分: 1. **Struts2配置**:在struts.xml或类似的配置文件...

    DWR,Struts,Hibernate和Spring的J2EE架构开发大全

    Sturts2与以其它Web应用框架整合的研究.pdf 图书缺藏网站解决方案.pdf 基于Ajax技术即时通讯系统的设计与实现.pdf 基于Ajax技术的实时数据监测系统的研究与应用.pdf 基于DWR与JST的Ajax技术的实现.pdf 基于DWR框架的...

    dwr+struts+hibernate+jquery tomcat日志查询系统

    【标题】"dwr+struts+hibernate+jquery tomcat日志查询系统"是一个基于Web的应用程序,主要用于实时、高效地查询Tomcat服务器的日志内容,并且具备分页功能,提供良好的用户体验。这个系统整合了多个技术框架,下面...

    struts2+dwr 整合实例

    下载放到Myeclips里就可以运行、里面包含struts2环境搭建(点击按钮)、struts2+dwr整合(在文本框中输入值后会访问后台,给select动态增加option赋值、点击按钮又会显示会select被选中的option的value和text值)、...

Global site tag (gtag.js) - Google Analytics