java - JSP 页面的 Tomcat 500 错误 - 唯一的 JSP 内容是 if/else

标签 java html jsp http tomcat

我希望每个人都好。

我有 PHP 背景,最近我不得不在一个基于 Java 的项目上做一些工作 - 然后我发现了 JSP 页面,它与 PHP 非常相似。我试图制作一个页面,其中声明了一个名为“帐户”的“字符串”变量。然后我检查该帐户是否是管理员,如果是,他们可以看到管理菜单。但是,它在 firefox 和 chrome 中对我来说工作正常,但使用相同浏览器的客户会看到 500 错误。请从日志中查看下面的详细信息,我不知道它是什么意思,但我知道一个简单的 if 语句不应该导致它(愚蠢的语言)。


Mar 06, 2014 8:51:59 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [jsp] in context with path [/test] threw exception [An exception occurred processing JSP page /test.jsp at line 126

123:                </ul>       
124:            </li>
125: <% 
126: if (account.equals("sysadmin")) { %>
127:            <li>
128:                <a href="#" target="_gts">AssetTrack</a>
129:                <ul>


Stacktrace:] with root cause
java.lang.NullPointerException
    at org.apache.jsp.test_jsp._jspService(test_jsp.java:203)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:409)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1044)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:744)

任何想法让我知道,在我发疯之前!谢谢,

保罗

最佳答案

试试这个,

if ((null!=account) && (account.equals("sysadmin")))

因为它说,您有空指针异常。所以你应该检查 account 是否不是 null

希望对您有所帮助!

关于java - JSP 页面的 Tomcat 500 错误 - 唯一的 JSP 内容是 if/else,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22224341/

相关文章:

html - 如何在电子邮件中发送不可点击的链接

css - 如何始终在 HTML5 的 iframe 中显示滚动条

java - ModelAndView 不向 jsp View 返回任何数据

javascript - 3 次登录尝试失败时禁用文本框

java - Spring Web 应用程序错误

java - 如何仅在开发模式下以 HTTPS 运行 Play 框架?

java - Groovy 或 Java 中是否有任何类型的算术安全导航运算符?

java - 服务使用资源对象时如何访问资源对象?

javascript, html5 : e. dataTransfer.items 与 e.dataTransfer.files,如何使用前者获取文件大小?

java - 将任意类型安全配置写入 hocon 文件的标准化方法?