【JSP】一个页面把数据提交给另一个页面时,出现了NullPointerException
以下有两个jsp,运行submit.jsp,点提交,就报了500错误虽然知道是showMessage.jsp出了问题但就是想不明白,求帮助【submit.jsp】<%@p...
以下有两个jsp,运行submit.jsp,点提交,就报了500错误
虽然知道是showMessage.jsp出了问题但就是想不明白,求帮助
【submit.jsp】
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.util.*"%>
<html><body>
<form action="showMessage.jsp" method=post>
输入名字:
<br><Input type="text" name="name"value="">
<br>输入留言:
<br><textarea name="messages"></textarea>
<br><Input type="submit" value="submit">
</form>
【showMessage.jsp】
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.util.*"%>
<html><body>
<%! StringBufferm=new StringBuffer();
int i=0;
ServletContextapplication=getServletContext();
voidsendMessage(String s)
{ i++;
m.append("No."+i+"<br>"+s);
application.setAttribute("Mess",m);
}
%>
<%String name=request.getParameter("name");
String mess=request.getParameter("messages");
String s="姓名: "+name+"<br>"+"内容: "+mess+"<br>";
sendMessage(s);
StringBufferm=(StringBuffer)application.getAttribute("Mess");
System.out.print(m);
%>
</body></html>
【错误】
java.lang.NullPointerException
javax.servlet.GenericServlet.getServletContext(GenericServlet.java:160)
org.apache.jsp.showMessage_jsp.<init>(showMessage_jsp.java:13) 展开
虽然知道是showMessage.jsp出了问题但就是想不明白,求帮助
【submit.jsp】
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.util.*"%>
<html><body>
<form action="showMessage.jsp" method=post>
输入名字:
<br><Input type="text" name="name"value="">
<br>输入留言:
<br><textarea name="messages"></textarea>
<br><Input type="submit" value="submit">
</form>
【showMessage.jsp】
<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.util.*"%>
<html><body>
<%! StringBufferm=new StringBuffer();
int i=0;
ServletContextapplication=getServletContext();
voidsendMessage(String s)
{ i++;
m.append("No."+i+"<br>"+s);
application.setAttribute("Mess",m);
}
%>
<%String name=request.getParameter("name");
String mess=request.getParameter("messages");
String s="姓名: "+name+"<br>"+"内容: "+mess+"<br>";
sendMessage(s);
StringBufferm=(StringBuffer)application.getAttribute("Mess");
System.out.print(m);
%>
</body></html>
【错误】
java.lang.NullPointerException
javax.servlet.GenericServlet.getServletContext(GenericServlet.java:160)
org.apache.jsp.showMessage_jsp.<init>(showMessage_jsp.java:13) 展开
1个回答
展开全部
问题出在:
ServletContextapplication=getServletContext();
在JSP声明里面定义的变量及方法都是JSP类的内部成员。
在系统没有初始化JSP页面对象的时候,直接在类中声明访问getServletContext()就会报错。
你把ServletContextapplication=getServletContext();写到sendMessage方法里面就可以了。
tomcat运行时动态翻译jsp的java文件,可以在Tomcat的work文件夹里面找到
ServletContextapplication=getServletContext();
在JSP声明里面定义的变量及方法都是JSP类的内部成员。
在系统没有初始化JSP页面对象的时候,直接在类中声明访问getServletContext()就会报错。
你把ServletContextapplication=getServletContext();写到sendMessage方法里面就可以了。
tomcat运行时动态翻译jsp的java文件,可以在Tomcat的work文件夹里面找到
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询