import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;public class ForwardServlet extends HttpServlet
{
public void service(HttpServletRequest req,HttpServletResponse res)throws IOException,ServletException
{
res.setContentType("text/html;charset=gb2312");

RequestDispatcher rd=getServletContext().getRequestDispatcher();
rd.forward("/index.html");

}
}
以下是我的xml 配置文件!
<servlet>
<servlet-name>AnyName</servlet-name>
<servlet-class>ForwardServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AnyName</servlet-name>
<url-pattern>/servlet/ForwardServlet</url-pattern>
</servlet-mapping>访问时出现500错误!这是怎么回事儿啊。请教达人!

解决方案 »

  1.   

    500错误说明在你的servlet运行的时候出现了错误,
    看看你的后台打印的错误堆栈信息,根据信息显示的错误去具体的排除错误。
      

  2.   

    在servlet里写句out.print
    设置好web.xml看下
      

  3.   

    我感觉的的程序没有错误啊!是不是哪儿里配置错了?
    我用的是TOMCAT5可我运行其他SERVLET程序都没有问题。OH MY GOD!
      

  4.   

    <servlet-class>ForwardServlet</servlet-class>  
    例如<servlet-class>com.test.ForwardServlet</servlet-class> 
    放到一个指定的package下面看看
    好象放在默认的包下面有问题,我以前也遇到过这样的问题
      

  5.   

    RequestDispatcher rd=getServletContext().getRequestDispatcher("/index.html");
    rd.forward(req,res);

      

  6.   

    改成这样
    RequestDispatcher rd=getServletContext().getRequestDispatcher("/index.html");
    rd.forward(req,res);
      

  7.   

    我试过了上面的办法。还是不行啊。我用forward方法实现重定向,OK了。
    用include方法。还是没有搞定。
      

  8.   

    RequestDispatcher dispatcher=request.getRequestDispatcher("/index.html");
    dispatcher.include(request,response);试试。
      

  9.   

    RequestDispatcher rd=request.getRequestDispatcher("/index.html");
    rd.forward(req,res);
      

  10.   

    try {
         RequestDispatcher requestDispather=request.getRequestDispatcher("/index.html");
         requestDispather.forward(request,response);  } catch (Exception e) {
    e.printStackTrace();
         }
    建议加上异常捕捉 因为那两句可能会抛出异常 而且楼主你再查看一下你要跳转的页面的路径是否正确