Giao din portlet

Một phần của tài liệu xay dung cms module cho he thong intranet cua cong ty tma-lu (Trang 56 - 63)

Giao di n Portlet khai báo các API c b n nh t c a m t Portlet. M i Portlet đ c xây d ng đ u ph i hi n th c hoá tr c ti p ho c gián ti p giao di n Portlet.

L p GenericPortlet hi n th c hoá giao di n Portlet và đ nh ngh a các ch c n ng c b n nh t mà m t Portlet c n có. Do đó, khi xây d ng Portlet, l p trình viên nên m r ng tr c ti p ho c gián ti p l p GenericPorlet này.

M t Portlet đ c qu n lý thơng qua chu trình s ng c a nó, b t đ u t lúc Portlet đ c t i lên, t o th hi n c a nó và kh i t o, ho t đ ng đ ph n h i yêu c u c a ng i s d ng đ n lúc nó đ c lo i b . Các ph ng th c đ c g i đ n trong chu trình s ng c a Portlet là:

• G i ph ng th c init trong quá trình kh i t o c a Portlet

• N u yêu c u do máy khách g i t i là yêu c u hành đ ng (Action Request) thì ph ng th c processAction đ c g i. N u yêu c u do máy khách g i t i là yêu c u bi u hi n (Render Request) thì ph ng th c processAction đ c g i.

Phát tri n CMS module cho h th ng Intranet cu Công ty TMA

• Khi Portlet Container xác đnh m t Portlet khơng cịn s d ng n a thì g i đ n ph ng th c destroy c a Portlet đó. Khi ph ng th c destroy đ c g i thì Portlet s gi i phóng tài nguyên h th ng mà nó đang s d ng và l u l i tr ng thái hi n th i c a nó.

5. Portlet URL

M t Portlet có th t o ra URL tham chi u đ n chính Portlet đó. Khi đó các URL này đ c g i là Portlet URL.

t o ra m t Portlet URL thì Porlet c n ph i s d ng đ i t ng PorletURL. N u ph ng th c createActionURL đ c g i thì s t o ra m t URL hành đ ng và n u ph ng th c createRenderURL đ c g i thì t o ra m t URL trình di n.

6. Portlet Mode

Ki u Portlet xác đ nh ch c n ng mà Portlet hi n đang th c hi n. Thông th ng, Portlet th c hi n các tác v và t o ra n i dung tùy thu c vào ch c n ng hi n th i. Ki u Portlet cho bi t nh ng tác v nào m t Portlet c n th c hi n và nh ng n i dung nào Portlet c n ph i t o ra.

Có 3 ki u Portlet đ c quy đnh là: • VIEW

̇ Ch c n ng chính c a Portlet khi s d ng ki u VIEW là t o ra n i dung cho bi t tr ng thái c a Portlet

̇ L p trình viên s hi n th c hóa ki u VIEW b ng cách đnh ngh a l i ph ng th c doView c a l p GenericPortlet.

Phát tri n CMS module cho h th ng Intranet cu Công ty TMA

̇ M i Portlet đ u ph i h tr ki u VIEW • EDIT

̇ Trong ki u EDIT, m t Portlet s cung c p n i dung và c u hình các thành ph n c a nó đ ng i s d ng có th t i u hóa h at đ ng c a Portlet

̇ L p trình viên s hi n th c hóa ki u EDIT b ng cách đnh ngh a l i ph ng th c doEdit c a l p GenericPortlet.

̇ M i Portlet không nh t thi t ph i h tr ki u VIEW • HELP

̇ Trong ki u HELP, Portlet cung c p nh ng thông tin giúp đ ng i s d ng v Portlet. Nh ng thơng tin này có th là nh ng thơng tin chung v tồn b Portlet ho c là các giúp đ c m ng c nh (Context- sensitive help)

Các h ng s t ng tr ng cho 3 ki u Portlet đ c khai báo trong l p PortletMode

7. Window State

Tr ng thái c a s cho bi t kho ng không gian trên trang Web Portal dành cho n i dung c a Portlet.

Có 3 tr ng thái c a s đ c đnh ngh a :

• NORMAL: cho bi t Porlet có th chia s trang Portal v i các Portlet khác. Ngoài ra, tr ng thái này còn cho bi t gi i h n hi n th c a thi t b do đó Portlet s đi u ch nh kích th c phù h p v i vùng hi n th .

Phát tri n CMS module cho h th ng Intranet cu Cơng ty TMA

• MAXIMIZED: cho bi t ch có m t Portlet hi n th trên trang Portal ho c Portlet đ c u tiên hi n th n i dung nhi u h n các Portlet còn l i.

• MINIMIZED: Cho bi t n i dung c a Portlet ch đ c hi n th ít nh t có th đ c ho c không đ c hi n th .

Các tr ng thái c a s đ c đnh trong l p WindowState.

8. Portlet Request

M t yêu c u g i đ n Portlet ch a các thơng tin v u c u t phía máy khách, các tham s c a yêu c u, n i dung d li u yêu c u, ki u Portlet, tr ng thái c a s …

Yêu c u đ c đ i di n b i m t đ i t ng và đ i t ng này đ c truy n vào nh là đ i s c a ph ng th c processAction hay render.

M i đ i t ng yêu c u ch có th h at đ ng trong ph m vi c a m t ph ng th c processAction hay render

Các ch c n ng c n thi t c a đ i t ng PortletRequest đ c khai báo trong giao di n PortletRequest.

9. Portlet Response

