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即可。


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