ข้ามไปที่เนื้อหาหลัก

เปลี่ยนเว็บเดิมให้ Pluggable ด้วย OSGi

เป็นบทความภาษาอังกฤษครับลองอ่านดู เปลี่ยน Web application เดิมให้ยืดหยุ่นด้วย OSGi
เพิ่มเติ่มให้ครับ OSGi คืออะไร เป็น Specification ครับที่เจ้าใหญ่ของ Java เค้าทำมาเพื่อให้เกิดความเป็น modularized ครับ ซึ่งถ้าจะให้เห็นภาพคือการทำงานของ plugin น่ะครับ ที่เราสามารถเปิดปิดการทำงานของมันได้ตลอดเวลาเมื่อเอามาใส่ web application ก็ทำให้เราสามารถถอดหรือเสียบ plugin ใหม่ๆ ได้ตลอดเวลา โดยที่ plugin นี้ใน OSGi จะเรียกว่า module ครับ หรือถ้าเป็นศัพท์เทคนิคเค้าจะเรียกว่า Bundle ครับ ลองไปอ่านบทความกันดูครับ ซึ่ง OSGi นั้นจริงๆ แล้วมันเป็น Specification เหมือนกับ EJB หรือ Servlet นี่แหละครับ แต่ตัว implement นั้นแล้วแต่ว่าใครจะนำไป implement นะครับ

ที่ดังๆ อยู่ในตอนนี้ก็เห็นมีอยู่สองสามเจ้า Equinox อันนี้หลายๆ คนคงจะคุ้นเคยกันดีมันคือเจ้า eclipse ของเรานั่นเองใช้ตัวนี้อยู่ครับ ส่วนอีกตัวเป็นของ Apache Felix ครับ ลักษณะการใช้งานจะแตกต่างกันบาง และตัว module อาจจะเรียกไม่เหมือนกันบางอันเป็น Bundle บางอันอาจไม่ใช่ ผมก็จำไม่ได้แล้วเหมือนกันครับ ลองไปศึกษากันดูครับ น่าสนใจทีเดียว อีกตัวนั้นจะเป็นของ Spring ครับ แต่รู้สึกว่ามันจะ Build in มากับตัว DM Server ของเค้านะครับ

ความคิดเห็น

  1. ไม่ระบุชื่อ3:15 หลังเที่ยง

    เสริชเรื่อง OSGi มาเจออยู่ top ของ Google เลยทีเดียว :D

    ตอบลบ
  2. ความคิดเห็นนี้ถูกผู้เขียนลบ

    ตอบลบ

แสดงความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

หมดหวังกับรายการทีวีในประเทศไทย

ไม่ได้เขียน Blog มานานสกิลด้านเขียนไม่รู้จะยังดีเหมือนเดิมมั้ยนะครับ (หัวข้อก็จะ clickbait  ตามแนว Content ยุคใหม่) จริงๆ แล้ว คิดจะเขียนมาตั้งนานแล้วแต่ไม่รู้จะเขียนอะไร พอดีวันนี้อ่านเจอโพสต์ของเพื่อนในเฟสบุ๊คที่แชร์มา หัวข้อประมาณว่า ประเทศไทยมีความพยายามทำให้คนโง่ลง คือผมก็ติดตามข่าวมาเรื่อยๆ ช่วงไปอยู่จีนก็ยังติดตามอยู่ แต่มีความรู้สึกว่าข่าวของประเทศเรากับประเทศจีนนี่คือคนละขั้วเลย ที่จีนข่าวส่วนใหญ่จะเป็นข่าวที่ค่อนข้างมีสาระ และไม่มีข่าวงมงาย น่าจะเนื่องมาจากกฎหมายของประเทศไทยที่ค่อนข้างคุมเข้มกับสื่อ ย้อนกลับมาที่ไทย ประเทศเราไม่มีกฎหมายคุมเข้มสื่อเหมือนประเทศจีนขนาดนั้น สื่อประเทศเราค่อนข้างมีอิสระในการนำเสนอ แต่หลังๆ มานี่ผมเห็นแต่ข่าวอาชญากรรม หรือข่าวให้หวยซะส่วนใหญ่ ก็เข้าใจว่าต้องการยอดผู้ชม แต่การที่สื่อนำเสนอแบบนั้นนี่ไม่แน่ใจว่าจะดีต่ออนาคตประเทศชาติหรือไม่นะครับ คนดูข่าวเพื่อจะรอเลขเอาไปซื้อหวย ไม่แน่ใจว่าสนใจอะไรมากกว่าระหว่างหวยกับข่าว ตอนจะมีกฎหมายหวยออนไลน์ก็เห็นออกมาต่อต้านบอกมอมเมาประชาชน แต่สิ่งที่สื่อกำลังนำเสนออยู่นั้นมันย้อนแย้งในตัวเองชอบกล...

