RichFaces - สถาปัตยกรรม
ตามเอกสารอย่างเป็นทางการของ Red Hat มีองค์ประกอบทั้งหมด 5 ส่วนที่ทำงานภายในเพื่อมอบประสบการณ์การใช้งานที่หลากหลายแก่ผู้ใช้ ต่อไปนี้เป็นส่วนประกอบทั้งห้า
AJAX Filter- ตัวกรอง AJAX ใช้เพื่อแยกความแตกต่างระหว่างคำขอประเภทต่างๆที่มาจากเบราว์เซอร์ไคลเอนต์ ในการรวมส่วนประกอบนี้ลงในแอปพลิเคชันคุณต้องลงทะเบียน RichFaces Filter ในไฟล์ web.xml ของแอปพลิเคชันของคุณ AJAX Filter ทำหน้าที่แตกต่างกันไปในแอปพลิเคชัน JSF ในระยะต่างๆ
AJAX Action Components - คอมโพเนนต์การดำเนินการมีหน้าที่ในการส่งคำขอของไคลเอ็นต์จากเบราว์เซอร์ไปยัง AJAX Engine ซึ่งจะประมวลผลคำขอและแสดงผลมุมมองที่ต้องการเป็นการตอบสนอง
AJAX Containers- คอนเทนเนอร์ AJAX มีแนวคิดคล้ายกับคอนเทนเนอร์สปริง โดยพื้นฐานแล้วจะรับรู้พื้นที่เฉพาะของเบราว์เซอร์ไคลเอนต์เพื่อประมวลผลคำขอ AJAX
Skinnability- สกินและธีมรวมกันเรียกว่า Skinnability โมดูลนี้ทำหน้าที่เป็นอิสระเพื่อให้การสนับสนุนรูปลักษณ์ของภาพรวมทั้งหมด
RichFaces JavaScript Engine- JavaScript Engine ทำงานบนฝั่งไคลเอ็นต์ที่ส่งอัพเดตไปยังเอ็นจิน AJAX เพื่อเตรียมการตอบสนอง เอ็นจิ้นนี้ทำงานโดยอัตโนมัติดังนั้นเราจึงไม่จำเป็นต้องเขียนโค้ดพิเศษใด ๆ เพื่อควบคุมมัน
ต่อไปนี้เป็นแผนภาพสถาปัตยกรรมของแอปพลิเคชัน RichFaces ในกระบวนทัศน์ MVC
ในภาพด้านบนกิจกรรมของผู้ใช้จะได้รับการประมวลผลเป็น "JS Event" ต่อมา "เหตุการณ์ JS" จะถูกส่งไปยัง "ตัวกรอง XML" ซึ่งไม่มีอะไรนอกจากส่วนประกอบของตัวกรอง AJAX “ ตัวกรอง XML” มีหน้าที่สร้างและประมวลผลคำขอของผู้ใช้ ส่วนประกอบอื่น ๆ ทั้งหมดอยู่ภายในไฟล์ jar ที่แตกต่างกัน เราจำเป็นต้องใช้ไลบรารีแท็กที่เหมาะสมเพื่อที่จะใช้ฟังก์ชันเหล่านั้น