当前位置: 代码迷 >> Eclipse >> 为什么会报404异常
  详细解决方案

为什么会报404异常

热度:51   发布时间:2016-04-23 13:52:19.0
为什么会报404错误

//struts-config.xml
<action path="/test" type="com.edu.action.Test"
scope="request" parameter="method">
<forward name="test" path="/WEB-INF/pages/test.jsp" />
</action>

//test.jsp
<%@ page language="java" contentType="text/html; charset=windows-31j"
  pageEncoding="windows-31j"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-31j">
<title>Insert title here</title>
</head>
<body>
ssssssssssssssssssss
</body>
</html>

//Test.java

package com.edu.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public class Test extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
return mapping.findForward("test");
}
}


------解决方案--------------------
什么错呢
------解决方案--------------------

------解决方案--------------------
/WEB-INF/pages/test.jsp 
检查 test.jsp 是否发布在这个路径下
------解决方案--------------------
估计就是路径的问题
------解决方案--------------------
web.xml文件
和你的struts 文件。发上来看一下
------解决方案--------------------
你提供的这些代码没有问题,404就是路径错误。你看看webroot/WEB-INF/pages路径下有没有test.jsp文件,或者你直接把test.jsp放在webroot下,然后struts配置文件中直接写<forward name="test" path="/test.jsp" />

------解决方案--------------------
//struts-config.xml
<action path="/test" type="com.edu.action.Test"
scope="request" parameter="method">
<forward name="test" path="/WEB-INF/pages/test.jsp" />
</action>

检查test.jsp路径是不是对应/WEB-INF/pages/

------解决方案--------------------
有时候路劲过长也有问题。
你试试直接把test.jsp放在webroot下,然后struts配置文件中直接写<forward name="test" path="/test.jsp" />

------解决方案--------------------
一般出现404都是由于路径出现了错误导致的,仔细检查一下路径。
------解决方案--------------------
报404一般分为两种情况
一、如果是静态页面间的跳转,那就是你的路径有问题。
二、如果不是静态页面之间的跳转,首先你看确定你的Action是不是有,有没有配错,如果Action没有错,那就要看看你的Struts.xml文件中有没有对应你配的路径。
------解决方案--------------------
我记得默认JavaEE无法直接访问/WEB-INF/底下的页面和文檔
提供客户端访问的文檔请放在WebRoot下用/test.jsp即可访问
------解决方案--------------------
补充说明:
因JavaEE下的/WEB-INF/存放许多重要的设置文檔
这些个文檔太重要不能被客户端浏览
所以为了我们站台的安全不提供客户端访问

------解决方案--------------------
404错误是路径上的错误,仔细找,而且JSP页面不能放在WEB-INF下的
------解决方案--------------------
  相关解决方案