SelectPBBean[] spbb = new SelectPBBean[3];
for(int i = 0;i < 3;i++)
{
spbb[i].setPBCode("aa");
spbb[i].setPBName("bb");
}
循环里的第一行就报错,请问是怎么回事,应该怎么改.
java.lang.StackOverflowError
at javax.servlet.http.HttpServletRequestWrapper.getSession(HttpServletRequestWrapper.java:216)
at org.apache.catalina.core.ApplicationHttpRequest.getSession(ApplicationHttpRequest.java:545)

解决方案 »

  1.   

    java.lang.StackOverflowError 
    这个是栈溢出的问题,能否把代码都拿出来分析一下
      

  2.   

    for(int i = 0;i < 3;i++) 

        spbb[i] = new SelectPBBean(); 
    } 把这个加到你原来的循环前面
      

  3.   

    或者这样也行
            SelectPBBean[] spbb = new SelectPBBean[3]; 
            for(int i = 0;i < 3;i++) 
            { 
                spbb[i] = new SelectPBBean();
                spbb[i].setPBCode("aa"); 
                spbb[i].setPBName("bb"); 
            } 
      

  4.   

    SelectPBBean数组中的每个对象都要分别实例化吧
      

  5.   

    如果要分别实例化那么
    SelectPBBean[] spbb = new SelectPBBean[0];
    for(int i = 0;i < 3;i++) 
            { 
                spbb[i] = new SelectPBBean();
                spbb[i].setPBCode("aa"); 
                spbb[i].setPBName("bb"); 
            } 
    这样为什么不对呢.
      

  6.   

    SelectPBBean[] spbb = new SelectPBBean[3];是可以的
    SelectPBBean[] spbb = new SelectPBBean[0];是不可以的.
      

  7.   

    spbb[i] = new SelectPBBean();每一个都要实例化写在for里面