使用Dojo和WebSphere Portal实现客户端Interportlet Commun

引言

许多门户开发人员已使用 WebSphere Portal 创建用于共享事件和数据以增强用户体验的协作 Portlet。例如,在一个 Portlet 中提交的选择可导致更新的信息在多个相关的 Portlet 中显示,从而有助于这些 Portlet 在其表示中保持同步。此功能在服务器上实现,依赖于 Portlet 将操作请求提交到服务器,以使该服务器可以在页面被刷新之前执行数据传输。

然而,当您将 Ajax 功能添加到 Portlet 时,此方法就变得无人问津了,因为 Ajax 功能使您可以动态更新由 Portlet 显示的数据,而不用提交操作请求或刷新页面。本文将说明如何使用 Dojo JavaScript 工具包在浏览器中共享 Portlet 之间的数据和事件,该工具包可为动态更新的 Portlet 提供协作支持。

什么是 Dojo?

Dojo 是开源 JavaScript 工具包,可用于开发动态 Web 应用程序。Dojo 的许多库中都包含 Ajax 支持、DOM 操作工具、事件处理系统和可自定义的小部件集。Dojo 将这些库与一个灵活的打包系统组合在一起,这样,您就可以只导入所需的库;Dojo 自动地为您解决了所有库与库之间的依赖关系。

使用 Dojo

动态打包系统正是使用 Dojo 库与使用传统 JavaScript 包含的区别所在。执行两个步骤就可以包括 Dojo 库。您将执行以下两个步骤:

包括 Dojo 引导。<script type="text/javascript" src="/path/to/dojo/dojo.js">
</script>

标识您的应用程序所需要的 Dojo 库。您使用 dojo.require 语句来包括 Dojo 小部件的管理功能 (dojo.widget.*) 和 Button 小部件 (dojo.widget.Button)。

<script type="text/javascript">
dojo.require("dojo.widget.*");
dojo.require("dojo.widget.Button");
</script>

dojo.require 语句可指定您将要在应用程序中使用的 Dojo 资源。Dojo 引导将对页面进行扫描以查找这些 dojo.require 语句,并且将动态包括对应的库以使这些资源可供使用。动态加载进程还处理 Dojo 库之间的所有依赖关系,因此,您只需针对所使用的资源直接添加 require 语句。

结合使用 Dojo 和 WebSphere Portal

Dojo 的独特加载策略为 Portlet 开发人员出了一道难题。Dojo 引导 dojo.js 只应在 HTML 页面中包括一次。取决于浏览器类型,如果包括 dojo.js 两次或两次以上,则会导致 JavaScript 错误并向最终用户报告这些错误。在 WebSphere Portal 中避免出现该问题的最简单的方式是:在您的主题的 JSP 中包括 dojo.js,然后根据需要在您的主题和 Portlet JSP 中放置 dojo.require 语句。

然而,我希望读者在学习了示例应用程序后,能够在不需要修改其主题的情况下部署 Portlet。因此,我已在 Portlet 项目中包括 Dojo 库,并且用 JavaScript 编写了条件加载器。

条件加载器包含在 dojoLoader.jsp 文件中:

<script type="text/javascript">	var path = "<%=request.getContextPath() %>/dojo/dojo.js";	if(typeof dojo=="undefined") {		document.write('<S');		document.write('CRIPT type=\"text/javascript\" src=\"');		document.write(path);		document.write('\" ><\/S');		document.write('CRIPT>');	} </script>

此代码检查 dojo JavaScript 对象是否存在,如果未定义该对象,此代码将插入脚本,以便将 dojo.js 包括在当前 HTML 文档中。用于执行此操作的 JavaScript 代码不太好理解,因此,必须对字符串形式的 <script> 或 </script> 的所有实例进行拆分;否则,某些浏览器会尝试将其解析为脚本的实际的起始及结束语句。而采用修改主题 JSP 这一解决方案就会简单很多。因此,请只在无法修改主题 JSP 的情况下才使用此条件加载器技术。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索javascript
, dojo
, require
, 语句
, js动态添加刷新
, portlet
, javascript动态库
, require同步加载
js动态添加事件
portal portlet、portal和portlet、websphere portal、ibm websphere portal、websphere portal教程,以便于您获取更多的相关知识。

时间: 2025-01-25 12:30:03

使用Dojo和WebSphere Portal实现客户端Interportlet Commun的相关文章

IBM WebSphere Portal配置向导基于Dojo的Web端工具

而且最为强大的是,在这个版本中引入了工作流的概念,那些需要很多步骤才能完成的配置 ( 例如:搭建集群 ) 再不用痛苦,只需根据模板逐步完成即可. 相信新版的配置向导助手会大大提高用户的工作效率,简化配置流程. WebSphere Portal 里的配置向导一向是用户所喜爱的工具,它可以http://www.aliyun.com/zixun/aggregation/17185.html">帮助用户简化配置过程,原本需要用户自己手工修改配置文件中的大量配置参数,现在只需要跟随配置向导一步一步填

