关于ActionRedirect问题

shangezi 2009-09-23 04:05:57
ActionRedirect 作转向,但有时候可以,有时候不可以,不知道为什么
代码如下:

private ActionForward callbackOperation(Charge charge,
HttpServletRequest request) throws AppException {
System.out.println("-----开始执行callbackOperation----------");

ActionRedirect redirect = new ActionRedirect("/agent/agent.do");
redirect.addParameter("thisAction", "agentInfoById");

final String chargeType = charge.getType();
final String remark = charge.getRemark();

try {
if (Charge.CHARGE_TYPE_SELF.equals(chargeType)) {
return redirect;
} else if (Charge.CHARGE_TYPE_TRANSACTION.equals(chargeType)) {
redirect = new ActionRedirect("/transaction/transaction.do");
redirect.addParameter("thisAction",
"transactionPaymentReturnByBank");
redirect.addParameter("transactionNo", remark);
} else if (Charge.CHARGE_TYPE_NOACCOUNT.equals(chargeType)) {

redirect = new ActionRedirect("/cooperate/gateway.do");
redirect.addParameter("service",
"direct_payment_for_no_account");
redirect.addParameter("remark", remark);

} else if (Charge.CHARGE_TYPE_DIRECTPAYMENT.equals(chargeType)) { //例如我现在执行这里
System.out.println("--0-开始redirect,订单号:" + charge.getOrderNo());

redirect = new ActionRedirect("/cooperate/gateway.do");
redirect.addParameter("service", "direct_payment_by_bank");
redirect.addParameter("remark", remark);

System.out.println("-1-开始redirect,订单号:" + charge.getOrderNo());
} else if (Charge.CHARGE_TYPE_OTHER.equals(chargeType)) {
return redirect;
}
} catch (Exception ex) {
System.out.println("callbackOperation异常," + ex.getMessage());
return null;
}
System.out.println("------------开始执行redirect------" + chargeType
+ ",Charge.CHARGE_TYPE_DIRECTPAYMENT.equals(chargeType)="
+ Charge.CHARGE_TYPE_DIRECTPAYMENT.equals(chargeType));
return redirect;
}


可以看到我们执行的那里
最后都是return redirect的,但为什么有时候可以转,有时候不可以呢
...全文
120 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
robyjeffding 2009-09-25
  • 打赏
  • 举报
回复
我不知道这个ActionRedirect 是从哪里来的?应该是ActionForward对象来做转向吧!
shangezi 2009-09-25
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 yangkunyeah 的回复:]
在后台有这么写的吗?好好的学学之后再写代码
[/Quote]

你叫个屁啊,写代码好不好关你屁事
wenbinglove 2009-09-24
  • 打赏
  • 举报
回复
进入这个方法 就开始转向咯
下面的 else if 中 怎么 又有 new ActionRedirect 转向呢?
两次 转向 行吗?
少龙123 2009-09-24
  • 打赏
  • 举报
回复
有此映射的话就可以,没有的话就找不到controller而不可以,有问题吗?
yangxiao000 2009-09-23
  • 打赏
  • 举报
回复
如果你用struts的话建议你在配置文件中写.
yangkunyeah 2009-09-23
  • 打赏
  • 举报
回复
在后台有这么写的吗?好好的学学之后再写代码
shangezi 2009-09-23
  • 打赏
  • 举报
回复
我意思是,例如

redirect = new ActionRedirect("/cooperate/gateway.do");
redirect.addParameter("service", "direct_payment_by_bank");
redirect.addParameter("remark", remark);

return redirect

最后应该是执行("/cooperate/gateway.do?service=direct_payment_by_bank 这个的,但是没有执行到,有时候又可以
magicbu 2009-09-23
  • 打赏
  • 举报
回复
是不是跑到异常里去了,那边返回的是null
Johnson_Hong 2009-09-23
  • 打赏
  • 举报
回复
有时候不可以,不可以是指什么啊,跳转到空白页面?还是后台控制台报错?
断点单步调试一下
shangezi 2009-09-23
  • 打赏
  • 举报
回复
是啊,我就是不知道为什么,郁闷
鲜为人知 2009-09-23
  • 打赏
  • 举报
回复
没找到什么问题

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