成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用Netbeans部署和測試Portlets

開發 后端
本文使用Netbeans部署和測試Portlets,Portal是一個包含很多自定義的、可定制網頁的Web應用。具體的部署過程看下文。

Portal是一個包含很多自定義的、可定制網頁的Web應用。一個Portal應用里面包含有多個Portlets,而Porlets是一些web組件,可以嵌入到Portal應用里面。在上一篇文章《SOA概念的一些個人見解》中,我提到過SOA的服務包含表示層服務,這些Portlets可以看作是表示層的服務。下圖是一個Portal的應用的例子:

在這個網站中,我們可以看到,整個網站又多個小窗口組成,這些窗口可以最小化,最大化和關閉,這些小窗口就是一個個的Portlets。Portlets和Servelet一樣,需要一個容器來管理,Servelet需要一個WEB容器來管理,而Portlets則需要用一個Portal容器來進行管理。在這篇文章里,我將介紹如何在Netbeans里創建和管理Portlets。

Netbeans部署和測試軟件需求:

1、JDK1.6以上版本

2、OpenPortal Portlet Container 2.0 beta

3、Netbeans 6.0以上版本(我使用的是Netbeans 6.1),并安裝這些插件:jMaki Ajax Support,OpenPortal Portlet Container, Generic Portlet。

Netbeans部署和測試實驗步驟

1、把Portal容器配置到glassfish中:下載OpenPortal Portlet Container 2.0 beta,下載的文件是一個jar包,把該jar包的路徑拷貝到命令行中,用java -jar portlet-container-configurator.jar命令執行安裝,并選擇glassfish的安裝路徑,如下圖所示:

點擊OK即可進入下一步。

2、配置Portal服務器:打開"Service"窗口,右鍵單擊"server"-"Add Server",在彈出的窗口中選擇"OpenPortal Portlet Container 2",點擊下一步,這一步要選擇WEB容器,默認是GlassFish Server,在GlassFish Home中把路徑指向glassfish的安裝目錄即可,如:C:\Program Files\glassfish-v2ur2。另外還需要輸入admin的口令,默認是adminadmin。點擊下一步并完成即可配置好。

3、新建一個web工程:File - New - Web - Web Application,命名為MyPortlet,點擊下一步,其中Server選擇"OpenPortal Portlet Container 2.0",點擊下一步,選擇框架時,必須把Portlet Support及jMaki Ajax Framework選中,在選中Portlet Support時,注意要把"Create Portlet"選中,并把Portlet Class Name和Portlet Name都改為MyPortlet,注意,這兩個名稱必須一致,如下圖所示:

選中jMaki時,把CSS Style選為No CSS Style,如下圖所示:

4、工程建立完畢以后,我們展開WEB-INF文件夾,可以看到以下結構:

在一個Portlet里面,我們不再需要index.jsp,因此可以先把index.jsp刪除。Portlet的視圖是在WEB-INF下的jsp目錄下的MyPortlet_view.jsp。Netbeans IDE為我們生成了一個非常重要的源文件,那就是源包中的com.test.MyPortlet.java。這個java文件相當于Portlet的一個控制器,它繼承了GenericPortlet這個基類,doView,doEdit,doHelp方法分別會被GenericPortlet里的render()方法調用,為Portlet指定視圖、編輯頁面及幫助頁面。

5、右鍵單擊項目的"Build",生成項目并運行,你可以看到如下的頁面:

由于MyPortlet_view.jsp中只有一句:MyPortlet - VIEW MODE,因此,我們看到窗口中只有一句話:MyPortlet - VIEW MODE。注意MyPortlet窗口右上角的那些按鈕,都是可以使用的,大家可以嘗試點按一下它們,體驗一下Portlet的含義。

6、下面我們來為該Portlet添加一些動態和靜態的內容,包括RSS訂閱的功能。

首先,打開WEB-INF/jsp/MyPortlet_view.jsp,我們來在主視圖中添加一個多頁選項卡:
把MyPortlet - VIEW MODE這行去掉,在組件面板中拖一個Yahoo的ViewTab到jsp代碼中,在jsp代碼中生成了以下代碼:

  1. value="{items:[  
  2. {label : 'My Tab', content : 'Some Content'},  
  3. {id : 'bar', label : 'My Tab 2', include : 'test.jsp ', lazyLoad : true },  
  4. {label : 'My Tab 3', content : 'More Content', selected : true}  
  5. ]  
  6. }" /> 

點擊項目的右鍵,選擇Undeploy and deploy,再運行一下項目,你可以看到以下的頁面:

點擊MyTab2時,得到一個消息"Unable to load URL test.jsp .",那是因為MyTab2指向一個jsp文件,而我們并沒有創建這個文件。將MyPortlets_view.jsp的那段Widget的代碼用以下的替換:

現在,我們來創建3個jsp文件。點擊Web Pages的右鍵,注意,是Web Pages的右鍵,而不是WEB-INF/jsp的右鍵,因為我們現在不是要創建Portlet的視圖,而是在Portlet中引用其他的頁面,注意到上面這段代碼中,Tab里面的URL的上下文都是MyPortlet。分別創建download.jsp,fundamentals.jsp和whatsnew.jsp三個jsp文件。

打開download.jsp,用以下這段代碼來替換body里面的代碼:

  1. Downloads for New Developers 

 


Sun SITE下載中心

NetBeans IDE

MySQL Database

打開fundamentals.jsp,把正文部分的
JSP Page
去掉,從組件面板中拖一個jMaki Widgets的Blog List到正文body部分,生成如下代碼:

