求救啊,纠结啊。。。。(Struts2)
各位帮我看看我这样的配置 有木有啥问题。我是看马士兵的视频,然后复制过来的(至于复制的文件,有错误,我也不知道,下面列出了我的xml jsp 文件)
当我输入http://localhost:8080/Struts2_0200_Namespace/front/index
为何显示不了呢 提示HTTP Status 404 - /Struts2_0200_Namespace/front/index 错误!!!
我刚刚接触框架,表示很补懂,求各位教教我丫
- XML code
<?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>
这是我的struts.xml文件
- XML code
<?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>
这是我的web.xml文件
- Java code
<?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>
这是的我jsp文件
[解决办法]
url路径不对
穷举法都可以试出来
[解决办法]
索引有问题吧intex
[解决办法]
马士兵又在害人了。。。害了不少人。。。
[解决办法]
http://localhost:8080/Struts2_0200_Namespace/front/index 这个有问题吧,我不确定,你试下吧!
/front 为命名空间
struts.xml文件
<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>
过滤的是是对 /*
所以你改成这个: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中
[解决办法]
哈哈!!两眼泪汪汪呀!
[解决办法]
[解决办法]
应该是action访问没问题的,不然会报struts problem的,看下你的jsp路径有没有问题吧
[解决办法]
xml 如何进行扩展和自定义标签
[解决办法]
<result>/Namespace.jsp</result>
这个地方都没有返回结果,就没有办法跳转到对应的页面吧!
<result name="XXXX">/Namespace.jsp</result>
XXX表示后台action代码中return的返回值。
[解决办法]
右键工程-》properties-》找到myeclipse下的web-》看右边的web context root是否正确
[解决办法]
我怀疑是不是忘记加了.jsp
因为你的项目欢迎页面是xml里面配置的 index.jsp
[解决办法]
你的端口有没有被你修改