2007-08-07
struts跳转问题
关键字: struts跳转问题
web.xml
struts-config-admin.xml
spring的action-servlet.xml
页面代码:
当点击这个链接后
进入页面:
当点击Edit后报错误:org.apache.jasper.JasperException: Cannot retrieve mapping for action /codecatalog
跟踪了下代码, debug到
这句代码出错了。
也就是说:struts-config.xml里有没有配置/codecatalog映射,只配置了/admin/codecatalog映射,所以 报异常:
org.apache.jasper.JasperException: Cannot retrieve mapping for action /codecatalog
不知道是什么原因?谢谢。
<!-- Struts Action Mapping--> <servlet> <servlet-name>action</servlet-name> <servlet-class>org.apache.struts.action.ActionServlet</servlet-class> <init-param> <param-name>config</param-name> <param-value>/WEB-INF/struts-config.xml, /WEB-INF/modules/struts-config-admin.xml </param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
struts-config-admin.xml
<form-beans>
<form-bean name="codecatalogForm" type="org.apache.struts.validator.LazyValidatorForm"/>
</form-beans>
<action-mappings>
<!--使用通配符,对/admin/ 进行批量配置-->
<action path="/admin/*" name="{1}Form" scope="request" parameter="method" validate="false">
<forward name="list" path="/WEB-INF/pages/admin/{1}List.jsp"/>
<forward name="edit" path="/WEB-INF/pages/admin/{1}Form.jsp"/>
<forward name="success" path="/admin/{1}.do?method=list" redirect="true"/>
</action>
</action-mappings>
spring的action-servlet.xml
<beans default-autowire="byName" default-lazy-init="true"> <bean name="/admin/codecatalog" class="com.yahaitt.web.CodecatalogAction"/> </beans>
页面代码:
<li><a href="admin/codecatalog.do">Codecatalog</a></li>
当点击这个链接后
进入页面:
:<a href="${ ctx }/admin/codecatalog.do?method=edit&id=1">Edit</a>查看源代码为:
<a href="/searcher/admin/codecatalog.do?method=edit&id=1">Edit</a> //searcher为项目名
当点击Edit后报错误:org.apache.jasper.JasperException: Cannot retrieve mapping for action /codecatalog
跟踪了下代码, debug到
return mapping.findForward(LIST);
这句代码出错了。
也就是说:struts-config.xml里有没有配置/codecatalog映射,只配置了/admin/codecatalog映射,所以 报异常:
org.apache.jasper.JasperException: Cannot retrieve mapping for action /codecatalog
不知道是什么原因?谢谢。
- 15:46
- 浏览 (2410)
- 评论 (5)
- 分类: opensource
- 进入论坛
- 相关推荐
评论
love
2007-08-13
ttitfly 写道
问题已经解决
主要原因是因为跳转的页面/admin/{1}Form.jsp里有这样一段代码 :
这段代码用到了struts标签,会自动立即去struts-config.xml里找/codecatalog这个映射,而这个映射是不存在的,所以就报错了。
这样就可以了。
这段代码的struts标签里的action也不能这样写:action="${ctx}/admin/codecatalog.do"
也就是说不能带${ctx}
主要原因是因为跳转的页面/admin/{1}Form.jsp里有这样一段代码 :
<html:form action="/codecatalog.do" focus="name" styleClass="form" onsubmit="return validateUserForm(this)">
这段代码用到了struts标签,会自动立即去struts-config.xml里找/codecatalog这个映射,而这个映射是不存在的,所以就报错了。
所以改为 <html:form action="/admin/codecatalog.do" focus="name" styleClass="form" onsubmit="return validateUserForm(this)">
这样就可以了。
这段代码的struts标签里的action也不能这样写:action="${ctx}/admin/codecatalog.do"
也就是说不能带${ctx}
love
2007-08-13
ttitfly 写道
问题已经解决
主要原因是因为跳转的页面/admin/{1}Form.jsp里有这样一段代码 :
这段代码用到了struts标签,会自动立即去struts-config.xml里找/codecatalog这个映射,而这个映射是不存在的,所以就报错了。
这样就可以了。
这段代码的struts标签里的action也不能这样写:action="${ctx}/admin/codecatalog.do"
也就是说不能带${ctx}
主要原因是因为跳转的页面/admin/{1}Form.jsp里有这样一段代码 :
<html:form action="/codecatalog.do" focus="name" styleClass="form" onsubmit="return validateUserForm(this)">
这段代码用到了struts标签,会自动立即去struts-config.xml里找/codecatalog这个映射,而这个映射是不存在的,所以就报错了。
所以改为 <html:form action="/admin/codecatalog.do" focus="name" styleClass="form" onsubmit="return validateUserForm(this)">
这样就可以了。
这段代码的struts标签里的action也不能这样写:action="${ctx}/admin/codecatalog.do"
也就是说不能带${ctx}
leeking
2007-08-12
我觉得用struts标签很有局限性(我指html:*),有的时候还不如直接写html的元素,但出于规范,用struts标签还是有必要的.
letle
2007-08-11
用了html标签以后,action对应的就是struts配置文件中的对应的映射。
在html标签里也不能使用jstl的标签,他们的作用域是不一样的。
在html标签里也不能使用jstl的标签,他们的作用域是不一样的。
ttitfly
2007-08-07
问题已经解决
主要原因是因为跳转的页面/admin/{1}Form.jsp里有这样一段代码 :
这段代码用到了struts标签,会自动立即去struts-config.xml里找/codecatalog这个映射,而这个映射是不存在的,所以就报错了。
这样就可以了。
这段代码的struts标签里的action也不能这样写:action="${ctx}/admin/codecatalog.do"
也就是说不能带${ctx}
主要原因是因为跳转的页面/admin/{1}Form.jsp里有这样一段代码 :
<html:form action="/codecatalog.do" focus="name" styleClass="form" onsubmit="return validateUserForm(this)">
这段代码用到了struts标签,会自动立即去struts-config.xml里找/codecatalog这个映射,而这个映射是不存在的,所以就报错了。
所以改为 <html:form action="/admin/codecatalog.do" focus="name" styleClass="form" onsubmit="return validateUserForm(this)">
这样就可以了。
这段代码的struts标签里的action也不能这样写:action="${ctx}/admin/codecatalog.do"
也就是说不能带${ctx}
- 浏览: 90770 次
- 性别:

- 来自: 杭州

- 详细资料
搜索本博客
我的相册
bbbb
共 3 张
共 3 张
最近加入圈子
最新评论
-
hibernate知识小结
谢谢!!正好delete那个地方没弄懂!以为delete之后还是持久态!!现在基 ...
-- by 410228573 -
hibernate------HQL总结
谢谢,学习了!
-- by gdjbj2008 -
Extjs2.0---继承
Ext.extend(SubClass,BaseClass,{ ...
-- by yunhaifeiwu -
修改Eclipse注释里的${Da ...
找到eclipse.ini 里面有-Duser.language=en 改为-D ...
-- by duooluu -
sqlserver2005获取连接失 ...
...
-- by gordanmao






评论排行榜