如何为JSP页面启用debug_mode

tar*_*ate 1 jsp oc4j

当您在编写JSP页面并在Oracle OC4J或Application Server下运行时遇到严重的编译错误时,您最终可以在屏幕上显示以下内容:

500内部服务器错误OracleJSP:发生错误.请咨询应用程序/系统管理员以获取支持 程序员应该考虑将init-param debug_mode设置为"true"以查看完整的异常消息.

我已经看到了关于如何/在何处设置debug_mode init-param的不同建议.有什么选择?

另外,这是Oracle特有的,还是JSP标准功能?对于其他应用服务器,该技术有何不同?

tar*_*ate 5

迄今解决方案......

选项1:将debug_mode参数添加到OC4J global-web-application.xml

  • 该设置将适用于OC4J容器中的所有应用程序
  • 有关详细信息,请参阅@ Mork0075的响应(除非注意OC4J容器名称和应用程序名称特定于启用Oracle安全企业搜索调试的示例)

选项2:添加到应用程序的web.xml

  • 显然,允许更局部的变化
  • 还有其他设置(developer_mode,encode_to_java,emit_debuginfo)也可以使用

例如:

<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>oracle.jsp.runtimev2.JspServlet</servlet-class>
<init-param>
    <param-name>debug_mode</param-name>
    <param-value>true</param-value>
</init-param>
<init-param>
    <param-name>developer_mode</param-name>
    <param-value>true</param-value>
</init-param>
<init-param>
    <param-name>encode_to_java</param-name>
    <param-value>true</param-value>
</init-param>
<init-param>
    <param-name>emit_debuginfo</param-name>
    <param-value>true</param-value>
</init-param>
</servlet> 
Run Code Online (Sandbox Code Playgroud)

由于为oracle.jsp.runtimev2.JspServlet类设置了这些选项,因此它显然特定于Oracle OC4J/Application Server安装.