是这样的,想知道用户输入http://127.0.0.1/xxx,然而xxx是不存在的目录或文件,Tomcat会报此文件不存在的error,那我如何才能获取用户输入的http://127.0.0.1/xxx的URL,想取得这个URL再作处理!!如:用户输入http://127.0.0.1/yyy,因yyy不存在,所以将错误报给用户:对不起,您输入的http://127.0.0.1/yyy地址有错!!请教大家!!关键在于取出用户输入错误的地址!!!!!!!

解决方案 »

  1.   

    request.getRequestURL().toString()
    这个可以取到!
      

  2.   

    catch Error信息。不是有一個error page的嗎>
      

  3.   

    在项目里好像不行。在Tomcat里做手脚吧,得修改Tomcat文件
      

  4.   

    我的代码如下:
    /conf/web.xml
    <error-page>
     <error-code>404</error-code>
     <location>/error404.jsp</location> 
    </error-page>/error404.jsp<%@ page contentType="text/vnd.wap.wml;charset=UTF-8" %><%@ page isErrorPage="true"%>
    <% if (exception!=null) {%>
    <%= exception.getMessage() %>
    <br/>
    <br/>
    <%
    java.io.CharArrayWriter cw = new java.io.CharArrayWriter();
    java.io.PrintWriter pw = new java.io.PrintWriter(cw,true);
    exception.printStackTrace(pw);
    out.println(cw.toString());}
    %>这里就是不会打印信息!!!!!!!!!问题出在哪?
      

  5.   

    ie是不会报错的,但是标题栏是404错误...用firefox行的..这是ie的问题可以设置ie---高级---显示友好的http错提示勾取消..
      

  6.   

    楼上的不对,我用的是Firefox,但仍不会打印错误信息,请大家做一下测试了..
      

  7.   

    <%    String err = request.getParameter("errmsg");    String errmsg = new String(err.getBytes("ISO-8859-1"),"GBK");  %>你可以把异常catch 放在request
      

  8.   

    exception.printStackTrace(response.getWriter());
      

  9.   

    这个错误是404错误,又不是抛出了异常,你那里来的exception?