WebSphere Portal 8.0的新特性:全新的配置向导助手

WebSphere Portal 配置向导的背景介绍 WebSphere Portal 里的配置 向导一向是用户所喜爱的工具,它可以帮助用户简化配置过程,原本需要用户自 己手工修改配置文件中的大量配置参数,现在只需要跟随配置向导一步一步填写 简单的信息就行了.简单来说配置向导主要是从几个方面来简化配置流程的: 针对用户所要完成的任务,配置向导将此任务所有相关的配置参数都挑选了 出来,并按照它们之间的关系分组放在不同的步骤中.这样避免了让用户自己从 纷杂的上百个配置参数判断哪些参数是需要修改,哪些

IBM WebSphere Portal中的Web 2.0主题与皮肤定制开发介绍

在众多门户项目中,满足用户对 UI 的需求是项目成败的关键因素之一.良好的界面设计不但可以使用户操作更加便捷,而且能够使得应用 呈现条理更加清晰,从而提高用户的生产效率.WebSphere Portal 6.1 版本中新增加的 Web 2.0 主题特性通过 AJAX 的方式进行页面的客户 端页面聚合.相比起原来的服务器端聚合,这种方式在性能与用户体验上有了大幅度的提升.基于此,本文希望对 Web 2.0 主题皮肤框架的定 制与开发方面作全面的介绍.读者通过阅读本文可以快速开展 Web 2.0 主

将一个混合移动应用程序与WebSphere Portal页面相集成(上)

本文介绍如何结合使用 http://www.aliyun.com/zixun/aggregation/13387.html">WebSphere Portal 和 Worklight,使企业用户能够为他们的 Web 社区提供多渠道站点支持.文中提供了一个练习,演示了如何使用 IBM Worklight Developer Edition 5.0 来构建一个用于查看 WebSphere Portal 页面的混合 Android 应用程序. 移动渠道已成为销售.营销等许多行业的一个重要战略渠道

集成Adobe Flex和IBM WebSphere Portal

简介:借助 Rich Internet Application(RIA)的理念,Adobe Flex 将您带到了 Web 应用 程序开发的更高级别,而 IBM WebSphere Portal则提供了复合工具来构建基于 SOA 的灵 活解决方案.但是如何将这二者结合起来呢?一种方法是直接将 Flex 集成到WebSphere Portal 服务器 .本文带您亲历面向 WebSphere Portal 快速构建基于富客户端和组件的 Flex 应用程序的全过程,并 提供了一种很有效的方法来减少 WA

结合使用Ajax和WebSphere Portal

引言 本文向您介绍将 Ajax 集成到门户应用程序的方法.因为已经有了几篇对 Ajax 进行一般性介绍的文章,所以我们假设您了解 Ajax 的基础知识:也就是说,您已经知道了什么是 Ajax.它的名称的由来.它并不是一项新的技术这一事实,以及 Google 如何将此技术带入全球每个经理和技术专家的思维模式.我们的目的是向您提供有用的信息,这些信息与在门户应用程序中使用 Ajax 相关,所以当 CTO 的办公室里的人员询问您的门户应用程序是否启用了 Ajax 时,您可以理直气壮地说:"当然!&qu

如何在WebSphere Portal中与其他portlet进行协同工作

本文基于作者的实践经验,详细介绍将这两款产品进行集成的详细步骤,并为读者展示在集成之后如何在 WebSphere Portal 8.0 中使用 Forms Application,以及 Forms Experience Portlet 如何在 WebSphere Portal 中与其他 portlet 进行协同工作. 门户 (Portal) 这里是指一个应用框架,它将各种应用系统.数据资源和 Web 资源集成到一个信息管理平台之上,并以统一的用户界面提供给用户,使企业可以快速地建立企业对客户.企

IBM WebSphere Portal高级缓存内容转移数据网格中的性能收益

WebSphere eXtreme Scale 和 XC10 缓存设备提供了 dynacache 实现,它将缓存的内容存储在一个弹性的数据网格中,而不使用默认的 dynacache 实现(后者将缓存的内容存储在 IBM http://www.aliyun.com/zixun/aggregation/13387.html">WebSphere Application Server 堆空间中或磁盘上).本文介绍将 WebSphere Portal 高级缓存内容转移到一个 XC10 缓存设备所托

为WebSphere Portal构建Ajax Portlet

简介:在我们的前一篇文章结合使用 Ajax 和 WebSphere Portal 中,我们讨论了在门户应用程序中 使用 Ajax 时的一些问题和设计关注事项.在本教程中,我们将把新发现的知识投入使用,并创建一个 Ajax Portlet 应用程序.为了增加趣味,我们决定构建一个大量使用 Ajax 和 DHTML 的 Portlet.这 可以使您初步了解该技术的功能,同时还为您提供一个用于浏览数据库的有用工具.虽然该应用程序的 大部分都是已经编写好的,但是您将负责填补未编写好的部分以使其正常运行.