ข้อกำหนดมีดังต่อไปนี้:
- เว็บแอปพลิเคชัน Java EE (ใน Tomcat)...
- ตายง่าย ๆ เพียงแค่ JSP เซิร์ฟเล็ตและขวด - ไม่มีเฟรมเวิร์ก ...
- ไม่มีอะไรจำเป็นต้องโหลดซ้ำ ไม่ใช่เซิร์ฟเวอร์ ไม่ใช่บริบท ไม่มีอะไร...
แนวคิดจนถึงขณะนี้คือการขยาย WebappClassLoader (catalina.jar) เพื่อสร้าง classloader ที่คุณกำหนดเอง และลงทะเบียนใน context.xml เป็นองค์ประกอบ Loader ด้วยโค้ดเพียงเล็กน้อย คุณก็จะสามารถเขียน classloader ของคุณได้อย่างดี ใครจะรู้ว่าจะหาไฟล์ต้นฉบับ Java ได้ที่ไหน จากนั้นจึงคอมไพล์เป็นไฟล์คลาส หากจำเป็น จากนั้นจึงโหลด int memory เมื่อถูกขอให้ทำเช่นนั้น ตรรกะนั้นธรรมดาและเรียบง่าย
ยกเว้น:
Jasper จะรู้ได้อย่างไรว่าจะค้นหาคลาสของคุณโดยอัตโนมัติซึ่งสร้างโดย classloader ที่คุณกำหนดเอง เพื่อให้สามารถคอมไพล์ JSP ที่อ้างอิงถึงคลาสเหล่านั้น และแม้แต่รีเฟรชคลาสเหล่านั้น (คลาสของคุณ) ได้ทันที เป็นไปไม่ได้หรือที่จะบรรลุผล?
คุณคิดอย่างไร?
(โปรดอย่าพยายามเปลี่ยนบทสนทนาโดยชี้ไปที่เฟรมเวิร์กที่มีอยู่มากมายที่ดูแลสิ่งเหล่านี้ให้กับคุณ ข้อกำหนดมีความเฉพาะเจาะจงมาก: ไม่มีเฟรมเวิร์ก ไม่มีอะไรเลย)