在 WebLogic Portal 8.1 中使用远程 Portlet Web 服务

来源:百度文库 编辑:神马文学网 时间:2024/05/24 03:01:08
在 WebLogic Portal 8.1 中使用远程 Portlet Web 服务 (WSRP) 浏览次数: 1235 时间:2004-03-16

作者:Alex Toussaint

什么是远程 Portlet Web 服务?
远程 Portlet Web 服务 (Web Services for Remote Portlets,WSRP) 是 OASIS 创建的 Web 服务标准,它允许在门户或其他中间 web 应用程序中提供可视化的、即插即用的、面向用户的 web 服务。BEA Systems一向是 OASIS 技术组WSRP 1.0标准的积极成员,为推动标准的进一步增强而不懈努力。
面向用户的 web 服务,或面向表示的 web 服务提供了应用逻辑和表示逻辑。标准 web 服务或面向数据的 web 服务包括业务逻辑,但缺少表示逻辑,因此需要每个客户端实现它自己的表示逻辑。
这种方法在大多数情况下都适用,但对于动态集成业务应用程序却不太适合。例如,如果要在商业门户中集成订单状态 web 服务,则需要编写代码以在门户中显示订单状态服务的结果。使用 WSRP,您可以将表示逻辑包含在 web 服务中。通过提供一组面向表示的服务,可以动态完成应用程序和服务的聚合。您不再需要为了实现集成而开发表示逻辑。只需在商业门户中预先确定的位置请求将订单状态服务显示为 portlet。
WSRP 在业内有着强大的支持。此标准涉及到的一些公司有:BEA、IBM、Oracle、SAP 和 Sun。有关 WSRP 的完整信息,请访问:www.oasis-open.org/committees/wsrp。
WSRP 的优点
·         不仅提供 Web 服务数据,还提供 Web 服务表示。
·         互操作性
·         可移植性
·         包含部署选项
·         受到行业中各大公司的支持
WSRP 和 BEA WebLogic Portal
WSRP 引入了 portlet Producer 和 protlet Consumer 的概念。使用 WebLogic Portal,您可以作为 WSRP Producer 和/或 WSRP Consumer 来启用项目。通过使用 WSRP,客户将能够在 Weblogic Portal 中作为 Producer 公开 portlet 应用程序。客户还能够以 Consumer 的身份在 Weblogic Portal 中集成 WSRP 相容 portlet,从而整合应用程序功能。最终用户将能够与 Consumer 交流,来查看集成的应用程序。简单的说,就是:
a.       Consumer 将 WSRP 兼容 portlet 整合到门户中,同时管理与最终用户的交互。
b.       Producer 管理基于 WSRP 并由 Consumer 调用的 portlet。

Producer 被设计为 portlet 的容器。Producer 提供一些服务,如:自我描述、标记、注册以及 Portlet 管理。Producer 能够有选择地管理 Consumer 的注册,并要求 Producer 在与 portlet 交互之前预先注册。注册在 Consumer 与 Producer 之间建立了一种关联。
Consumer 在本质上与代表最终用户的路由器是相似的。Consumer 将用户请求发送给适当的 Producer。Producer 依次处理这些请求并将结果发送回 Consumer。Consumer 将整合来自不同 Producer 的结果并将最终结果返回给用户。由于 Consumer 代表最终用户,因此在 Consumer 之间存在许多特定于用户的信息。正如我们所期望的,Consumer 提供了信息间隔,并在互动过程中保护特定用户所有互动的私有性。
WSRP 最强大的功能之一就是能够动态地使用来自其他服务器的应用程序。您可以设置一个 Consumer Portal,并对网络中可用的、来自 Producer Portal 的不同 portlet 进行动态查询和关联。结果将是一个全新的门户,它能够动态地集成新功能以简化业务流程和为门户用户授权。

集成后的门户可以进一步进行个性化设置和定制最终的门户并返回给用户。Consumer 在与 Producer 的通信过程中使用 portlet 句柄。如果 Producer 公开其“Portlet 管理接口”,则将允许 Consumer 定制基于 portlet 的特殊 WSRP。
下图阐释了启用了 WSRP 的门户之间的交互:

