各位师兄师姐好,我用jsp 想servlet里面传值老是出java.lang.NullPointerException 错误,急,希望大家帮忙看看jsp
<c:if test = "${empInfoList == null}">
<jsp:forward page="ServletEmpInfo?method=all"/>
</c:if>servlet
EmpInfoDao empDao = new EmpInfoDao();
/**
* 查询显示所有律师信息
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
String method = request.getParameter("method");
System.out.println("dddddddddddddddddddddddddddddddddddd"+method);
if(method.equals("all"))
{
List empInfoList = empDao.getEmpInfo();
request.setAttribute("empInfoList", empInfoList);
//转发
request.getRequestDispatcher("hanboLawyer/SpecialtyTeam.jsp").forward(request, response);
}
}
补充:这个method 输出来以后老是空的,怎么回事
错误消息如下:
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception java.lang.NullPointerException
project.servlet.whl.ServletEmpInfo.doGet(ServletEmpInfo.java:25)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.20 logs.
<c:if test = "${empInfoList == null}">
<jsp:forward page="ServletEmpInfo?method=all"/>
</c:if>servlet
EmpInfoDao empDao = new EmpInfoDao();
/**
* 查询显示所有律师信息
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
String method = request.getParameter("method");
System.out.println("dddddddddddddddddddddddddddddddddddd"+method);
if(method.equals("all"))
{
List empInfoList = empDao.getEmpInfo();
request.setAttribute("empInfoList", empInfoList);
//转发
request.getRequestDispatcher("hanboLawyer/SpecialtyTeam.jsp").forward(request, response);
}
}
补充:这个method 输出来以后老是空的,怎么回事
错误消息如下:
type Exception reportmessage description The server encountered an internal error () that prevented it from fulfilling this request.exception java.lang.NullPointerException
project.servlet.whl.ServletEmpInfo.doGet(ServletEmpInfo.java:25)
javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.20 logs.
这里应该是ServletEmpInfo.do或是.什么吧,你应该有配置的吧
<jsp:forward page="ServletEmpInfo">
<jsp:param name="method" value="all"/>
</jsp:forward>
这样看看是不是可以?
<jsp:forward page="ServletEmpInfo?method=all"/>
</c:if> 这个method老是空的 不知道怎么回事 谢谢各位帮忙
<jsp:param name="method" value="all"/>
</jsp:forward>
看看这样行不?
project.servlet.whl.ServletEmpInfo.doGet(ServletEmpInfo.java:25)
第25行在哪?
能不能把部分代码贴出来看看
想这样看,是看不出问题的
因为这段代码是正常的
有可能是别的代码影响了它的
所以我建议你一段一段的贴出来,让大伙帮你解决掉
package project.servlet.whl;import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import project.dao.whl.EmpInfoDao;
//王宏亮 律师Servlet (2010-9-28)
public class ServletEmpInfo extends HttpServlet
{
EmpInfoDao empDao = new EmpInfoDao();
/**
* 查询显示所有律师信息
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
String method = request.getParameter("method");
System.out.println("dddddddddddddddddddddddddddddddddddd"+method);
if(method.equals("all")) //这是第25行 {
List empInfoList = empDao.getEmpInfo();
request.setAttribute("empInfoList", empInfoList);
//转发
request.getRequestDispatcher("hanboLawyer/SpecialtyTeam.jsp").forward(request, response);
}
} /**
*
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}}
<%@ page language="java" import="java.util.*,project.servlet.whl.*,project.entity.whl.*" pageEncoding="gbk"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%><c:if test = "${empInfoList == null}">
<jsp:forward page="ServletEmpInfo?method=all"></jsp:forward>
</c:if>
<html>
<head>
<title>专业团队</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<link rel="stylesheet" type="text/css" href="css/specialtyTeamNew.css"></link>
<link rel="stylesheet" type="text/css" href="css/other.css"></link>
我是想说使用表单的get方式提交就应该没问题了
<c:forEach items="${empInfoList}" var="emp">
<table width="595" border="0" style="font-size:13px;color:#797979;margin-bottom:15px;table-layout:fixed;">
<tr>
<td width="100" align="left">${emp.empName} More>>></td>
<td width="150" align="center">${emp.empJob}</td>
<td align="center" width="150" style="white-space:nowrap;word-break:keep-all;overflow:hidden;text-overflow:ellipsis;">${emp.empRealm}</td>
<td width="155" align="center">${emp.empLanguage}</td>
</tr>
</table>
<div class="hrGOWHL"></div>
</c:forEach>
</div>
或者把<jsp:forward page="ServletEmpInfo?method=all"></jsp:forward>改为<a>标签的方式
<c:if test = "${empInfoList == null}">
<jsp:forward page="ServletEmpInfo?method=all"></jsp:forward>
</c:if>
<body>
<form id="form1" method ="get">
<div class="centerALLWHL">改了 还是不行啊 !!
//////////////////////////////////////////////////////////////////
import java.io.IOException;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;public class ServletEmpInfo extends HttpServlet { /**
* 查询显示所有律师信息
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String method = request.getParameter("method");
System.out.println("dddddddddddddddddddddddddddddddddddd" + method);
if (method.equals("all")) {
System.out.println("ok");
}
} /**
*
*/
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}}
/////////////////////////////////////////////////
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<c:if test = "${empInfoList == null}">
<jsp:forward page="ServletEmpInfo?method=all"></jsp:forward>
</c:if>
/////////////////////////////////////////////////////
<servlet>
<description>This is the description of my J2EE component</description>
<display-name>This is the display name of my J2EE component</display-name>
<servlet-name>ServletEmpInfo</servlet-name>
<servlet-class>ServletEmpInfo</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>ServletEmpInfo</servlet-name>
<url-pattern>/ServletEmpInfo</url-pattern>
</servlet-mapping>
//////////////////////////////////////////////////
如果还不行,你就把服务器停一下,在删掉以前的部署文件,再重写部署一下,再运行一下
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<servlet-name>sr</servlet-name>
<servlet-class>com.servlet.ServletReg</servlet-class>
<init-param>
<param-name>character</param-name>
<param-value>utf-8</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>sl</servlet-name>
<servlet-class>com.servlet.ServletLogin</servlet-class>
<init-param>
<param-name>character</param-name>
<param-value>utf-8</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>servletListPage</servlet-name>
<servlet-class>com.servlet.servletListPage</servlet-class>
<init-param>
<param-name>character</param-name>
<param-value>utf-8</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>servletDetailPage</servlet-name>
<servlet-class>com.servlet.servletDetailPage</servlet-class>
<init-param>
<param-name>character</param-name>
<param-value>utf-8</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>sm</servlet-name>
<servlet-class>com.servlet.ServletManager</servlet-class>
<init-param>
<param-name>character</param-name>
<param-value>utf-8</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>servletIndex</servlet-name>
<servlet-class>com.servlet.servletIndex</servlet-class>
<init-param>
<param-name>character</param-name>
<param-value>utf-8</param-value>
</init-param>
</servlet>
<servlet>
<servlet-name>ServletEmpInfo</servlet-name>
<servlet-class>project.servlet.whl.ServletEmpInfo</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>sr</servlet-name>
<url-pattern>/ServletReg</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>sl</servlet-name>
<url-pattern>/ServletLogin</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>servletListPage</servlet-name>
<url-pattern>/servletListPage</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>servletDetailPage</servlet-name>
<url-pattern>/servletDetailPage</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>sm</servlet-name>
<url-pattern>/ServletManager</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>servletIndex</servlet-name>
<url-pattern>/servletIndex</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ServletEmpInfo</servlet-name>
<url-pattern>/ServletEmpInfo</url-pattern>
</servlet-mapping> <welcome-file-list>
<welcome-file>ServletEmpInfo</welcome-file>
</welcome-file-list>
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
</web-app>