قم بتضمين ملف ثابت في JSP مع اسم ملف متغير على WebSphere 6

StackOverflow https://stackoverflow.com/questions/2905289

سؤال

أنا أعاني من تضمين ملف ثابت في JSPs WebSphere 6.0.2.17. حاولت هذا:

<% final String MY_DIR = ResourceBundle.getBundle("mybundle").getString("props.pages.wcm"); %>
<% final String page = ResourceBundle.getBundle("mybundle").getString("page"); %>
<% final String inc = MY_DIR + "/" + bonus; %>
<%@include file="<%= inc %>"%>

المسار هو/wcm/بعض/other/dir/page ويمكنني طباعة ذلك بسعادة out.write(inc). للأسف include (و ال jsp:include) لا يشمل الملف على الإطلاق. لا توجد رسالة خطأ ، ولكن لم يتم تضمين المحتوى ... يمكن الوصول إلى الملف عبر المتصفح.

هل يجب علي إنشاء JSP كامل لهذا العمل؟ أنا فقط بحاجة إلى ملف HTML.

تحديث

نظرًا لأنه سيكون هناك المزيد من الصفحات التي يجب تضمينها عاجلاً أم آجلاً ، قررت إنشاء taglib مخصص لهذه الحالة. وبهذه الطريقة ، يمكنني أن أقلص الوظيفة وتعيين الدليل الأساسي لمحتوىي الثابت في ملف خاصية.

هل كانت مفيدة؟

المحلول

حاول استخدام requestDispatcher.include ():

<%
RequestDispatcher r = request.getRequestDispatcher(inc);
r.include(request, response);
%>

يشبه هذا تمامًا التوجيه ، باستثناء أي صفحة ستشملها ستتم معالجتها في كل مرة (إذا كانت JSP أو Servlet). يشمل التوجيه فقط الصفحة مرة واحدة عندما يتم تجميع ملف JSP الذي يتواجد التوجيه فيه.

نصائح أخرى

حاولت من خلال jsp:include وتم تضمين الملف تمامًا.

ضع في اعتبارك أنه يجب عليك توفير المسار النسبي وليس المسار المطلق.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top