1.     Consumer 发现了一个 Producer。
2.     Consumer 和 Producer 之间建立了关联。
3.     Consumer 获得了 Producer 的所有功能。
4.     最终用户与 Consumer 建立了关联。
5.     Consumer 为用户整合页面与 portlet。
6.     最终用户向 Consumer 发送页面请求。
7.     Consumer 向 Producer 请求信息。
8.     Producer向 Consumer 提供逻辑和数据。
9.     最终用户看到整合页面。
BEA 实现概述
在 BEA 实现中展示的WSRP有四个主要步骤:
·         注册:Consumer 在 Producer 中注册。Producer 用唯一句柄识别每个 consumer。此句柄可帮助识别特定 consumer 可用的 portlet。
·         服务描述:描述显示 Producer 必须提供的信息。它可以让 Consumer 发现 Producer,还可列出可从 Producer 处获得的可用功能及属性。它还列出可用的 portlet。Producer 是 portlet 的资料库。
·         标记和用户交互:请求时间操作以启动或结束会话。它获得消息主体中返回的 portlet 标记。并向 portlet 提交用户的交互请求。
·         Portlet 管理:Producer 可能允许复制、定制和删除 portlet。定制功能允许门户管理员管理远程 portlet 的 portlet 参数选项。
基于 WSRP 的 portlet 的 portlet 生命周期包括开发时间功能和部署时间功能。
·         在开发时间中:
o        Producer 端:开发人员能够使用 Java 页面流公开其功能。使用 .portlet 文件将应用程序转化为 portlet,并配置任何与之相关的属性。开发人员其实不需要知道 WSRP。
o        Consumer 端:首先,开发人员必须添加一些 WSRP jar 以启动应用程序。然后,声明应用程序中将要使用的 可用Producer。他们可以从 Weblogic Workshop 创建一个基于 Producer 服务描述文件的代理 portlet。此时,他们可以选择一个特定的 portlet、配置一些选项和创建新的 portlet。然后,他们可以将基于 WSRP 的 portlet 拖放到门户中。
·         在部署时间中:
o        Producer 端:对于现有的应用程序,客户只需添加一些新的 jar 便可以启动 WSRP 功能。可能有一些与 Producer 相关的属性需要配置。此项操作也可能已经在开发时间使用 Weblogic Workshop 执行完毕。安装 WSRP 后,将对新的应用程序进行自动配置。
o        Consumer 端:这种体验可能与当前的“门户管理”相似。必须添加 WSRP jar 以支持 consumer 端的 WSRP。有两个新控件可用于支持远程 portlet:ProxyPortlets 和 ProxyPortletContent。
其他主题
·         会话管理
o        Producer-Consumer 会话是与用户会话连接在一起的。Producer 上的 Portlet 可能会根据配置共享数据。
o        Consumer 管理 Producer 所需的 cookie。
o        URL 重写是基于 WLP 8.1 URL 模板的。可能会在 Consumer 端或 Producer 端重写 URL。
·         标记的生成
o        URL 可能由 Producer 或 Consumer 进行编写。
o        Consumer 为 producer 重写提供了 URL 模板。
o        Producer 为 Consumer 重写在标记中插入了记号。
·         安全性
o        WSRP 规范中没有直接提到安全性。此规范鼓励开发人员使用现有的标准,如:WS-Security、SAML、XML Signatures 及 XML-Encryption。WSRP 1.0 可以与协议层的安全性 SSL 一起使用。
互操作性
BEA 在内部和外部进行了广泛测试,用以确保与其他 WSRP 标准参与者的互操作性:
·         内部:BEA 对提供的 WSRP 功能进行了全方位的测试。
·         外部:BEA 提供了一个可用的公共 Producer,以供其他 WSRP Consumer 测试。BEA 还构建了使用 IBM、Oracle 及 Citrix Producer 的 Consumer。
WSRP 预览技术工具包
BEA Weblogic Portal 小组已发布了可用的“WSRP 预览技术工具包”。您可以下载此工具包以了解更多有关 WSRP 如何应用于 Weblogic Portal 的信息。下面是一些使用此工具包可以提供的功能。
(下载用于 Weblogic Portal 的WSRP Preview Kit)

1. 从工具包中导入 Producer 样例后,应当有一个索引页面用于显示可用的样例 portlet。

2. 如果访问该索引页,您将会看到一个指向样例 portlet 和 WSDL 文件 (公开为 WSRP Producer) 的链接。

3. 此 WSDL 文件定义了服务位置。

4. 您可以从 Weblogic Workshop 中创建一个 Consumer 门户,然后用 Portlet Wizard 向此门户中添加“远程 Portlet”。

5. 在 Portlet Wizard 完成后,您就创建了 Consumer 节点与 Producer 节点之间的链接。然后,您便可以向门户中添加远程 portlet 了。

6. 您可以通过 Consumer 门户查看来自 Producer 的远程 portlet。
(下载用于 Weblogic Portal 的WSRP Preview Kit)
结束语
BEA WebLogic Portal 小组积极地投入到了 OASIS WSRP 技术委员会中。现在,您可以通过在 Weblogic Portal 8.1 使用预览技术,对 WSRP 相容 portlet 和应用程序的 Consumer 方案和 Producer 方案进行查看。
开发人员有一整套的工具,可以用于创建和部署 WSRP 资源。管理员将能够动态集成 portlet 和应用程序。业务用户将能够创建他们自己的应用程序和定制自己的业务经验。
有用的链接
WSRP 标准站点
http://www.oasis-open.org/committees/wsrp/
WSRP 概要
http://www.oasis-open.org/committees/download.php/1273/wsrp-overview.ppt
dev2dev BEA WebLogic Portal 页面:
http://dev2dev.bea.com/products/wlportal81/index.jsp
BEA WebLogic Portal 文档站点:
http://dev2dev.bea.com/products/wlportal81/index.jsp
BEA WebLogic Portal 产品页面:
http://www.bea.com/framework.jsp?CNT=index.htm&FP=/content/products/portal
本文原文URL: http://dev2dev.bea.com/products/wlportal81/articles/wsrp.jsp
_xyz