IllegalAccessException: Class StandardWrapper can not access HelloServlet class with modifier xxx

【code】

Servlet程序代码如下:
//HelloServlet.java
package edu.zt.servlet;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
class HelloServlet extends HttpServlet
{
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{
PrintWriter out = resp.getWriter();
out.println("<html>");
out.println("<head><title>hello</title></head>");
out.println("<body>");
out.println("<h1><font color=\"red\">Hello World</font></h1>");
out.println("</body>");
out.println("</html>");
out.close();
}
}



配置Servlet
//web.xml

 

<servlet>
<servlet-name>helloservlet</servlet-name>
<servlet-class>edu.zt.servlet.HelloServlet</servlet-class>
 </servlet>
 <servlet-mapping>
<servlet-name>helloservlet</servlet-name>
<url-pattern>/helloservlet</url-pattern>
 </servlet-mapping>


【问题描述】


http:localhost:8080/demo/helloservlet访问该Servlet时出现以下错误信息:
IllegalAccessException: Class StandardWrapper can not access HelloServlet class with modifier xxx

【原因与解决方案】


HelloServlet 的类修饰符为包可见,所以StandardWrapper无权访问HelloServlet 。
将HelloServlet 的类修饰符改为public即可。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章