在action中,数据添加、修改成功后,向页面显示提示信息,包括可能出现的问题。

先贴具体代码。

Message类中:

public void message(String messageString,String actionString) throws Exception{
	HttpServletResponse response = ServletActionContext.getResponse();
	response.setContentType("text/html;charset=gbk");
	response.setCharacterEncoding("gbk");
	
	PrintWriter out=response.getWriter();
	out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
	out.println("<HTML>");
	out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>");
	out.println(" <BODY>");
	out.println("<script language='JavaScript'>alert(\""+ messageString +"\");location.replace(\""+actionString+"\");</script>");
	out.println(" </BODY>");
	out.println("</HTML>");
	out.flush();
	out.close();
Action中:

public String update()throws Exception{
		...
		if(... !=null){
			message.message("修改成功!", "XXX.action");
			return null;
		}else{
			message.message("修改失败!","XXX.action");
			return null;
		}
	}
struts.xml中:

<action name="update" class="XXXAction" method="update">
		</action>
曾经出现的问题:

1、location.replace时,地址的写法问题,这个应该不归于这边讨论。

2、如果return 的返回值不为null时,或者xml中,有<result />节点,都会出现控制台打印407错误。

java.lang.IllegalStateException 
at org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:407)
3、由于Message类时在工具包中,所以在action中调用的时候,要先new一个,否则会出现message为null,无法完成弹出提示对话框。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值