out.println("OK");
可以catch到什么Exception,看不懂!?嘿嘿

解决方案 »

  1.   

    如果用 System.out.println("OK"); 就可以,
    但不能输出到网页上。
      

  2.   

    System.out.print("OK");当然没问题啊
    但是打在服务器端的.............
    不如直接用 %>OK<% 呵呵,肯定没问题啦吧,嘿嘿
      

  3.   

    TO: ericsome(GzEric)
    还是不可以啊!
      

  4.   

    out是jsp内置对象,不能放直接在java类中.
    建议你先看看基本的jsp和java类
    javax.servlet.jsp.PageContext pageContext;
    JspWriter out = pageContext.getOut();
      

  5.   

    javax.servlet.jsp.PageContext pageContext;
    JspWriter out = pageContext.getOut();请详细的说说
    1.我是在jsp中用  out已经是一个对象了,不能声明。
    2.class ChatShow implements Runnable {
         JspWriter pw;
         int k = 0;
     Thread thr;
         public void start()
     { 
           if (thr == null) 
           { 
             thr = new Thread(this); 
             thr.start(); 
           } 
         } 
     public void stop() 
     {
            if (thr != null) 

                thr.stop();
                thr = null;
            }
         }
     
     public void run() 
         { 
            while(true)
    {
               try 
               { 
       pw.println("OK");  //这样也是不能的应为还是不是out对象
               } catch (Exception e) { 
                    System.out.println("Error in while:" + e.getMessage()); 
               }           try
       {
       thr.sleep(2000); 
               } catch (InterruptedException e){}         } 
     }
      }
     ChatShow CS = new ChatShow();
     CS.start();
     %>
    3.希望能帮我调一下,谢谢。
      

  6.   

    你把out作为一个初始化参数传给里面的那个线程。
      

  7.   

    你的问题不在于输出是否有问题,而在于在自己启动的线程中不能向客户端输出数据。建议想其他方案解决你的业务问题。
    线程是不确定什么时候有返回值得,而jsp页面要求是立即响应客户端请求。
    从理论上来说,就有点想驳。
      

  8.   

    CAYU(中原)
    你误会我的意思了
    我是说你不能把out.println放到某个类的方法中,
    因为在jsp中已经定义了如下对象:
    javax.servlet.jsp.PageContext pageContext;
    JspWriter out = pageContext.getOut();
    所以你不能在run()方法中使用
    建议你使用:java.io.PrintWriter.println()方法
      

  9.   

    <%@ page contentType = "text/html; charSet=gb2312" %>
    <%@ page import="javax.servlet.*,javax.servlet.jsp.*,java.io.*,java.util.*,java.sql.*"%>
    <%
    class ChatShow implements Runnable
    {
         int k = 0;
         Thread thr;
     
         javax.servlet.jsp.PageContext innerPageContext;
         javax.servlet.jsp.JspWriter  innerOut;
         
         
         public void start()
         { 
           if (thr == null) 
           { 
             thr = new Thread(this); 
             thr.start(); 
           } 
         }      public void stop() 
         {
            if (thr != null) 

                thr.stop();
                thr = null;
            }
         }
         public void run()
         {
         

          try
          {
              if(innerOut!=null)
              {
                  while(true)
                  {
                      innerOut.println("OK");
                      thr.sleep(2000);
                  }
              }
          }
          catch (InterruptedException e)
                  {}
            catch(Exception e)
            {
            }       
         
         }
         
     
         public JspWriter getThisContest(Object obj)
         { 
                      innerPageContext = (javax.servlet.jsp.PageContext)obj;
                      innerOut = innerPageContext.getOut();
                      return innerOut;
              
         }  

      } ChatShow CS = new ChatShow();
     CS.getThisContest(pageContext);
     //CS.start();
     %>
      

  10.   

    faint
    这么快就结贴啦?!
    谁说不可行啊
    看看我给你改的
    向页面输出“OK”
    自己测试一下吧
    最好先把那个无限循环撤掉
      

  11.   

    zhangkai(多情和尚(响应号召为ppmm奋斗终生))
    你把那个while撤了
      

  12.   

    把那个while撤了
     如下方法调用
     ChatShow CS = new ChatShow();
     CS.getThisContest(pageContext);
     CS.start();
     CS.run();
     CS.stop();
      

  13.   

    <%@ page contentType = "text/html; charSet=gb2312" %>
    <%@ page import="javax.servlet.*,javax.servlet.jsp.*,java.io.*,java.util.*,java.sql.*"%>
    <%class ChatShow implements Runnable
    {
         int k = 0;
         Thread thr;
         javax.servlet.jsp.PageContext innerPageContext;
         javax.servlet.jsp.JspWriter  innerOut;
         
         public void start()
         { 
           if (thr == null) 
           { 
             thr = new Thread(this); 
             thr.start(); 
           } 
         }      public void stop() 
         {
            if (thr != null) 

                thr.stop();
                thr = null;
            }
         }
     public void run()
         {
          try
          {
                  while(true)
                  {
    k++;
                      innerOut.print(k + "OK");
                      thr.sleep(2000);
    innerOut.flush();
                  }
          } catch (Exception e){}
         }     public JspWriter getThisContest(Object obj)
         { 
                      innerPageContext = (javax.servlet.jsp.PageContext)obj;
                      innerOut = innerPageContext.getOut();
                      return innerOut;
         }
      } ChatShow CS = new ChatShow();
     CS.getThisContest(pageContext);
     CS.start();
     %>
      

  14.   


    怎么还有人问阿
    因为已经结贴了
    详细的我发短信告诉CAYU了
    这个程序因为有个无限循环,所以无法生成静态页面,因此没有在页面上输出结果。
    把循环撤了就看到结果了
    程序本身并没错误,但是用户看不到页面,所以是无意义的。
    正确的思路:客户端定时刷新取数据库中动态改变的数据,或者用applet