SSH学习总结

    这两天学习了一下SSH,将遇到的问题记录一下。

    1、Struts

    动态ActionForm,DynaActionForm的好处在于不用自己写ActionForm类这些setter()、getter()方法。使用DynaActionForm只需修改之前的struts-config.xml和利用Action获得jsp页面输入的信息。

    2、Struts

    jsp页面无法获得action处理的结果。jsp页面:<s:property value="result"/>,无法显示,原因是calActoin里的私有成员result没有setter() getter()方法。这样即使calActoin里面即使给result赋值了,jsp页面也无法通过getter()方法得到result的值(个人理解不知对不对)。

    3、Spring

    jsp页面输入的参数并没有传递到action里面。原因是jsp的form里面参数的name同action里处理的成员name不一致造成的。

    4、Hibernate

    actoin处理的结果没有办法在jsp页面显示。这个程序不是从jsp页面提交的,而是直接在action里面处理结束后将结果在jsp页面显示。显示的错误信息:No result defined for action yao.actions.MapAction and result success。这个错误真是花费了好长时间,网上多数说是因为strtuts-config.xml文件里没有配置action的result属性,或者是result的name属性和action返回的不一致或者action的name属性与struts内部命名冲突之类的。

 <action name="map" class="yao.actions.MapAction">
        <result name="success">/map.jsp</result>
 </action>

觉得自己的不是这个错误,也试图改过action的name属性的值,可是还是同样的错误。debug的时候action里面一切运行正常,只是最后return "success"; 的时候action返回的结果"success"能够得到,但是result的一直是null。错误也就定位在配置文件,最后在同学的帮助下在web.xml里面找到的。

 <filter-mapping>
   <filter-name>struts2</filter-name>
   <url-pattern>*.action</url-pattern>
  </filter-mapping>

之前是过滤所有的即<url-pattern>/*</url-pattern>。修改之后是只过虑aciton,之前的范围更广具体为什么错,也还没搞明白。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值