首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

SSH2遇到一个有关问题,请大侠们帮帮小弟我

2012-07-15 
SSH2遇到一个问题,请大侠们帮帮我就是在整合的时候,登录注册还要去加载页面上的数据,所以我写了一个BookAc

SSH2遇到一个问题,请大侠们帮帮我
就是在整合的时候,登录注册还要去加载页面上的数据,所以我写了一个BookAction来初始化登陆之后显示页面的信息,
struts_user.xml,struts_book.xml配置文件也有两个,struts_user.xml是登录用的,struts_book.xml是用来初始化登陆后页面显示的信息,我这个分法是模块化,请原谅....

我的问题是:从struts_user.xml中的action转发到struts_book.xml的aciton,怎么指定方法名,就是我要调用BookAction中的list()方法,我该怎么做,

还有就是,我在登录的时候做了判断,如果是普通会员登录那就跳入bookAction中的main.jsp,如果是管理员登录那就跳入struts_book.xml中bookAction的manager.jsp,那么我在struts_book.xml中的result的name怎么写


登录的配置信息struts_user.xml:

<struts>
<constant name="struts.i18n.encoding" value="utf-8"></constant>
<constant name="struts.configuration.xml.reload" value="true"></constant>
<constant name="struts.i18n.reload" value="true"></constant>
<!-- 默认的视图主题 -->
  <constant name="struts.ui.theme" value="simple" />
  <constant name="struts.objectFactory" value="spring" />

<package name="user" extends="struts-default" >
<action name="userAction" class="userAction">
<result type="chain">bookAction</result>
<result name="error">/index.jsp</result>
<result name="logout">/index.jsp</result>
<result name="manager" type="chain">bookAction</result>
</action>
</package>

</struts>  

struts_user.xml对应的UserAction信息

public class TUserAction extends BaseAction {

private static final long serialVersionUID = 1482245239790611680L;

private ITUserBiz userBiz;
private TUser user;
private Map session;
private String msg;

set和get我省掉为了直观

/**
* 登录
* @return
* @throws Exception
*/
public String login() throws Exception {
session=ActionContext.getContext().getSession();
TUser u=this.userBiz.login(this.user);
if(u!=null){
session.put("user", u);
if(u.getUserType()==1){
return "manager";
}
return SUCCESS;
}else{
this.msg="<script color='red'>alert('用户名或密码错误,请重新登录')</script>";
return ERROR;
}
}
/**
* 注册
*/
public String logout() throws Exception {
this.userBiz.logout(user);
this.msg="<script color='red'>alert('注册成功,请登录')</script>";
return "logout";
}
}


struts_book.xml:配置信息


<struts>
<constant name="struts.i18n.encoding" value="utf-8"></constant>
<constant name="struts.configuration.xml.reload" value="true"></constant>
<constant name="struts.i18n.reload" value="true"></constant>
<!-- 默认的视图主题 -->
  <constant name="struts.ui.theme" value="simple" />
  <constant name="struts.objectFactory" value="spring" />

<package name="book" extends="struts-default" >
<action name="bookAction" class="bookAction" method="list">
<result>/main.jsp</result>
<result name="manager">/manager.jsp</result>
</action>
</package>

</struts>  

当然还有一个BookAction来实现业务逻辑:

public class TBookAction extends BaseAction {

private static final long serialVersionUID = 2923206199972578677L;
private ITBookBiz bookBiz;
private TBook book;

private List<TBook> list;

  set和get我省掉为了直观  

/**
* 书籍列表


*/
public String list() throws Exception {
//request=(Map) ActionContext.getContext().get("reuqest");
//HttpServletRequest request = ServletActionContext.getRequest();
PageBean pageBean = this.processPageBean();
//request.put("bookList",this.bookBiz.list(book, pageBean));
if(book==null){
book=new TBook();
}
list=this.bookBiz.list(book, pageBean);
return SUCCESS;
}
}



[解决办法]
还有就是,我在登录的时候做了判断,如果是普通会员登录那就跳入bookAction中的main.jsp,如果是管理员登录那就跳入struts_book.xml中bookAction的manager.jsp,那么我在struts_book.xml中的result的name怎么写

可以在返回的时候写上普通用户 return "main" 管理员 return "manager"


我的问题是:从struts_user.xml中的action转发到struts_book.xml的aciton,怎么指定方法名,就是我要调用BookAction中的list()方法,我该怎么做,
这句话不太明白
是不是 登录action触发之后紧接着触发初始化系统信息的action?

XML code
<action name="List" class="com.system.web.action" method="list">            <result name="list">sitecolumnList.jsp</result>        </action><action name="Store" class="com.system.web.action" method="store">            <result name="input">sitecolumnEdit.jsp</result>            <!-- 传动态参数siteid到List.action中,如果传静态参数siteid=%{siteid}改为siteid=定值 -->            <result type="redirect">List.action?siteid=${siteid}</result>
[解决办法]
"如果是普通会员登录那就跳入bookAction中的main.jsp,如果是管理员登录那就跳入struts_book.xml中bookAction的manager.jsp"你这个直接在userAction中写不就行了,没明白为什么还要跑到bookAction中去。
"从struts_user.xml中的action转发到struts_book.xml的aciton,怎么指定方法名,就是我要调用BookAction中的list()方法,我该怎么做",你要调用BookAction中的list()方法,可以在UserAction写一个呀,然后调用bookService中的接口就行了,事务处理你难道放在action中的?
我的回答是按照我理解的问题回答的,我感觉自己好像没太理解你要表达的意思。
[解决办法]
http://download.csdn.net/detail/s478853630/4382009
建议你参考一下这个,或许更管用

热点排行