14. Tìm k im ni dung trên Repository
15.2 JCR cài đt bên trên mt Database
Phát tri n CMS module cho h th ng Intranet cu Cơng ty TMA
Ta có th ánh x qua database s d ng 2 b ng, b ng NODES và b ng PROPERTIES
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
Ch ng 7 So sánh m t s gi i pháp CMS mã ngu n
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
1. Gi i thi u các gi i pháp hi n t i
1.1 Xu h ng phát tri n c a các h CMS
1.1.1 Xu h ng v m t th ng m i
a s các công ty ph n m m đ u phát tri n các h CMS đ bán cho các cơng ty có nhu c u. Do đó, lãnh v c này r t có ti m n ng và các cơng ty chuyên cung c p các gi i pháp CMS thu đ c r t nhi u l i nhu n.
Các h CMS đ c t o ra ngày càng d s d ng. Xu h ng này nh m lôi kéo nhi u h n n a các công ty mua các gi i pháp CMS đ s d ng cho các web site c a h .
M i thao tác x lý trên h CMS c n ph i thân thi n v i ng i s d ng, ngay c v i các nhân viên c a các doanh nghi p hay các toà so n báo là nh ng ng i không rành r l m v tin h c.
Vi c c u hình các h CMS đ đ a vào m t h th ng có s n c ng đ c t i u hoá nh m gi m th i gian và công s c trong giai đo n tri n khai h th ng đ n ng i s d ng cu i.
Khi m t công ty tin h c ký m t h p đ ng đ phát tri n m t h CMS, h có khuynh h ng s d ng m t mã ngu n m và mi n phí cho cơng vi c c a h , thay vì ph i mua m t gi i pháp và s a đ i mã ngu n c a gi i pháp đ đáp ng nhu c u khách hàng.
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
1.1.2 Xu h ng v công ngh , k thu t
Bên c nh các công ty phát tri n các h CMS v i m c tiêu th ng m i, v n có các t ch c, các l p trình viên thích thú v i vi c phát tri n các h CMS v i m c đích phi th ng m i. Do đó, chúng ta có th nh n th y m t s xu h ng sau:
• Phát tri n các h CMS mã ngu n m và mi n phí.
• S d ng ngày càng nhi u các thành ph n mi n phí vào các h CMS, ví d : JBoss (application server mi n phí), MySQL (h qu n tr c s d li u mi n phí), Linux (h đi u hành mi n phí), Java (ngơn ng l p trình mi n phí)…
• Các h CMS có th ho t đ ng trên nhi u platform khác nhau: xu h ng này giúp cho các h CMS có th t ng thích v i nhi u h đi u hành khác nhau.
• Cung c p ngày càng nhi u s h tr cho ng i s d ng cu i.
̇ Do internet phát tri n ngày càng nhanh nên s l ng ng i s d ng trong h CMS ngày càng nhi u.
̇ Cho phép cung c p nhi u ch c n ng h n cho các t ch c có nhi u nhân viên.
• Ngày càng ti n d ng:
̇ H tr c ch drag ‘n’ drop. ̇ H tr c ch WYSIWYG.
• D tích h p các modules khác vào h CMS: giúp cho vi c m r ng d dàng h CMS khi có nhu c u.
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
1.2 So sánh các gi i pháp CMS thông d ng
1.2.1 Tiêu chí l a ch n các gi i pháp CMS đ so sánh
Do đây là m t CMS module đ c xây d ng cho công ty TMA nên chúng tôi ch ch n so sánh m t s gi i pháp CMS đáp ng đ c yêu c u c a công ty. Ngh a là các h CMS này ph i có ít nh t các đ c đi m sau:
• Mã ngu n m : đ c đi m này cho phép s a đ i mã ngu n không b ràng bu c đ đáp ng t t nh t yêu c u đ ra.
• Mã ngu n mi n phí.
• Mã ngu n ph i đ c l p trình b ng Java và s d ng các công ngh c a Java: nguyên nhân do portal hi n t i c a công ty đ c l p trình b ng Java và yêu c u đ t ra là ph i xây d ng h CMS d i d ng portlet đ tích h p vào portal hi n t i. Do đó, gi i pháp CMS ph i đ c vi t b ng Java.
1.2.2 Các tiêu chí so sánh
Chúng tôi so sánh các gi i pháp CMS mã ngu n m và l p trình b ng Java d a trên các khía c nh sau:
• Yêu c u h th ng • B o m t • Ti n d ng • Hi u su t • Tính kh chuy n • Kh n ng qu n lý • Các h tr khác
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA 1.2.2.1Yêu c u h th ng Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0
Application Server TomCat (Built-in) J2EE TomCat
H qu n tr c s d li u MySQL MySQL Postgres JCR MySQL Oracle MSSQL H đi u hành M i M i M i M i
Ngơn ng l p trình Java Java Java Java 1.3+
Web server M i M i M i TomCat
Apache IIS B ng 4: So sánh yêu c u h th ng c a m t s CMS 1.2.2.2B o m t Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0 Qu n lý quy n truy c p Có Có Có Có
L u thông tin đ ng nh p Không Không Không Không
Qu n lý phiên làm vi c Khơng Khơng Có Khơng
T ng thích v i SSL Khơng Có Có Khơng
Xác nh n b ng email Khơng Có Khơng Không
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA 1.2.2.3Ti n d ng Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0
H tr c ch drag’n’drop Khơng Khơng Có Khơng
Thay đ i kích c nh Khơng Khơng Có Khơng
Ph c h i l i thao tác tr c đó Khơng Có Có Khơng H tr WYSIWYG Có Có Có Có B ng 6: So sánh tính ti n d ng c a m t s CMS 1.2.2.4Hi u su t Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0 H tr l u tr d li u t m th i (cache) cho toàn b h th ng
Khơng Có Có Khơng
H tr l u tr d li u t m th i cho trang web
Có Có Có Khơng
Phát tri n CMS module cho h th ng Intranet cu Cơng ty TMA 1.2.2.5Tính kh chuy n Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0
Cho phép thêm thông tin c a ng i s d ng
Có Khơng Khơng Khơng
H tr đa ngơn ng Khơng Có Có Khơng
Cho phép c s d li u phân tán Khơng Có Có Khơng B ng 8: So sánh tính kh chuy n c a m t s CMS 1.2.2.6Kh n ng qu n lý Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0
L p l ch cho n i dung Có Khơng Khơng Khơng
Qu n lý tr c ti p t ng ph n trang web
Khơng Có Có Không
Phân lo i n i dung Khơng Có Có Khơng
H tr theme Khơng Có Gi i h n Khơng
Qu n lý template Khơng Khơng Có Gi i h n
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA 1.2.2.7Các h tr khác Cofax 2.0 Daisy 1.1 Magnolia 2.1 OpenCMS 5.0 Xu t d li u d ng RSS Có Khơng Gi i h n Không H tr upload d li u thông qua FTP
Gi i h n Không Không Không
H tr UTF-8 Khơng Có Có Khơng
Tn theo XHTML Khơng Khơng Có Khơng
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
2. Mô t các gi i pháp đã so sánh
2.1 Gi i pháp Cofax 2.0
Hình 25: Giao di n Cofax
Cofax là m t CMS h tr m nh v v n b n và đa ph ng ti n. Gi i pháp này đ c phát tri n ban đ u b i Knight Ridder đ đ n gi n hoá vi c th hi n và đ y nhanh t c đ xu t b n các thông tin, s ki n trên t báo đi n t c a h . Gi i pháp này đã đ c s d ng b i nhi u t báo đi n t l n nh : Philadelphia Inquirer News, Philadelphia Daily News...
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
Hi n nay, Cofax đ c s d ng b i r t nhi u t ch c trên th gi i d i d ng m t CMS mã ngu n m .
Gi i pháp này s d ng Java, c s d li u MySQL và XML đ phát tri n. ây là m t gi i pháp đ c thi t k theo h ng đ i t ng. Trong đó, m i module đ c l p v i module khác. i u này cho phép thay đ i m t module không phù h p b ng m t module khác thích h p h n. Ngồi ra, đi u này cịn giúp cho vi c c u hình m t cách đ c l p các module v i nhau.
Ki n trúc h th ng c a Cofax bao g m 4 t ng chính nh sau :
• H th ng qu n lý giao tác.
̇ Cofax s d ng các l p c a Java đ nh p d li u d i d ng XML, sau đó l u d li u này vào trong Repository c a Cofax.
̇ H th ng này x lý các giao tác b ng cách trao đ i các gói. • Repository c a Cofax
̇ Repository c a Cofax đ c đ t trên m t t ng riêng r và cung c p các APIs cho các t ng khác có th s d ng các ch c n ng c a nó.
̇ Theo thi t k , t ng này ch u trách nhi m giao ti p v i c s d li u, nh : Oracle, Sybase, Object Store, XML...
• H th ng CMS : t ng này có th h tr ASP, JSP hay Servlet
• H th ng trình di n n i dung : t ng này có th h tr nhi u ngôn ng th hi n cho các template
Trong các t ng v a nêu trên, ng i ta s d ng th vi n các l p chia s c a Java cho các ch c n ng c a chúng. Do đó, khi l p trình viên tri n khai hay s a đ i m t ch c n ng, h có th thao tác ch trên th vi n đó mà khơng c n thay đ i nhi u mã ngu n.
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
2.2 Gi i pháp Daisy 1.1
Hình 26: Giao di n Daisy
H th ng CMS này bao g m m t Repository server có th truy c p đ c b ng cách s d ng giao th c HTTP.
Daisy đ c phát tri n đ u tiên b i Schaubroeck, sau đó gi i pháp này đ c phát tri n b i Outerthought, trung tâm h tr mã ngu n m d i d ng Java và XML.
Trung tâm Outerthought có nhi u kinh nghi m trong vi c phát tri n các công c mã ngu n m , và các công c này đ c s d ng đ phát tri n các ng d ng có tính ch t th ng m i. Vì lý do này, các l p trình viên khơng nh ng s d ng mã ngu n c a Cofax trong ng d ng c a mình mà h cịn ra s c chia s kinh ngh êm đ cùng nhau phát tri n gi i pháp này.
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
Gi i pháp này bao g m 2 thành ph n chính nh sau :
• Repository ch a n i dung. • Giao di n web.
2.2.1 Repository ch a n i dung
Thành ph n này c a Daisy bao g m nh ng đ c đi m sau : • L u tr và ph c h i d li u.
• M i trang web cho phép ch a nhi u ph n và nhi u paragraph. Lo i trang web s đnh ngh a các ph n và các paragraph mà nó c n có.
• Trang web có th ch a hình nh, tài li u PDF hay XML.
• M i trang và m i tài li u đ u đ c l u trong m t vùng l u d li u duy nh t và vùng l u d li u này khơng có c u trúc cây th m c. M i trang và tài li u đ c xác đnh b i m t đnh danh duy nh t.
• D li u đ c l u tr trong h qu n tr c s d li u MySQL. Hi n nay, Daisy đã h tr h qu n tr c s d li u PostgreSQL.
2.2.2 Giao di n web
Thành ph n này c a Daisy bao g m nh ng đ c đi m sau : • Mơi tr ng biên so n n i dung trang web WYSIWYG.
̇ H tr trình duy t Internet Explorer và Mozilla/Firefox
̇ S d ng các hình nh trong Repository c a Daisy hay t i các hình nh lên và s d ng
• N i dung các trang web đ c trình bày d i d ng cây đ duy t d dàng. • H tr s a đ i n i dung ngay trên cây hi n th các trang web.
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
• Cung c p c ch tìm ki m.
̇ S d ng Search Engine gi ng nh c a Yahoo và Google. ̇ H tr tìm ki m theo ngơn ng đnh ngh a c a riêng Daisy. ̇ Các trang web s d ng template d a trên XSLT.
̇ Cho phép thêm các ghi chú vào tài li u.
2.3 Gi i pháp Magnolia 2.1
Hình 27: Giao di n Magnolia
Magnolia là h CMS mã ngu n m có hõ tr chu n JSR 170, chu n bao g m nh ng API h tr cho các thao tác trên Repository ch a d li u c a Java.
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
Gi i pháp này có th ho t đ ng trên m i h đi u hành mà ch c n cài đ t JDK 1.4.1 tr lên. S d làm đ c đi u này do gi i pháp này đ c phát tri n d a trên Java và công ngh XML
Các template c a Magnolia đ c xây d ng d a trên các t p tin JSP và các th quy đnh. Magnolia ho t đ ng trên m t server J2EE.
Gi i pháp này đ c phát tri n đ u tiên b i công ty Obinary và sau đó đ c phát tri n b i Magnolia International.
Magnolia h tr r t nhi u ngôn ng nh : Anh, Pháp, Trung Qu c, c, Ý, Nh t, Tây Ban Nha, Nga, B ào Nha...
Trong gi i pháp này, ng i ta chia mã ngu n thành 3 modules chính sau :
• Module qu n lý n i dung.
̇ Module này bao gòm các t p tin JSP, JavaScript và Servlet đ th c hi n ch c n ng.
̇ Môi tr ng ch nh s a n i dung WYSIWYG.
̇ Cho phép s a đ i n i dung t i n i n i dung đó xu t hi n trên trang web.
̇ H tr các trình duy t Internet Explorer và Mozilla/Firefox. ̇ Cung c p c ch phân lo i n i dung d a trên c u trúc cây.
̇ D li u đ c l u tr trong h th ng t p tin c a h đi u hành d a trên chu n JSR 170. Do đó, gi i pháp này khơng c n ph i có h qu n tr c s d li u.
• Module Repository.
̇ H tr vi c truy c p vào Repository ch a n i dung. ̇ S d ng các gói và các APIs đ c quy đnh b i JSR 170.
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
̇ H tr vi c chuy n đ i d dàng Repository ch a n i dung : do module này đ c xây d ng d a trên chu n JSR 170, do đó nhà phát tri n có th chuy n đ i qua l i vi c s d ng các Repository ch a n i dung, nh : các t p tin XML, h th ng t p tin c a h đi u hành, h qu n tr c s d li u...cho gi i pháp c a h .
• Module b o m t.
̇ Cung c p nh ng ch c n ng đ phân chia vai trò và ng i s d ng trên h th ng CMS này.
2.4 Gi i pháp OpenCMS 5.0
Hình 28: Giao di n OpenCMS
Gi i pháp này h tr nh ng ngu i s d ng t o ra các trang web mà không c n ph i bi t v HTML. Môi tr ng biên so n n i dung WYSIWYG v i giao di n gi ng nh giao di n c a Microsoft Office t o s thân thi n h n v i ng i s d ng.
Phát tri n CMS module cho h th ng Intranet cu Công ty TMA
Gi i pháp này là m t gi i pháp mã ngu n m và hồn tồn mi n phí. Nó đ c xây d ng ch y u b i cơng ty Alkacon Software. Ngồi ra cịn có m t s công ty khác tham gia phát tri n nh : Advent Consulting, Agora Telematica, Aliacom.
OpenCMS phát tri n d a trên Java, JSP, Servlet và XML. Ngồi ra, gi i pháp này có th ho t đ ng d a trên các thành ph n mã ngu n m nh : Linux, Apache, Tomcat, MySQL, c ng nh các thành ph n c n đ n b n quy n nh : Windows NT, IIS, BEA Weblogic, Oracle DB.
N i dung các trang web trong OpenCMS đ c l u trong các t p tin XML va các template c a các trong web đ c xây d ng b ng cách s d ng các trang JSP và Java.