public ActionForward jobName(ActionMapping mapping, ActionForm form, 
HttpServletRequest request,
HttpServletResponse response) throws Exception
{
//Do something...
System.out.println("Here is action.");
return mapping.findForward("name");
}<action path="/path/job"
type="com.xxx.job.action.Job"
parameter="cmd">
<forward name="name" path="/path/jobName.jsp"/>
</action>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<%
System.out.println("Here is jsp.");
%>
空白页内容:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=utf-8"></HEAD>
<BODY></BODY></HTML>
应用使用正常。
出现这mapping.findForward("name")随机的空白异常,概率在5%左右,刷新重试往往就会OK。ActionForward af = mapping.findForward("name");
获取正常,name对应的path也是绝对没有问题的。
System.out.println("Here is action.");打印出来,显示正常。
但,System.out.println("Here is jsp.");并没有显示出来。特别强调:这个空白异常是随机的!偶尔发生的!
有遇到类似情况吗?给介绍下。

解决方案 »

  1.   

    感觉是电脑问题。或者缓存比较小。不应该是BUG。
      

  2.   

    不行的话把那个name换成其它名字试试。
      

  3.   

    System.out.println("Here is action.");打印出来,显示正常。
    但,System.out.println("Here is jsp.");并没有显示出来。我也很抓狂,一个好端端的jsp你非得放一个 后台打印语句 System.out.println("Here is jsp."),直接Here is jsp 。怎么可能在你的jsp页面显示出来了,LZ你还是好好检查你的页面吧。十有八九是你自己不认真导致的。
      

  4.   


    调整哪里的缓存?Tomcat的缓存??
    请详细说一下。
    感谢。
      

  5.   


    请认真看完我的表述。先。JSP中的System.out.println输出,自然是在Tomcat_PATH/logs/日志文件里查看的。
    这么幼稚的问题,就不需要你浪费时间了。
      

  6.   

    这不是Forward中的name的问题,毫无疑问。
    我特别强调过了:随机  偶然
      

  7.   

    paramert 应该是 方法名  
      

  8.   

    首先检查你请求的url是正确的,感觉应该是http://server/action?cmd=jobName这样的最好不要用system.out,用log4j或commons-logging,这样会有时间显示最好把类的源码再贴一些上来,比如父类,还有这个方法中是不是只有这么多代码?
      

  9.   

    什么缓存太小??
    是PC缓存?是Tomcat缓存?是……?
    哪里设置??
    请具体说下!
      

  10.   

    楼主,程序问题,不要再纠缠了,程序OK就不会出这样的问题,即使是偶然、随机,也可能是程序本身引起的
    System.out.println的输出信息不是在日志文件中的,而是在控制台中的。
      

  11.   

    新手??
    无容置疑,System.out.println() 会打印在 $Tomcat_Path$/logs/stdout_2010MMdd.log 中!
    是或者否,非此即彼的问题,就不需要花这么大功夫讨论了!!特别强调过了,程序跑起来是OK的。
    但是,会偶然随机的出现这个问题!!
      

  12.   


    Action中:
    System.out.println("Here is action.");Jsp中:
    System.out.println("Here is jsp.");劳烦您先仔细清楚提问,谢谢!!
      

  13.   


    这不是代码的 Exception 问题。
    已经表达的非常清楚了:
    Action一行一行执行OK,没问题。
    带到末尾 mapping.forward("name") 到前台 JSP 页面的时候。
    页面空白,刷新一下,就OK了。
    特别是在用户登录的过程中,经常出现该问题。