2009年10月12日星期一

WebCenter_007:Portal开发指南之二:创建并注册Portlets

运行环境:JDeveloper 11.1.1.6.0 + Oracle Database 10g Express Edition 10.2.0.1。

完成《Create and Register Portlets》。
说明:文档是针对11.1.1.3的,我是使用JDeveloper 11.1.1.6.0重新做的。

学习要点:
Oracle WebCenter Framework 可以帮助我们创建WebCenter applications,Oracle PDK-Java portlets,以及标准的Java portlets (JSR 168)。

1. 创建Portlet应用
在应用模版中,要选择Portlet Producer Application。



(1)创建Oracle PDK-Java Portlet
New > Web Tier > Portlets > Oracle PDK-Java Portlet。







(2)创建Standards-based Java Portlet (JSR 168)
New > Web Tier > Portlets > Standards-based Java Portlet (JSR 168)。
选择Enable users to edit portlet content 和 Enable inter-portlet communication using Oracle WSRP V2 extensions。






2. 创建WebCenter 应用
前面已经创建了Portlet 应用,创建了2个Portlets,它们作为"Portlet Provider "。下面要创建WebCenter 应用,作为"Portlet Consumer "。
要想在Portal应用中使用portlet,必须先将该Portlet发布,然后在应用中注册该Portlet。
Standards-based Java Portlet (JSR 168) 发布到Oracle's portlet container后,将自动以WSRP的方式暴露。
(1)注册 Oracle PDK-Java Portlet Producer
JDeveloper中自带的WLS包含一些已经发布的Oracle PDK-Java Portlet Producer:http://localhost:7101/jpdk/providers

New > Web Tier > Portlets > Oracle PDK-Java Producer Registration。



注册成功后,在JDeveloper中可以看到:




(2)注册 WSRP Portlet Producer
Oracle WebCenter 支持Web Services for Remote Portlets (WSRP) 1.0 和 2.0。
JDeveloper中自带的WLS包含一些已经发布的WSRP Portlet Producer:
http://localhost:7101/portletapp/portlets/wsrp2?WSDL
New > Web Tier > Portlets > WSRP Portlet Producer 。



注册成功后,在JDeveloper中可以看到:


有关更多自带的WLS的信息,可以点击Help > WebCenter Preconfigured Server Readme 获得。

3. 为JSF Page增加Portlets
(1)拖放Lottery Portlet到页面上
(2)拖放Parameter Form Portlet到页面上
(3)拖放Parameter Display Portlet到页面上


4. 运行效果
(1)内置的Portlet

(2)自己创建的Portlet


Project 下载:MyWebCenterApp_PortletApp.7z

参考文献:
1. http://www.ibm.com/developerworks/cn/webservices/ws-wsrp/
2. http://dev2dev.weblogicfans.net/techdoc/2005060804.html
3. http://baike.baidu.com/view/1089531.html?fromTaglist
4. http://www.ibm.com/developerworks/cn/websphere/library/techarticles/yangjiang/0402_jsr168/jsr168portlet.html

没有评论: