精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-10-20
一个很怪的问题。
<!-- 查询我的便签列表 --> <action name="findMynoteListAction" class="mynoteAction" method="findMynoteList"> <result name="success" >/jsp/schedule/myNoteList.jsp</result> </action> <!-- 添加便签【只有这个Action找不到】 --> <action name="addMynoteAction" class="mynoteAction" method="addMynote"> <result type="redirectAction">findMynoteListAction</result> <result name="input">/jsp/schedule/myNoteAdd.jsp</result> </action> <!-- 删除便签 --> <action name="deleteMynoteAction" class="mynoteAction" method="deleteMynote"> <result type="redirectAction" >findMynoteListAction</result> </action> <!-- 根据ID查询便签 --> <action name="findMynoteByIdAction" class="mynoteAction" method="findMynoteById"> <result name="success" >/jsp/schedule/myNoteUpdate.jsp</result> <result name="error" type="redirectAction">findMynoteListAction</result> </action> <!-- 更新便签 --> <action name="updateMynoteAction" class="mynoteAction" method="updateMynote"> <result name="success" type="redirectAction">findMynoteListAction</result> <result name="input" type="redirectAction" >findMynoteByIdAction</result> </action>
这是struts.xml文件package声明: <package name="default" extends="struts-default" namespace="/">
这是jsp页面form表单调用Action的代码:用的是绝对路径 <form name="form1" method="post" action="${basepath}addMynoteAction.action">
配置文件中写的都一样,只是name不一样,页面调用的方法都一样,所有页面也在同一个文件夹下,可是根本就找不到调用的这个Action,写的是绝对路径啊,除了增加(addMynoteAction),其他功能都没问题。
后来我又把namespace="/"加上,发现别的页面调用这个addMynoteAction都没问题,唯独这个页面调用哪个Action都错误,我又重新建了新页面,忘记了删除jsp页面开头的 <base href="<%=basePath%>">,竟然不报错了,我习惯新建页面后把这句删了,因为以前做项目时,加上这句就 错。
虽然项目不报错了,可是我还是不明白,别的页面、修改查询等页面都没有这句<base href="<%=basePath%>">,我习惯都用绝对路径,可是为什么别的页面没有这句就不报错,唯独这个增加 数据的页面没有这句就报错?这个模块所有页面都在一个文件夹里同一路径下。
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-10-20
这不是在不在同一个包一的问题,是你当前处于的路径的问题
|
|
返回顶楼 | |
发表时间:2011-10-20
所有页面路径都一样啊?我指定的是绝对路径,可是程序还是到这个子文件夹下找Action!
|
|
返回顶楼 | |
发表时间:2011-10-21
最后修改:2011-10-21
action="${basepath} addMynoteAction.action"
1 是不是在 这 加个 / 额。。。 |
|
返回顶楼 | |
发表时间:2011-10-22
有的时候就这样,有的时候重新部署一下就好了
希望对你有帮助。 |
|
返回顶楼 | |
发表时间:2011-10-22
建议:加个name="success"
input会跳到错误页面,正确的话就找不到了 <!-- 添加便签【只有这个Action找不到】 --> <action name="addMynoteAction" class="mynoteAction" method="addMynote"> <result name="success" type="redirectAction">findMynoteListAction</result> <result name="input">/jsp/schedule/myNoteAdd.jsp</result> </action> 楼主试试 |
|
返回顶楼 | |
发表时间:2011-10-22
that lost of result file like xxxx.jsp
|
|
返回顶楼 | |
发表时间:2011-11-23
action="${basepath} addMynoteAction.action"
很明显,路径不对,少个‘/’,要仔细一点。 |
|
返回顶楼 | |
浏览 5824 次