关于struts2的通配符的问题 100

以下是关于问题的描述。。。望指点Struts。xml的配置(action返回结果_返回的页面名次!action的名称)<actionname="*_*!*"class="... 以下是关于问题的描述。。。望指点

Struts。xml的配置(action返回结果_返回的页面名次!action 的名称)

<action name="*_*!*" class="{3}" method="{2}">
<result name="{1}" type="chain">${floder}/{2}.jsp</result>
<result name="index">/index.jsp</result>
</action>
Spring配置bean(正常的普通action继承ActionSupport类)
<bean id="basePageSendPack" class="com.base.ssh.BasePageSendPack" />
页面访问(根据struts。xml的配置文件进行配置)
<a href="loginForum_userLogin!basePageSendPack">请求</a> <br>

请求url为
http://192.168.30.191:8081/Struts2SpringHibernate/loginForum_userLogin!basePageSendPack

提示错误
Unable to instantiate Action, , defined for 'loginForum_userLogin' in namespace '/'
com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:307)
com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:388)
...

root cause
java.lang.ClassNotFoundException:
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
。。。。
  *_*!* 是三个通配符
  先做的效果是
  第一个通配符为返回的result的name
  第二个通配符则是作为调用action的方法名称和返回的jsp名称
  第三个通配符则是作为action的class与spring匹配bean 的id
  上面我访问的也是这个loginForum_userLogin!basePageSendPack

  我如果用另一种方式的话比如

  第一个通配符作为result的name和jsp返回的一面名称
  第二个作为caction的class值和spring的bean的id
  第三个作为action的方法名称
  使用这种方法则能正常访问
展开
 我来答
明月清风618
2015-01-12 · TA获得超过737个赞
知道小有建树答主
回答量:395
采纳率:100%
帮助的人:127万
展开全部
错误是不能够把你的action转换,没有发现login_fornum_userLogin在你xml里面配置,你通配符的位置写的有点错, 一般写俩就够了吧,没看出来你的{3}是在哪儿。
追问
  *_*!*  是三个通配符
  先做的效果是
  第一个通配符为返回的result的name
  第二个通配符则是作为调用action的方法名称和返回的jsp名称
  第三个通配符则是作为action的class与spring匹配bean 的id
  上面我访问的也是这个loginForum_userLogin!basePageSendPack
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yuboalt
2015-01-12 · TA获得超过578个赞
知道小有建树答主
回答量:509
采纳率:0%
帮助的人:209万
展开全部
ClassNotFoundException: 解决应该就好了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式