M t ph n h i c a Portlet bao g m nh ng thông tin đ c t o ra b i Portlet g i tr v cho Portlet Container d a trên yêu c u đ c g i đ n nh : s thay đ i ki u Portlet, tiêu đ , n i dung… Portlet Container s s d ng nh ng thông tin này đ t o ra ph n h i đ n ng i s d ng, thông th ng là m t trang Web Portal.

Phát tri n CMS module cho h th ng Intranet cu Công ty TMA

M i đ i t ng ph n h i ch có th h at đ ng trong ph m vi c a m t ph ng th c processAction hay render

Các ch c n ng c n thi t c a đ i t ng Portlet Response đ c khai báo trong giao di n PortletResponse.

10. Portlet Preferences

Portlet thơng th ng đ c c u hình cho phù h p v i t ng ng i s d ng. Các thơng tin v c u hình c a Portlet đ c g i là Portlet Preference. Và Portlet Container s ch u trách nhi m l u gi nh ng thơng tin c u hình này.

Portlet có th truy c p vào các thơng tin c u hình c a nó thơng qua giao di n PortletPreferences. Và Portlet ch có th thay đ i các thơng tin v c u hình c a nó bên trong ph ng th c processAction.

nh ngh a Portlet xác đnh các thu c tính preference mà m t Portlet s d ng. nh ngh a này bao g m các giá tr kh i t o và xác đnh xem thu c tính này có ph i là thu c tính ch đ c hay không.

11. Caching

Vi c l u các n i dung c n s d ng vào vùng nh t m th i đ c th c hi n nh m m c đích rút ng n th i gian x lý c a Portlet, đ ng th i c ng rút ng n th i gian x lý c a Server.

c t Portlet xác đnh c ch h t h n vi c l u tr n i dung l u t m th i này. C ch này h at đ ng tùy thu c và t ng Portlet và t ng ng i s d ng Portlet. N i

Phát tri n CMS module cho h th ng Intranet cu Công ty TMA

dung đ c l u tr t m th i không đ c chia s gi a các ng i s d ng khác nhau đang s d ng đ ng th i cùng m t Portlet.

M t Portlet mu n t ng th i gian x lý b ng cách s d ng c ch l u tr t m th i n i dung c n ph i đnh ngh a th i gian h t h n n i dung l u t m th i (tính b ng đ n v giây) trong đ c t tri n khai c a nó. Ví d sau đây cho bi t m t Portlet mu n n i dung c a nó đ c l u tr t m th i v i th i gian h t h n là 300 giây.

... <portlet> ... <expiration-cache>300</expiration-cache> ... </portlet> ... M t Portlet n u đã đnh ngh a th i gian h t h n l u tr d li u t m th i c a nó trong đ c t tri n khai c a nó v n có th đ c l p trình viên thay đ i

Th i gian h t h n c a vi c l u tr t m th i này có th đ c thay đ i b ng cách thay đ i thu c tính c a đ i t ng RenderResponse.

N u th i gian h t h n này đ c gán b ng 0 thì vi c l u tr d li u t m th i b b qua đ i v i Portlet. N u giá tr này đ c gán b ng -1 thì các n i dung đ c l u t m th i c a Portlet s không bao gi b h t h n.

Phát tri n CMS module cho h th ng Intranet cu Công ty TMA

N u m t Portlet không đnh ngh a th i gian h t h n c a d li u l u tr t m th i trong đ c t tri n khai c a nó thì vi c thay đ i giá tr th i gian này trong đ i t ng RenderResponse s khơng có tác d ng do s b Portlet Container b qua.

N u n i dung c a Portlet đ c l u tr t m th i và ch a h t h n, đ ng th i khơng có m t yêu c u nào đ n Portlet t phía ng i s d ng thì Portlet Container s s d ng n i dung đ c l u tr t m th i khi c n thi t.

N u n i dung c a Portlet đ c l u tr t m th i và có yêu c u đ n Portlet t phía ng i s d ng thì Portlet Container s khơng s d ng n i dung t m th i đ c l u tr mà s g i đ n ph ng th c x lý yêu c u c a Portlet

12. ng d ng Portlet

12.1 Các thành ph n c a ng d ng Portlet

ng d ng Portlet là m t ng d ng Web nên ngoài vi c bao g m Portlet và đ c t tri n khai Portlet, nó cịn có th ch a các thành ph n khác nh : Servlet, trang JSP, các l p… Do đó, bên c nh các thơng tin v ng d ng Portlet, nó cịn ch a đ ng thông tin v các thành ph n đ c đ a vào ng d ng Portlet.

12.2 C u trúc cây th m c

M t ng d ng Portlet c ng có c u trúc cây th m c đ c t ch c gi ng nh m t ng d ng Web. Tuy nhiên có m t s khác bi t nh sau:

• Có thêm t p tin /WEB-INF/portlet.xml là t p tin đ c t tri n khai c a Portlet.

Phát tri n CMS module cho h th ng Intranet cu Cơng ty TMA

• Các l p đ c s d ng cho ng d ng Portlet và các tài nguyên khác đ c truy c p b i ng d ng Portlet c n ph i đ c l u trong th m c /WEB-INF/classes ho c trong các t p tin JAR đ c l u trong th m c /WEB-INF/lib.

12.3 T p tin l u tr c a ng d ng Portlet

M t ng d ng Portlet c ng đ c đóng gói nh là m t ng d ng Web. Ngh a là s d ng d ng WAR (Web Application Archive) khi tri n khai ng d ng.

Một phần của tài liệu xay dung cms module cho he thong intranet cua cong ty tma-lu (Trang 56 - 63)

Tải bản đầy đủ (PDF)

(167 trang)