3. Cách thc thc hin
3.2 Chun hoá d án J2EE theo chun JSR 168
Sau quá trình tìm hi u chu n JSR 168, chúng ta nh n th y c n ph i s a đ i d án J2EE này đ tuân th theo chu n JSR 168. Có ngh a là ngồi các th m c và t p tin c a d án J2EE, chúng ta c n ph i s p x p l i các thành ph n c a d án và s a đ i t p tin build.xml (t p tin s d ng ngôn ng k ch b n ant (http://apache.org/) đ h tr
Eclipse trong vi c biên d ch d án) đ t o ra gói magnolia.war có c u trúc nh sau : magnolia.war |------- html (th m c ch a các t p tin JSP) |------- WEB-INF |------- tld (th m c ch a th vi n các th ) |------- classes |------- config |------- portlet.xml
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
|------- liferay-portlet.xml
|------- liferay-display.xml
|------- web.xml
Hình v sau s minh ho c u trúc t ch c này trong d án đ c t o ra trên
Eclipse
Hình 30: C u trúc d án J2EE c a h CMS
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA <portlet> <portlet-name>magnolia_id</portlet-name> <display-name>magnolia</display-name> <portlet-class>com.liferay.portlet.JSPPortlet</portlet-class> <init-param> <name>view-jsp</name> <value>/index.jsp</value> </init-param> <expiration-cache>0</expiration-cache> <supports> <mime-type>text/html</mime-type> </supports> <portlet-info> <title>magnolia</title> <short-title>magnolia</short-title> <keywords>magnolia</keywords> </portlet-info> <security-role-ref> <role-name>Guest</role-name> </security-role-ref> <security-role-ref> <role-name>Power User</role-name> </security-role-ref> <security-role-ref> <role-name>User</role-name> </security-role-ref> </portlet>
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
T p tin liferay-portlet.xml có n i dung nh sau :
<portlets>
<portlet id=“magnolia_id” struts-path=“magnolia” use-default- template=“true” />
</portlets>
Ngoài ra, n i dung c a t p tin liferay-display.xml nh sau :
<display>
<category name=“category.cms”>
<portlet id=“magnolia_id” />
</category>
</display>
Sau cùng, n i dung c a t p tin web.xml nh sau:
<context-param> <param-name>company_id</param-name> <param-value>liferay.com</param-value> </context-param> <listener> <listener-class> com.liferay.portal.servlet.PortletContextListener </listener-class> </listener>
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA ....... <taglib> <taglib-uri>http://java.sun.com/portlet</taglib-uri> <taglib-location>/WEB-INF/tld/liferay-portlet.tld</taglib-location> </taglib> 3.3 Tích h p h th ng b o m t
Sau khi tìm hi u ki n trúc h th ng c a portal hi n t i và ki n trúc h th ng c a Magnolia CMS, chúng ta nh n th y r ng đ tích h p h th ng b o m t c a Magnolia vào h th ng b o m t c a portal, chúng ta c n ph i th c hi n các s a đ i ch y u trên package info.magnolia.cms.security c a Magnolia CMS. các package khác c a
Magnolia CMS c ng c n đ c s a đ i, nh : info.magnolia.logging, info.magnolia.module.adminInterface, info.magnolia.cms.servlets… Ngoài ra, chúng ta
c ng c n ph i s a đ i các t p tin JSP s d ng các ch c n ng c a các package v a nêu và chu n hóa các trang JSP theo chu n JSR 168.
Ti p theo, chúng ta s d ng các APIs đ c cung c p b i các l p c a portal, nh : CompanyLocalManagerUtil, UserManagerUtil, PrincipalBean, …đ l y các thông tin ng i s d ng đ c cung c p b i h khi đ ng nh p vào portal. Các thông tin này đ c s d ng đ đ ng nh p vào CMS thay vì s d ng các thông tin đ ng nh p đ c l y lên t Repository c a Magnolia CMS.
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
Qua đ tài này, chúng tơi có thêm nhi u ki n th c và kinh nghi m trong vi c phát tri n m t h CMS và tích h p m t thành ph n vào m t h th ng thơng tin có s n.
Ngồi ra, chúng tơi cịn có thêm kinh nghi m trong vi c xây d ng các h CMS d i d ng m t thành ph n hay m t ng d ng đ c l p. Các h th ng này có th ng d ng vào các doanh nghi p hay các t ch c có nhu c u, đ c bi t là các toà so n báo đi n t .
Sau 6 tháng th c t p t i công ty TMA, chúng tôi h c h i thêm nhi u kinh nghi m th c t trong m t môi tr ng làm vi c chuyên nghi p và đ y n ng đ ng.
Thêm vào đó, chúng tơi có c h i nâng cao kh n ng nghiên c u và ng d ng các ki n th c nghiên c u đ c vào trong th c t . Chúng tôi hi u rõ h n v các m t m nh và các gi i h n c a vi c s d ng các công c mã ngu n m và mi n phí, nh : Linux, Eclipse, JBoss, Lomboz, J2SDK, MySQL, Liferay, Magnolia…
V c b n lu n v n đã th c hi n t t các yêu c u đ ra ban đ u c a cơng ty . • Xây d ng thành công h CMS d i d ng m t portlet đ tích h p vào
portal hi n t i c a cơng ty TMA.
• Tích h p h th ng b o m t c a CMS vào h th ng b o m t c a TMA portal.
• H CMS đ c xây d ng đ c s d ng nh làm m t n i ch a n i dung t p trung c a các trang web trong các module c a h th ng Intranet. • H CMS đ c xây d ng d i d ng m t module đ có th d c s d ng
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
Tuy nhiên do gi i h n v th i gian và hi u bi t, chúng tôi xây d ng h th ng CMS này v n còn m t s đi m gi i h n và c n đ c c i thi n trong các phiên b n ti p theo.
• H th ng CMS l u tr d li u trong h th ng t p tin c a h đi u hành. i u này t o nhi u b t ti n khi d li u l u tr c a h th ng ngày m t t ng lên.
• Ch a có th i gian th nghi m module CMS v i các module khác trong h th ng Intranet c a Công ty.
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
Nh đã trình bày trên, module CMS l u tr d li u trong h th ng t p tin c a h đi u hành. h th ng h at đ ng hi u qu h n, nó c n đ c chuy n sang l u tr d li u b ng m t c s d li u quan h .
H th ng b o c a module CMS c n đ c ti p t c phát tri n đ có th t đ ng c p nh t ng i s d ng khi nh ng ng i s d ng trong h th ng Intranet có s thay đ i.
H th ng c n đ c phát tri n thêm ch c n ng l u các phiên b n c a n i dung (đi u này đ c h tr m nh b i chu n JSR 170) giúp cho n i dung các trang web có th đ c ph c h i l i các tr ng thái tr c đó c a nó.
Bên c nh đó, v i qui mơ ngày càng m r ng c a Công ty, module CMS c n đ c phát tri n thêm các tính n ng khác nh h tr chu n RSS đ giao ti p v i các web site khác.
Ngoài các yêu c u v x lý, module CMS còn c n đ c phát tri n đ linh đ ng h n trong vi c t o ra các template cho trang web.
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
[1] David Nuescheler - Day Software, Content Repository API for Java
Technology Specifications 0.16.2, Day Management AG, 25 January 2005
[2] Alejandro Abdelnur - Sun Microsystems, Java portlet Specification v1.0, Sun Microsystems, 29 August 2003
[3] Steve Holzner, Eclipse Cookbook, O'Reilly, United States of America, 2004 [4] James Rumbaugh, Ivar Jacobson, Grandy Booch, The Unified Modeling
Language Reference Manual, Addison-Wesley, 1998.
[5] Nathan Meyers, Java Programming on Linux, Waite Group, 2000 [6] James Goodwill, Pure JSP: Java Server Pages, SAMS, 2000
[7] Mark Wutka, Special Edition Using Java Server Pages and servlets, QUE, 2000
[8] Jason Hunter and William Crawford, Java servlet Programming, O'Reilly, United States of America, October 1998
[9] Michael Girdley and Kathryn A.Jones, web Programming with Java, Sams.net Publishing, 1996
[10] Le Thanh Nhan – Tuong Minh Association, Technical reports, 2004 - 2005 [11] Nguyen Thanh Giang – Tuong Minh Association, Technical reports, 2004 -
2005
[12] Web site cu Magnolia CMS, http://www.magnolia.info/en/magnolia.html [13] Web site mã ngu n m Java, http://java-source.net