السلام عليكم
سؤال آخر :-( .
مشروعي من المفترض أن يكون MVC ( ثلاث طبقات ) ، و أرغب في أن يصبح برنامجي بهذا الشكل :
Controller : هي Servlets التي تقوم بتحليل وتلقي الطلبات ثم التواصل مع طبقة الـ Model فاستدعاء ملف العرض jsp .
Model : كلاسات الجافا .
View : ملفات JSP ..
الصفحة الرئيسية لموقعي هي index.jsp ، وأنا أريد أن يبدأ الزائر من هذه الصفحة ، ويمكن أن تظهر الطلبات بهذه الطريقة :
index.jsp?section=article&id=10
وكود index.jsp ، يقوم بالتعرف على section المطلوب .. ثم تضمين ملف jsp المناسب :
<div class="midcol">
<!-- Which section? -->
<%String fileName = request.getParameter("section");
if (fileName == null) {
fileName = "WEB-INF/jspf/frontpage.jsp";
} else {
fileName = "WEB-INF/jspf/" + fileName + ".jsp";
}
%>
<jsp:include page='<%= fileName%>' />
</div>المشكلة هنا ، أنه عند تضمين الملف article.jsp .. أصبح هو Controller ، لأنه هو من سيضطر لتحليل request ، وليس Servlet !
وبنفس الوقت .. لا أجد حل غير عملية تضمين ملف article.jsp ؟ لأقسّم عملية العرض على عدة ملفات !
فصرت لا أستطيع أن أجعل طبقة Controller من مسؤولية Servlet ( الا في حالة واحدة .. وهي ارسال بيانات Form معين ، post - get ) .
السؤال :
- ماهو الحل لهذه المشكلة .. بحيث أرتب عملي ليكون Servlet هو المسؤول عن تحليل request ؟
هل السؤال واضح ؟

