求救啊,纠结啊。。。。(Struts2)
各位帮我看看我这样的配置 有木有啥问题。我是看马士兵的视频,然后复制过来的(至于复制的文件,有错误,我也不知道,下面列出了我的xml jsp 文件)
当我输入http://localhost:8080/Struts2_0200_Namespace/front/index
为何显示不了呢 提示HTTP Status 404 - /Struts2_0200_Namespace/front/index 错误!!!
我刚刚接触框架,表示很补懂,求各位教教我丫
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"><struts> <package name="front" extends="struts-default" namespace="/front"> <action name="index"> <result>/Namespace.jsp</result> </action> </package> <package name="main" extends="struts-default" namespace=""> <action name="index"> <result>/Namespace.jsp</result> </action> </package></struts>
<?xml version="1.0" encoding="UTF-8"?><web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping></web-app>
<?xml version="1.0" encoding="GB18030" ?><%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%> <%@taglib uri="/struts-tags" prefix="s" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=GB18030" /><title>Insert title here</title></head><body>namespace决定了action的访问路径,默认为"",可以接收所有路径的action<br />namespace可以写为/,或者/xxx,或者/xxx/yyy,对应的action访问路径为/index.action,/xxx/index.action,或者/xxx/yyy/index.action.<br/>namespace最好也用模块来进行命名</body></html>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
过滤的是是对 /*
所以你改成这个:http://localhost:8080/Struts2_0200_Namespace/front/index.action
尝试一下吧!
[解决办法]
提示HTTP Status 404 - /Struts2_0200_Namespace/front/index 错误!!!
明显路径不对的!
[解决办法]
部署的项目名是否正确。。。好好检查一下。。。怀疑你部署的实际项目名不对。。。
[解决办法]
把你的目录结构和tomcat的部署的项目名发上来
[解决办法]
记得默认的是http://localhost:8080/Struts2_0200_Namespace/front/index.action
应该是.action了
你试试在你的struts.xml中配置这样一个试试
在packge便签外面添加这样一句了
<constant name="struts.action.extension" value="do,action"></constant>
这个表示是说你请求的时候可以用http://localhost:8080/Struts2_0200_Namespace/front/index.do或者
http://localhost:8080/Struts2_0200_Namespace/front/index.action来跳转到action中
[解决办法]
哈哈!!两眼泪汪汪呀!
[解决办法]