`

Struts2+DWR的简单实现

    博客分类:
  • java
阅读更多
public class PublishAction extends ActionSupport {

    private String msg;

    /**
     * @return the msg
     */
    public String getMsg() {
        return msg;
    }

    /**
     * @param msg the msg to set
     */
    public void setMsg(String msg) {
        this.msg = msg;
    }
    public String showMsg(){
      HttpServletResponse response= ServletActionContext.getResponse();
      response.setContentType("text/html;charset=utf8");
      String page = ServerContextFactory.get().getContextPath() + "/message.jsp";
      Browser.withPage(page, new Runnable() {
          public void run() {
              ScriptSessions.addScript("showMsg('" + msg + "')");
          }
      });
    try {
        response.getWriter().print(msg);
    } catch (IOException e) {
        e.printStackTrace();
    }
    System.out.println(msg);
        return SUCCESS;
    }

}
 
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
  <package name="struts" extends="struts-default" namespace="/">
   <action name="publishAction" class="com.acca.action.PublishAction" method="showMsg">
     <result>message.jsp</result>
   </action>
  </package>
</struts>    
 
<%@ page language="java" contentType="text/html; charset=utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;">
<title>Insert title here</title>
<style type="text/css">
ul,li{margin:0;padding:0}
#scrollDiv{ overflow:auto}
.scrollText{width:300px;height:25px;min-height:25px;line-height:25px;border:#ccc 0px solid; float:right;overflow:hidden}
.scrollText li{height:25px;padding-left:10px;}
.up{ margin-left:310px; width:50px; height:50px; background:#F90}
.down{ margin:0 0 0 310px; zoom:1; width:50px; height:50px; background:#960}
</style>
<script type="text/javascript" src="dwr/engine.js"></script>
<script type="text/javascript" src="jquery/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
	$(function() {
		dwr.engine.setActiveReverseAjax(true);
	});

	function showMsg(msg) {
        alert(msg);
	}

</script>

</head>
<body>
	<div id="scrollDiv">
		<div class="scrollText">
	 		<ul id="messageList">
	 		</ul>
		</div>
    </div>
</body>
</html>
 
<%@ page language="java" contentType="text/html; charset=utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;">
<title>Insert title here</title>
</head>
<body>
    <form action="publishAction.action" method="post">
      <input type="text" name="msg">
      <input type="submit" value="send">
    </form> 
</body>
</html>
 
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
  <welcome-file-list>
    <welcome-file>send.jsp</welcome-file>
  </welcome-file-list>
  
    <listener>
    <listener-class>org.directwebremoting.servlet.DwrListener</listener-class>
  </listener>

  <servlet>
    <servlet-name>dwr-invoker</servlet-name>
    <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>

    <!-- This should NEVER be present in live -->
    <init-param>
      <param-name>debug</param-name>
      <param-value>true</param-value>
    </init-param>

    <!-- Remove this unless you want to use active reverse ajax -->
    <init-param>
      <param-name>activeReverseAjaxEnabled</param-name>
      <param-value>true</param-value>
    </init-param>
    
    <init-param>
           <param-name>crossDomainSessionSecurity</param-name>
           <param-value>false</param-value>
    </init-param>
    <init-param>
          <param-name>allowScriptTagRemoting</param-name>
          <param-value>true</param-value>
    </init-param>

    <!-- By default DWR creates application scope objects when they are first
    used. This creates them when the app-server is started -->
    <init-param>
      <param-name>initApplicationScopeCreatorsAtStartup</param-name>
      <param-value>true</param-value>
    </init-param>

    <!-- WARNING: allowing JSON-RPC connections bypasses much of the security
    protection that DWR gives you. Take this out if security is important -->
    <init-param>
      <param-name>jsonRpcEnabled</param-name>
      <param-value>true</param-value>
    </init-param>

    <!-- WARNING: allowing JSONP connections bypasses much of the security
    protection that DWR gives you. Take this out if security is important -->
    <init-param>
      <param-name>jsonpEnabled</param-name>
      <param-value>true</param-value>
    </init-param>

    <!-- data: URLs are good for small images, but are slower, and could OOM for
    larger images. Leave this out (or keep 'false') for anything but small images -->
    <init-param>
      <param-name>preferDataUrlSchema</param-name>
      <param-value>false</param-value>
    </init-param>

    <!-- This enables full streaming mode. It's probably better to leave this
    out if you are running across the Internet -->
    <init-param>
      <param-name>maxWaitAfterWrite</param-name>
      <param-value>-1</param-value>
    </init-param>

    <!--
    For more information on these parameters, see:
    - http://getahead.org/dwr/server/servlet
    - http://getahead.org/dwr/reverse-ajax/configuration
    -->
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>dwr-invoker</servlet-name>
    <url-pattern>/dwr/*</url-pattern>
  </servlet-mapping>
  
  <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>
</web-app>
 
0
0
分享到:
评论

相关推荐

    struts2+hibernate+spring+dwr整合

    Struts2、Hibernate、Spring 和 DWR 是四个在Java Web开发中非常重要的框架,它们各自在不同的领域提供了强大的功能,并且能够通过整合实现更高效、更灵活的应用开发。接下来,我们将详细探讨这些技术以及它们如何...

    struts2+dwr+自己实现的progresslistener监控上传进度

    Struts2和DWR是两种在Web开发中广泛使用的开源框架,它们分别处理不同的层面,但可以协同工作以实现高效的应用程序开发。Struts2是一个强大的MVC(Model-View-Controller)框架,用于构建Java Web应用程序,而Direct...

    Struts2 + spring + hibernate + dwr 完美整合代码

    Struts2、Spring、Hibernate和DWR是Java Web开发中常用的四大框架,它们各自负责不同的职责,协同工作可以构建出高效、稳定且易于维护的Web应用程序。本项目整合了这四大框架,实现了用户注册、多级下拉联动及表格...

    Struts2+Spring+Hibernate+DWR实现的城市联动

    在这个"Struts2+Spring+Hibernate+DWR实现的城市联动"项目中,我们将深入探讨这四个框架如何协同工作,以及它们在实现动态数据交互中的关键作用。 首先,Struts2是一个基于MVC(Model-View-Controller)设计模式的...

    ssm整合例子(spring3 + struts2 + mybatis3 + tiles + dwr3注解)

    整合spring3 + struts2 + mybatis3 + tiles + dwr3 这几个流行的框架。 spring3,struts2,dwr3都是用的注解,tiles与mybatis是采用的xml配置。

    struts2+spring+jpa整合的完整例子(含分页)

    在学习jpa时候做的一个struts2+spring+jpa整合的完整例子 包含分页,一个简单的 资产入库系统 并实现了登陆等。

    struts增删改+dwr消息推送

    Struts2和DWR是两种在Java Web开发中常见的开源框架。Struts2是一个用于构建MVC(模型-视图-控制器)架构的框架,它提供了丰富的功能来处理用户请求,控制应用程序流程,并且能够方便地与各种视图技术集成。DWR...

    Struts2.0+dwr无刷新分页

    **Struts2.0结合DWR实现无刷新分页的步骤:** 1. **配置DWR**:在Web应用的`web.xml`中配置DWR的Servlet,并在项目中引入DWR的JAR文件。 2. **创建Action**:编写一个Action类,包含获取分页数据的方法。 3. **实现...

    spring3+struts2+hibernate+dwr

    1. **用户界面**:Struts2与Spring MVC协同构建动态、交互性强的用户界面,利用DWR实现实时数据更新,无需刷新整个页面。 2. **业务逻辑**:Spring3管理所有bean,包括Struts2的Action类和Hibernate的DAO层,提供...

    struts2与dwr整合实例

    Struts2作为MVC框架,提供了强大的控制层支持,而DWR则允许JavaScript在浏览器端直接调用服务器端的Java方法,实现异步更新和实时交互。 **Struts2框架详解** Struts2是一个基于MVC设计模式的Java Web框架,它继承...

    OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR).rar

    这个系统采用了经典的Java EE技术栈,包括Struts1.2、Hibernate3.0、Spring2和Direct Web Remoting (DWR)。以下是这些技术的详细解释: 1. **Struts1.2**:这是一个开源的MVC(Model-View-Controller)框架,用于...

    jsp源码OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR)

    ### jsp源码OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR)知识点解析 #### 一、项目概述 该OA办公自动化管理系统是基于JSP技术栈开发的一个完整项目,主要涵盖了Struts1.2、Hibernate3.0、Spring2...

    最新版本Struts2.1.8+Spring3.0+Hibernate3.3.2+DWR2.0.6配置

    - **支持AJAX**:通过插件如`struts2-dwr-plugin`,可以轻松实现AJAX功能。 - **增强的类型转换和验证机制**:使数据处理更加灵活且高效。 - **国际化支持**:便于多语言应用的开发。 - **插件架构**:允许开发者...

    Struts2_Dwr.rar_Struts2_Dwr_dwr_struts2 dwr

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

    Struts1.3+Spring3.0+Hibernate3.3+DWR2.X框架集成文档v1.4

    ### Struts1.3+Spring3.0+Hibernate3.3+DWR2.X框架集成文档v1.4 #### 整合Spring与Struts ##### 1. 在web.xml中进行Struts和Spring的配置 为了实现Struts与Spring框架的集成,在`web.xml`文件中需要进行以下配置...

    OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR)130224.rar

    这个系统采用的是Struts1.2、Hibernate3.0、Spring2和DWR这四个核心技术框架进行构建,这些都是Java Web开发中的重要组件。 Struts1.2是Apache基金会的一个开源MVC框架,它提供了一种结构化的方式来组织Java ...

    Struts2+Spring+Hibernate+Ajax框架整合

    例如,Struts2的Action类通常会注入Spring管理的Service,Service再通过Hibernate操作数据库,而Ajax请求则可能直接调用Struts2的Action或通过DWR与服务器交互。这样的设计模式提高了代码的可测试性和可维护性,降低...

    EXTJS+S2SH+DWR

    2. S2SH:S2SH 是Struts2、Spring 和Hibernate的缩写,是一种流行的企业级Java Web开发框架。Struts2作为MVC框架负责处理请求和视图的呈现,Spring提供依赖注入和事务管理,而Hibernate则是一个对象关系映射(ORM)...

    ssh(struts,hiberate,spring)++dwr分页

    2. **后端处理**:Struts Action接收到请求后,根据请求参数(如当前页码和每页记录数)调用Spring管理的Service层方法。 3. **数据库查询**:Hibernate通过Session对象执行SQL查询,获取对应页的数据。 4. **数据...

Global site tag (gtag.js) - Google Analytics