إيزيرورباج="كاذبة" يتم تجاهلها من قبل الحاويات

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

  •  29-10-2019
  •  | 
  •  

سؤال

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

 <%@page contentType="text/html" pageEncoding="UTF-8" isErrorPage="false"%>
 <!DOCTYPE html>
 <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>JSP Page</title>
    </head>
      <body>
       <h1>guess what ? this is supposed to be an error page</h1>
     </body>
</html>

ها هي الصفحة الأولى التي كنت أتحدث عنها :

 <%@page contentType="text/html" pageEncoding="UTF-8" errorPage="anotherErrorPage.jsp" %>
   <!DOCTYPE html>
 <html>
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
     <title>JSP Page</title>
    </head>
  <body>
      <h1>Hello World!</h1>

      <% int i = 3/0;%>
  </body>
</html>

شكرا زليون .

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

المحلول

isErrorPage="false" لا يمنعك من إعادة توجيه صفحة الخطأ.طالما حددت errorPage في أول JSP ، فسيتم إعادة التوجيه إلى صفحة الخطأ الخاصة به.في مثالك يعيد التوجيه إلى "anotherErrorPage".

تحدد السمة isErrorPage ما إذا كان استثناء الكائن الضمني سيكون متاحًا أم لا.أثناء تحويل JSP إلى Servlet ، سيتم تحديد طريقة In service () ، استنادًا إلى كائن استثناء السمة هذا.إذا قمت بتعيين خطأ ، فلا يمكنك استخدام كائن الاستثناء في تلك الصفحة. إذا قمت بتعيين كائن استثناء صحيح ، فسيكون هناك ويمكنك استخدامه

في حالتك إذا كنت تريد إظهار الاستثناء ، فعليك تنفيذ أي مما يلي ،
1. في anotherErrorPage ، عرِّف isErrorPage="true" واعرض أو التقط الاستثناء بواسطة الكائن الضمني "استثناء".
2. قم بإزالة سمة errorPage في صفحة jsp الأولى.

نصائح أخرى

تحتاج إلى تعيينها كصفحة خطأ في الويب.شمل (انظر <error-page>).

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