生成的代碼只是一些示例的文本,我們把代碼替換為以下:

 

  1. Java Technology Fundamentals  

如果你需要完成RSS訂閱的功能,必須把service設置為service="/xhp?id=rss",而每一個使用jMaki框架的應用,在應用上下文中(也就是web.xml)都配置了一個jmaki.xhp.XmlHttpProxyServlet的Servlet,其URL映射為/xhp。因此,我們在請AJAX代理時,一定要引入這個上下文。你可以修改xhp.json文件來自定義需要訂閱的內容。打開xhp.json,我們可以看到最后一項數據是:

  1. {"id": "rss",  
  2. "url":"http://weblogs.java.net/blog/ludo/index.rdf",  
  3. "xslStyleSheet": "rss.xsl"  

在這段代碼中,url指定了RSS訂閱的地址是http://weblogs.java.net/blog/ludo/index.rdf,這里,我們改為:
http://blogs.sun.com/JavaFundamentals/feed/entries/rss
另外,我們還需要在whatsnew頁面中訂閱另外一個RSS,因此,把原有的那段代碼用以下的替換:


 

  1. {"id": "rss", "url":"http://blogs.sun.com/JavaFundamentals/feed/entries/rss", "xslStyleSheet": "rss.xsl" }, {"id": "rss2", "url":"http://developers.sun.com.cn/blog/scut/feed/entries/rss", "xslStyleSheet": "rss.xsl" } 

注意,兩個id之間必須要有個逗號分隔開來。接下來,打開whatsnew.jsp,用以下靜態內容替換body部分的代碼:What's PopularThe Java Tutorial
Java Technology Fundamentals
Core Tech Tips
Easy Web Site Creation in the NetBeans IDE
The Java EE 5 Tutorial
What's New然后,在組件面板中拖一個Blog list出來,并替換為以下:7、配置Widget的樣式。打開resources/jmaki/bloglist/component.css,把height : 75px; 替換為height : 25px; 另外,在component.htm中,把
@{description}
刪掉,因為我們只需要保留標題,而不需要顯示詳細的內容。 8、重新部署項目,點擊項目右鍵,選擇Undeploy and deploy,再運行,就可以看到自己定制的Portlet了:

9、再新建一個Portlet,創建的順序與上一個Portlet相同,在編輯Portlet的View時,簡單地拖兩個widget進去進行調試,這里,我拖的是Yahoo的Search和Dojo的Clock,部署并運行,我們在Portlet管理頁面上就可以同時看到這兩個Portlet了:

【編輯推薦】

  1. NetBeans 6.0模塊快速入門教程
  2. Netbeans 6.0發布,支持Ruby、移動開發和集成的剖析器
  3. NetBeans 6.0預覽版發布 Sun再引驚呼
  4. NetBeans成為Ruby開發者的新伙伴(3)
  5. 八大技術牛人點評NetBeans 6.5
責任編輯:張燕妮 來源: csdn
相關推薦

2009-05-27 14:31:53

NetBeansEclipsPHP

2009-06-15 15:26:00

NetBeans連接數使用JSTL

2009-06-11 10:06:50

NetBeans使用

2009-06-09 13:02:30

NetBeans使用教程

2009-06-11 09:39:33

netbeans 生成Webservice

2009-06-12 11:36:42

Netbeans插件DTrace GUI

2009-06-15 14:28:00

NetBeansJavafx

2009-06-04 15:59:53

Netbeans操作MMySQL數據庫

2015-02-11 09:15:46

云部署嵌套虛擬化PaaS

2009-06-09 16:01:36

NetBeansIDEjava

2009-06-15 15:16:00

netbeans sw平臺開發

2023-06-29 08:00:40

藍綠部署策略Docker

2009-06-05 15:22:28

NetbeansEclipse

2011-05-24 10:30:31

PythonNetBeans ID

2009-08-07 10:27:45

Eclipse和Net

2020-03-24 07:00:00

UbuntuLinuxNetbeans

2020-03-20 18:19:05

UbuntuLinuxNetbeans

2009-10-09 13:22:47

Eclipse 3.6Netbeans 6.

2009-06-22 13:15:00

NetBeans XS

2009-06-09 16:41:46

NetBeans快捷鍵java
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 伊人久久成人 | 亚洲视频免费观看 | 亚洲精品久久久久久国产精华液 | 四虎成人av| 亚洲精品久久久久久下一站 | aaa精品| 成人欧美一区二区三区黑人孕妇 | 国产精品视频一区二区三区 | 日韩一级免费电影 | 黄色精品视频网站 | 亚洲欧美在线免费观看 | 成人国内精品久久久久一区 | 欧美综合自拍 | 国产精品久久777777 | 91视在线国内在线播放酒店 | 免费高潮视频95在线观看网站 | 成人a视频片观看免费 | 青青草av网站 | 一级在线毛片 | 国产精品成人69xxx免费视频 | 国产精品一区二区三 | 91精品国产高清一区二区三区 | 精品亚洲一区二区三区 | 自拍视频精品 | 亚洲视频免费 | 日本精品一区二区三区在线观看视频 | 国产资源在线观看 | 成人一区二区三区 | 国产精品1区2区3区 一区中文字幕 | 在线观看成人 | 中文字幕日韩一区 | 毛片一级电影 | 国产一区二区影院 | 特级毛片爽www免费版 | 女女百合av大片一区二区三区九县 | 日韩成人精品一区二区三区 | 婷婷91 | 日日夜夜精品视频 | 全部免费毛片在线播放网站 | 欧美精品一区三区 | 日韩欧美日韩在线 |