`
pipo
  • 浏览: 23049 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

JForum中对DWR的应用

阅读更多

转载:http://www.jeedao.net/posts/list/25.page

  JForum 2.1.7版本中少量的使用了DWR,应该是JForum开始尝试使用Ajax吧。JForum中仅“预览帖子”和后台管理系统的“邮件发送测试”两个功能使用了DWR。
  查看\WEB-INF\dwr-jforum.xml文件你会发现这里只定义了一个java类“net.jforum.util.ajax.AjaxUtils”。dwr-jforum.xml是JForum中的DWR配置文件,你可以在里面增加更多的DWR调用功能。
  现在以“预览帖子”功能为例说明一下JForum中对DWR的应用,打开AjaxUtil.java文件,里面有这样一个函数:
Code:
<!---->

public static Post previewPost(Post p)
         {
                 if (p.isHtmlEnabled()) {
                         p.setText(SafeHtml.makeSafe(p.getText()));
                 }
                 
                 p = PostCommon.preparePostForDisplay(p);
                 
                 return p;
         }


  这是服务器端代码。

  再打开\templates\default\post_form.htm文件,留意以下代码:
Code:

<script type="text/javascript" src="${contextPath}/dwr/interface/AjaxUtils.js?${startupTime}"></script>
 <script type="text/javascript" src="${contextPath}/dwr/engine.js?${startupTime}"></script>


  这是由DWR动态生成的javascript脚步程序。

  打开/templates/default/js/post.js文件,看以下代码:
Code:

function previewMessage()
 {
         var f = document.post;
 
         if (supportAjax()) {
                 var p = { 
                         text:f.message.value, 
                         subject:f.subject.value, 
                         htmlEnabled:!f.disable_html.checked, 
                         bbCodeEnabled:!f.disable_bbcode.checked, 
                         smiliesEnabled:!f.disable_smilies.checked 
                 };
 
                 AjaxUtils.previewPost(p, previewCallback);
         }
         else {
                 f.preview.value = "1";
                 f.submit();
         }
 }
 
 function previewCallback(post)
 {
         document.getElementById("previewSubject").innerHTML = post.subject;
         document.getElementById("previewMessage").innerHTML = post.text;
 
         document.getElementById("previewTable").style.display = '';
 
         var s = document.location.toString();
         var index = s.indexOf("#preview");
 
         if (index > -1) {
                 s = s.substring(0, index);
         }
 
         document.location = s + "#preview";
 }


  previewMessage()函数调用AjaxUtils.previewPost(p, previewCallback)通过DWR引擎调用后台java类的功能,并设置了回调函数previewCallback。服务器返回信息将通过previewCallback(post)函数处理。
  以前没有研究过DWR,不过现在看JForum里面的应用觉得DWR应用起来也挺简单的。

分享到:
评论

相关推荐

    Jforum论坛数据库架构

    Jforum论坛数据库架构Jforum论坛数据库架构

    jforum论坛图片资源

    用于配置中文jforum,里面包含各种语言的图片文件,将其中的zh_CN目录复制到jforum安装目录下的templates\default\images。就可以显示中文图片

    jforum功能说明

    JForum是著名的开源论坛,支持多达数十种的多国语言,其中包括简体中文。JForum功能强大,界面美观,加上代码结构清晰,而且采用的是BSD授权...在这里只是对JForum的框架进行简单的介绍以利于利用JForum进行二次开发。

    JForum3 jforum java 开源论坛 论坛

    JForum3 jforum java 开源论坛 论坛

    JForum_SSO_-_JForum单点登陆原理与配置

    对于我们已有的WEB应用中的用户,若该用户已经登陆,并通过 联结迁移到JForum页面时,JForum要能够识别该用户已经登陆(不需要二次登陆)才不会让用户感到别扭(对用户来说,就好像使用的是同一个系统似的)。...

    JForum论坛数据库表结构.rar

    1、附件关系表JFORUM_ATTACH 2 2、附件详细信息表JFORUM_ATTACH_DESC 2 3、附件配置限定关系表JFORUM_ATTACH_QUOTA 2 4、封锁表JFORUM_BANLIST 2 5、标识表JFORUM_BANNER 3 6、书签表JFORUM_BOOKMARKS 3 7、...

    jforum3.0所需要的jar包

    jforum3.0所需要的jar包

    jforum漏洞利用源代码

    jforum漏洞利用源代码

    Jforum数据库

    JForum - Java论坛系统 数据库表结构,如:附件关系表JFORUM_ATTACH,附件详细信息表JFORUM_ATTACH_DESC,用户分组表JFORUM_GROUPS等表结构说明,如帖子表JFORUM_POSTS说明: 名称 字段名 字段类型 字段说明 帖子...

    JForum 2.1.9 源码包.zip

    JForum 是采用Java开发的功能强大且稳定的论坛系统。它提供了抽象的接口、高效的论坛引擎以及易于使用的管理界面,同时具有完全的权限控制、多语言支持(包括中文)、高性能、可自定义的用户接口、安全、支持多...

    jforum开源的论坛文档

    jforum开源的论坛文档jforum开源的论坛文档jforum开源的论坛文档

    JForum2.6.2.rar

    1、包含jforum2.6.2的war包、源码包 2、war包可直接放在tomcat的webapps目录下 3、2.6.2版本里面自带汉化功能,在http://localhost:8080/jforum/install.jsp安装时,注意选择中文

    JForum3 完整项目

    jforum 完整源代码,从svn上 导出 没有任何修改

    JForum数据库ER图

    JForum 开源论坛系统的 数据库ER图,很详细。

    JForum v2.1.9 源码版

    JForum 是采用Java开发的功能强大且稳定的论坛系统。它提供了抽象的接口、高效的论坛引擎以及易于使用的管理界面,同时具有完全的权限控制、多语言支持(包括中文)、高性能、可自定义的用户接口、安全、支持多...

    jforum安装部署指南

    jforum安装部署指南:修改对应的数据库文件JFORUM\WEB-INF\config\database下面。例如:mysql.properties修改其中的数据库信息

    jforum3源代码 数据库

    jforum3源代码数据库

    jforum说明文档 源码解析 单点登录 jforum缓存

    jforum的开发文档,以及源码解析 数据库 重要配置文件和包,缓存 权限控制 单点登录

    jforum3源代码

    JForum是著名的开源论坛,支持多达数十种的多国语言,其中包括简体中文(。JForumJForum功能强大,界面美观,代码结构清晰

    Jforum2.19

    jforum2.19在Myeclipse下发布的源文件和相关的jar包,直接添加在myeclipse中就能使用

Global site tag (gtag.js) - Google Analytics