เนื่องด้วยการ 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
- หลังจากนั้นเมื่อทำการ login ให้เลือก language เป็น Thai
เพียงเท่านี้ Alfresco ของเราก็สามารถเก็บ index เป็นภาษาไทยและสามารถค้นหาเอกสารที่เป็นภาษาไทยได้แล้วครับ
ขอบคุณค่าาา ติดตามตลอดเลย เขียนเรื่อง Alfresco ให้อ่านเยอะๆนะคะ เพิ่งจะเริ่มใช้ กำลังงงอยู่เลย ^^
ตอบลบณ ตอนนี้ โดย Default Alfresco สามารถ search เป็นภาษาไทยได้ระดับหนึงถ้าเป็นตัวเต็มอย่างเช่น
ตอบลบหาเอกสารชื่อ "ประชุม.txt" ด้วยคำว่า "ประชุม"
แต่ถ้าเป็น "ประชุมและสัมมนา.txt" จะไม่สามารถใช้คำว่า "ประชุม" ค้นหาได้
ลองใช้วิธีที่โพสแล้ว ก็ยังหาแบบข้อหลังไม่ได้นะคะ ถ้ายังไงจะพอมีวิธีอื่นที่ใช้ search ด้วยภาษาไทยบ้างไหมค่ะ?
สบายแระ
ตอบลบขอบคุณครับ :)
ในการตัดคำไทยตามที่ต้องการนั้นเราต้องทำการแก้ไขตัว Analyzer ของ Lucene ครับ เนื่องจากตัวที่เค้าให้มามี Dictionary เพียงไม่กี่คำ จึงทำให้การตัดคำไม่ค่อยดีเท่าที่ควรครับ แล้วผมจะมาเขียนวิธีการ implement อีกครั้งครับ ช่วงนี้งานรัดตัวและห่างหายจาก Alfresco ไปนานครับ ไว้กลับมาจะมีบทความตามมาอีกหลายตัวครับ
ตอบลบใช้วิธีการนี้ในเวอร์ชั่น 4.0.e ได้หรือไม่ครับ
ตอบลบ