Alfresco กับการ Search ภาษาไทย

เนื่องด้วยการ Search ถือเป็นหัวใจสำคัญของงาน ECM เลยก็ว่าได้ แต่ Alfresco ณ ปัจจุบันยังไม่รองรับการ Search ด้วยภาษาไทย แต่อย่างว่า Opensource เมื่อเรารู้ว่ามันใช้ Lucene เป็น engine ในการค้นหาเอกสาร เราก็เลยแงะไปยังตัว lucene เองพบว่ามีคนส่ง Patch ในการตัดคำไทย ไปให้กับ lucene เรียบร้อยแล้ว โดยคุณสัมพันธ์นั่นเอง วิธีการ Config ให้ Alfresco ตัดคำไทยได้ผมสรุปออกมาเป็นขั้นตอนได้ดังนี้ครับ ไปเพิ่ม Locale ให้ Alfresco รู้จัก ใน tomcat/shared/classes/alfresco/extension/web-client-config-custom.xml ตรง tag <languages> เพิ่ม <language locale="th_TH">Thai</language> เข้าไป directory: tomcat/webapps/alfresco/WEB-INF/classes/alfresco/model แล้วทำการ copy file dataTypeAnalyzers_fr.properties หรือไฟล์อื่นก็ได้ เปลี่ยนชื่อเป็น dataTypeAnalyzers_th.properties แล้วเปิดไฟล์ขึ้นมาแก้ไขให้เป็น d_dictionary.datatype.d_text.analyzer=org.apache.lucene.analysis.th.ThaiAnalyzer d_dictionary.datatype.d_content.analyzer=org.apache.lucene.analysis.th.ThaiAnalyzer หลังจากนั้นเมื่อทำการ...

Alfresco ECM

ความแตกต่างของ ECM(Enterprise Content Management) กับ CMS(Content Management System) อาจดูแล้วคล้ายๆ กัน แต่มันแตกต่างกันอย่างไร ตัว CMS นั้นมีไว้สำหรับจัดการ Content ที่เหมาะกับการแสดงให้เห็นแบบ Public ส่วน ECM นั้นจะเน้นการใช้งานเกี่ยวกับการจัดการเอกสารภายในองค์กร โดยที่เราก็สามารถแสดงให้บุคคลนอกเห็นได้ด้วยเช่นกัน Alfresco เป็น ECM ตัวนึงที่ผมกำลังศึกษาอยู่ โดยตัวผู้บริหารนั้นเป็นคนเดียวกับที่เป็นผู้บริหารของ Documentum เพราะฉะนั้นการันตีได้ว่า Alfresco นั้นสามารถใช้งานในองค์กรได้อย่างดี และข้อดีอีกอย่างของ Alfresco คือเป็น Opensource ครับ เนื่องจากเปิด Source ทำให้เราสามารถแก้ไขฟังก์ชั่นการทำงานต่างๆ ได้ดี ตัวระบบของ Alfresco นั้นพัฒนามาจาก Spring และ JSF เป็นหลัง โดยสนับสนุน RESTful หรือ Web Service เป็นส่วนใหญ่ นอกจากนี้เรายังสามารถเขียน JavaScript เพื่อทำงานแบบ RESTful ได้อีกตัว โดยตัว JavaScript นั้นรันอยู่บน Rhino Runtime ซึ่งเป็น Engine ของ JavaScript บนฝั่ง Server การ Config ส่วนใหญ่จะอยู่ในรูปของ XML เพราะเป็นส่วนการประกาศ Bean ของ Spring นั่นเอง ทำให้เราสามารถทำการ Override...