Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTTP状态500-处理JSP页面时发生异常_Javascript_Jsp_Nullpointerexception_Tomcat7 - Fatal编程技术网

Javascript HTTP状态500-处理JSP页面时发生异常

Javascript HTTP状态500-处理JSP页面时发生异常,javascript,jsp,nullpointerexception,tomcat7,Javascript,Jsp,Nullpointerexception,Tomcat7,我的Tomcat7部署中发生了一些非常奇怪的事情。要么这样,要么我太累了。这是瘦子 我有一个非常简单的Tomcat7WebApp,我正在通过Eclipse(Juno)开发它。我的一个JSP文件包含一个表单。提交表单时,servlet查询数据库并通过session.setAttribute将两个参数返回给同一个jsp 一切正常,但如果我开始使用servlet,我会突然在JSP页面上发现HTTP500错误。我能够解决这个问题的唯一方法是经历一个奇怪的仪式,从JSP中删除所有与Java相关的内容,然后

我的Tomcat7部署中发生了一些非常奇怪的事情。要么这样,要么我太累了。这是瘦子

我有一个非常简单的Tomcat7WebApp,我正在通过Eclipse(Juno)开发它。我的一个JSP文件包含一个表单。提交表单时,servlet查询数据库并通过session.setAttribute将两个参数返回给同一个jsp

一切正常,但如果我开始使用servlet,我会突然在JSP页面上发现HTTP500错误。我能够解决这个问题的唯一方法是经历一个奇怪的仪式,从JSP中删除所有与Java相关的内容,然后慢慢地将其添加进来并刷新。我不知道这是Tomcat问题、Servlet问题、Firefox问题还是上述问题的组合

为清楚起见,以下是一些代码片段:

Jsp代码:

<html>
  ...
  <body>
    <script type='text/javascript'>
      var searchResults = '<%= ((String[][])session.getAttribute("searchResults")).length %>';
      var additionalResults = '<%= session.getAttribute("additionalResults") %>';
      ...
    </script>
    ...
  </body>
</html>
但结果弹出窗口显示“null”。我还多次尝试以不同的顺序重新启动MySQL和Tomcat


所以我完全不知道发生了什么。任何输入都将不胜感激。

将其用于您的jsp代码

    if('<%= session.getAttribute("searchResults") %>' !="null")
          {
           var str = '<%= (String)session.getAttribute("searchResults") %>' 
           searchResults = str.length;
           alert(searchResults)

          }   
if(“”!=“null”)
{
var str=''
searchResults=str.length;
警报(搜索结果)
}   

将其用于jsp代码

    if('<%= session.getAttribute("searchResults") %>' !="null")
          {
           var str = '<%= (String)session.getAttribute("searchResults") %>' 
           searchResults = str.length;
           alert(searchResults)

          }   
if(“”!=“null”)
{
var str=''
searchResults=str.length;
警报(搜索结果)
}   

我忘了把这个问题的答案贴出来。结果是我正在关闭JDBC连接,所以ResultSet对象返回jsp时无法访问。此后,我更新了该代码,并将结果从ResultSet对象移到通过HTTPRequest对象传回的参数中。

我忘了发布此问题的答案。结果是我正在关闭JDBC连接,所以ResultSet对象返回jsp时无法访问。此后,我更新了该代码,并将结果从ResultSet对象移到通过HTTPRequest对象传回的参数中。

您是否尝试过“您确定
session.getAttribute(“additionalResults”)不为空?”?此外,第93行的引用引用生成的.java类,而不是.jsp文件.alert(“”);打印“null”,但不应该打印。您是否尝试过“确定
session.getAttribute(“additionalResults”)
不为null?”?此外,第93行的引用引用生成的.java类,而不是.jsp文件.alert(“”);打印“null”,但不应该。不,那不行。getAttribute(“searchResults”)返回null,因此进行任何其他调用只会引发NullPointerException。我需要理解的是,如果我不修改servlet代码,为什么会返回null…首先运行servlet,它会在jsp页面重定向您。不,这不起作用。getAttribute(“searchResults”)返回null,因此进行任何其他调用只会引发NullPointerException。我需要理解的是,如果我不修改servlet代码,为什么会返回null…首先运行servlet,它会在jsp页面重定向您。
alert('<%= session.getAttribute("searchResults") %>');
public class MyServlet extends HttpServlet {

  protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    String redirectedPage = "/test.jsp";
    request.getSession().setAttribute("searchResults", "Bob");
    RequestDispatcher reqDispatcher = getServletConfig().getServletContext().getRequestDispatcher(redirectedPage);
    reqDispatcher.forward(request,response);
  }
}
    if('<%= session.getAttribute("searchResults") %>' !="null")
          {
           var str = '<%= (String)session.getAttribute("searchResults") %>' 
           searchResults = str.length;
           alert(searchResults)

          }