日期:2014-05-17  浏览次数:20696 次

新手在集成SSH2遇到了一些问题,请高手帮帮忙,请大侠不吝赐教......
我在集成的时候就遇到3个问题,
1,一个就是页面中的form表单使用页面form表单里写了
<s:form action="sysUserAction!login" method="post" theme="simple">
<table width="100%">
<tr>
<td><s:fielderror fieldName="sysUser"/></td>
</tr>
<tr> 
<th>用户名</th>
<td>
<s:textfield name="text" name="sysUser.usrName" maxlength="20" id="name"></s:textfield>
</td>
</tr>
<tr> 
<th>密码</th>
<td><s:password name="password" name="sysUser.usrPassword" maxlength="20" id="pass"></s:password></td>
</tr>
<tr> 
<td>&nbsp;</td>
<td><img onclick="login()" src="images/login/login_button.jpg" width="73" height="25"></td>
</tr>
</table>
<s:token></s:token>
</s:form>

然后Struts配置写了<result name="invalid.token">/login.jsp</result>,代码如下:

  <action name="sysUserAction" class="sysUserAction">
<result name="success">WEB-INF/pages/index.jsp</result>
<result name="error">/login.jsp</result>
<result name="invalid.token">/login.jsp</result>
<!-- 
<interceptor-ref name="defaultStack"></interceptor-ref>
<interceptor-ref name="token"></interceptor-ref>
<result name="invalid.token">/error.jsp</result>
-->
</action>

问题是我怎么在login.jsp页面显示提示信息,


2,在Struts.xml中的result中跳转到了web-inf下面的index.jsp页面,但是页面是:

<frameset rows="85,*,40" frameborder="NO" noresize Borders="NO" framespacing="0"> 

 <frame name="topFrame" frameborder="NO" scrolling="NO" noresize Borders="NO" src="top.jsp" marginwidth="value" marginheight="value" >

 <frame name="mainFrame" noresize Borders="NO" src="index-ec.jsp" marginwidth="value" marginheight="value" >

 <frame src="footer.jsp" name="top1Frame" frameborder="NO" scrolling="NO" noresize marginwidth="0" marginheight="0" Borders="NO" >
</frameset>


这样的页面,问题是:其他页面怎么加载,我使用后的结果就是报404的问题,无法加载其他页面,其他页面的路径怎么去写
请看上面中src=“”这个是我写的加载其他页面的路径。。。。footer.jsp,index-ec.jsp,top.jsp是不是页面进行配置,那我该怎么配置........

3,有没有一个根据用户名和密码查询然后返回一个对象的模板方法,比如:this.getHibernateTelemple().load()之类的,的....,如果你在验证登陆的时候用的什么方法验证的,我是的是:
public List<SysUser> login(SysUser user) {
  String [] u={user.getUsrName(),user.getUsrPassword()};
  List<SysUser> list=this.getHibernateTemplate().find(" from SysUser s where s.usrName=? and s.usrPassword=?",u);
return list;
}

请问有没哟更好的方法,直接返回一个对象,


我是一个初学者,请你们谅解.....


------解决方案--------------------
第一个问题:可以在登陆验证的时候返回一个参数,作为提示信息
第二个问题:你只需要把要加载的页面路径写正确就行了,可以参考我下面一段代码
<FRAMESET ID=fm1 rows="9%,37%,38%,*" border="0">
<FRAME id="f