错误如下:
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:367)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:294)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
root cause java.lang.NullPointerException
abc.checkLogin.getCookieValue(checkLogin.java:36)
abc.checkLogin.check(checkLogin.java:16)
org.apache.jsp.index_jsp._jspService(index_jsp.java:65)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:136)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:320)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:294)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)note The full stack trace of the root cause is available in the Tomcat logs.
解答对了千分相赠,万分感谢。
帮我顶也有分。
帮我顶也有分。
帮我顶也有分。
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:367)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:294)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
root cause java.lang.NullPointerException
abc.checkLogin.getCookieValue(checkLogin.java:36)
abc.checkLogin.check(checkLogin.java:16)
org.apache.jsp.index_jsp._jspService(index_jsp.java:65)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:136)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:320)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:294)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)note The full stack trace of the root cause is available in the Tomcat logs.
解答对了千分相赠,万分感谢。
帮我顶也有分。
帮我顶也有分。
帮我顶也有分。
解决方案 »
- HTML问题 求大神指教 最好弄点源码上来
- webwork+spring+hibernate,find的时候会update?郁闷了
- 检测所填写邮箱是否真实存在
- 新手请教
- 请教代码是否规范合理,主要涉及异常和数据库连接
- 有谁用apache+resin?连ORACLE连不上
- 求教-struts中<html:text>标签
- 当关闭浏览器时JSP如何能知道,使自已能作存盘的提示或动作,及清除写在数据库中的session?
- 怎样实现用JDBC(不使用JDBC-ODBC桥)连接SQL SERVER数据库???,急!!!
- weblogic+sqlserver2000中文处理问题-在线-急-高分
- 运行JSP出错,大家进来看一下,谢谢了,帮我顶也有分。分不够再加。
- 高手们请帮帮我吧,jsp+javabean的问题,帮我顶也有分,分不够再加,万分感谢。
{
for(int i=0;i<cookies.length;i++) {
Cookie cookie = cookies[i];
if (cookieName.equals(cookie.getName()))
return(cookie.getValue());
}
return(defaultValue);
}
----------
javabean中加上null判断,如下:public static String getCookieValue(Cookie[] cookies,String cookieName,String defaultValue)
{
if ( cookies != null )
{
for(int i=0;i<cookies.length;i++) {
Cookie cookie = cookies[i];
if (cookieName.equals(cookie.getName()))
return(cookie.getValue());
}
} return(defaultValue);
}
“此bean是用来检测cookie中的username,若不为空则说明已登录,反之说明没有登录。” this.username = this.getCookieValue(myCookies,cookieName,"not found");
但是从getCookieValue这个方法不可能返回null,所以username也不可能为null。我这样想对吗,希望大家给出意见。
检查一下获得的是否为空,然后再对他进行调用否则会出现
运行时异常,就像你的空指针异常一样。
空指针错误。
搜索关键字NullPointerException
好多经典回复的
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception org.apache.jasper.JasperException: Unable to compile class for JSPNo Java compiler was found to compile the generated source for the JSP.
This can usually be solved by copying manually $JAVA_HOME/lib/tools.jar from the JDK
to the common/lib directory of the Tomcat server, followed by a Tomcat restart.
If using an alternate Java compiler, please check its installation and access path. org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:128)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:307)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:416)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:456)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:440)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:555)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:300)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:294)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)note The full stack trace of the root cause is available in the Tomcat logs.
2 cookieName.equals(cookie.getName())永远不会成立,程序永远不会得到正确结果
你把它测一下,不就完了吗,还用在这郁闷啊,
最简单的办法,你在它写的bean里加一个System.out.println("觉的有问题的变量");
这样它就可以显示在服务器的dos窗口里了,
大家总在这里觉的这,觉的那的,不如果动手做一下
http://community.csdn.net/Expert/topic/3472/3472337.xml?temp=.1701624
http://community.csdn.net/Expert/topic/3472/3472337.xml?temp=.1701624
public static String getCookieValue(Cookie[] cookies,String cookieName,String defaultValue)
{
if ( cookies != null )
{
for(int i=0;i<cookies.length;i++) {
Cookie cookie = cookies[i];
if (cookieName.equals(cookie.getName()))
return(cookie.getValue());
}
} return(defaultValue);
}但是按照你的逻辑,还要改check()如下
public boolean check(HttpServletRequest req,HttpServletResponse res)
throws IOException,ServletException
{
String cookieName = "username";
Cookie[] myCookies = req.getCookies();
this.username =getCookieValue(myCookies,cookieName,"");
PrintWriter out = res.getWriter();
if(this.username != null&&this.username.length()!=0)
{
//out.println("早上好," + this.username + "!");
return true;
}else{
out.println("登陆失败!");
return false;
}
}
要不然就不会出现登陆窗口了.你也可以改为其他的判断
package abc;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;//class checkLogin
public class checkLogin
{
public String username = "";
public boolean check(HttpServletRequest req,HttpServletResponse res)
throws IOException,ServletException
{
String cookieName = "username";
Cookie[] myCookies = req.getCookies();
if (myCookies!=null) {
username = getCookieValue(myCookies,cookieName);
PrintWriter out = res.getWriter();
if(username != null)
{
//out.println("早上好," + username + "!");
return true;
}else{
out.println("登陆失败!");
return false;
}
}
return false;
}
public String getUserName()
{
return username;
}
public static String getCookieValue(Cookie[] cookies,String cookieName)
{
for(int i=0;i<cookies.length;i++) {
Cookie cookie = cookies[i];
if (cookieName.equals(cookie.getName()))
return(cookie.getValue());
}
return null;
}
}