刚开始学Struts2,请教一个页面跳转的问题

ZXEOC 2013-05-30 06:05:32
struts.xml如下:
<struts>
<package name="main" extends="struts-default">
<global-results>
<result name="login">/login.jsp</result>
</global-results>
<action name="convertor" class="com.zx.struts2.action.ConvertorAction"
converter="com.zx.struts2.convertor.DateTimeConvertor">
<result name="input">/convertor.jsp</result>
<result name="success">/convertorSuccess.jsp</result>
</action>
</package>
</struts>


ConvertorAction如下:
public class ConvertorAction extends ActionSupport
{
private Date sqlDate;
private Time sqlTime;
private java.util.Date utilDate;

public String execute()
{
System.out.println("execute(),return input");
return INPUT;
}

public String convert()
{
System.out.println("convert(),return success");
return SUCCESS;
}
//getter/setter略
}


输入页面:
<body>
<s:form action="convertor" method="post">
<s:label label="convertor"></s:label>
<s:textfield name="sqlDate" label="SQL Date"></s:textfield>
<s:textfield name="sqlTime" label="SQL Time"></s:textfield>
<s:textfield name="utilDate" label="Util Date"></s:textfield>
<s:submit value="submit" method="convert"></s:submit>
</s:form>
</body>



现在的问题是,我输入后点提交按钮,页面不会跳转到success对应的convertorSuccess.jsp上去,而是停留在输入数据的页面(或者说不定也可能跳转过去了,但是又跳回来了,因为页面会刷新一下,但是太快看不清)。可以确定的是,肯定是调用了convert()方法,控制台打印出了"convert(),return success",请问有人知道这是怎么回事吗?
...全文
221 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
ZXEOC 2013-05-31
  • 打赏
  • 举报
回复
我把s:submit标签里的method="convert"去掉,然后让ConvertorAction.execute()也返回success,还是不能跳转到convertorSuccess.jsp上去……继续求解答……
XX的小石头 2013-05-31
  • 打赏
  • 举报
回复
百度了下,converter是转换数据类型的,赞同1~4楼的说法,应该要加method属性,至于楼主的代码为什么会输出那句就不知道了,本人也是新手
ZXEOC 2013-05-31
  • 打赏
  • 举报
回复
to 1~4楼: 我也是照教程写的,我猜是要调用action里面的convert()方法的意思吧,而且从控制台输出来看也确实调用了这个方法,但是这个方法返回值是success,不明白为什么跳回到原页面去 to 5楼: 找不到你这个QQ号……你是不是设置了不让陌生人搜索到?
ZXEOC 2013-05-31
  • 打赏
  • 举报
回复
已解决,是web.xml配置里加入了注解使用的actionPackages参数导致的,去掉这个参数就好了,多谢各位关心
william_yao 2013-05-30
  • 打赏
  • 举报
回复
我QQ 392190627 。 加我。 代码发我,给你调好再和你说什么问题。
louis9212 2013-05-30
  • 打赏
  • 举报
回复
默认情况,页面跳转的逻辑应该在execute()方法里面定义,既然execute已经界定了是跳转到INPUT,就不会跳到success吧?
haimingwei_haimian 2013-05-30
  • 打赏
  • 举报
回复
+1 converter是干嘛用的啊
bambooprince 2013-05-30
  • 打赏
  • 举报
回复
同问converter的用处,还真是第一次见到,另外execute这个方法,应加上 throws Exception
Yeehua 2013-05-30
  • 打赏
  • 举报
回复
请教lz,action中的“converter”这个属性是干嘛的?? 如果没有在action中“method=""”这样制定调用的方法的话,默认是调用action中的execute方法的,你的这个配置就自然跳转到convertor.jsp这个页面去了,是不会跳转到convertorSuccess.jsp这里去的。。。

81,091

社区成员

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

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