当前位置:编程学习 > JAVA >>

帮我啊,是什么原因错内存溢出的错去啊java.lang.StackOverflowError

java.lang.StackOverflowError
sun.nio.cs.ext.GB18030$Encoder.encodeArrayLoop(GB18030.java:12623)
sun.nio.cs.ext.GB18030$Encoder.encodeLoop(GB18030.java:12778)
java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:544)
sun.nio.cs.StreamEncoder.implWrite(StreamEncoder.java:252)
sun.nio.cs.StreamEncoder.write(StreamEncoder.java:106)
java.io.OutputStreamWriter.write(OutputStreamWriter.java:190)
java.io.BufferedWriter.flushBuffer(BufferedWriter.java:111)
java.io.PrintStream.write(PrintStream.java:476)
java.io.PrintStream.print(PrintStream.java:619)
java.io.PrintStream.println(PrintStream.java:756)
org.apache.tomcat.util.log.SystemLogHandler.println(SystemLogHandler.java:238)
com.song.service.impl.BbsServiceImpl.getCountersByName(BbsServiceImpl.java:50)
com.song.service.impl.BbsServiceImpl.getCountersByName(BbsServiceImpl.java:51)
com.song.service.impl.BbsServiceImpl.getCountersByName(BbsServiceImpl.java:51)
com.song.service.impl.BbsServiceImpl.getCountersByName(BbsServiceImpl.java:51)
com.song.service.impl.BbsServiceImpl.getCountersByName(BbsServiceImpl.java:51)
com.song.service.impl.BbsServiceImpl.getCountersByName(BbsServiceImpl.java:51)
。。。。。。。。 --------------------编程问答-------------------- 好好查看你的代码

看有没有死循环 --------------------编程问答-------------------- 没有啊
我已经查了好久了 --------------------编程问答-------------------- 我只是用了一个判断语句
--------------------编程问答-------------------- 要帖代码方可诊断 --------------------编程问答-------------------- <h3 align="right">
   <a href="<%=path %>/test/bbsAction.action?aa=Mypost">我的发帖</a>
</h3>
这是提交页面的一个链接,点这个链接就跳转到另外一个页面时就出了错了,内存溢出。
下面是
bbsAction.action的部分代码:
public String execute() throws Exception {
        session = (Map<String,String>)ActionContext.getContext().getSession();
String str = null;
System.out.println(this.aaaa);
System.out.println(session.get("name"));
this.name = session.get("name");

if(this.aa.equals("Mypost")){

//下面实现获取我的发帖的信息
//根据昵称来获得总的记录数目
this.totalPage = this.getPageCounter(this.bbsService.getCountersByName(name), this.pageSize);
String hsql = "from Bbs bbs where bbs.name='"+this.name+"'";//这个错误犯了两次了,他妈的郁闷****************
System.out.println("name 的值是:"+this.name);
int offset = (this.pageNow-1)*pageSize;

//查询reply表的id对应的所有记录,并存放到哦list中
this.setList1(bbsService.queryForPage(hsql,offset, this.pageSize));
str = "mypost";

}

this.totalPage = this.getPageCounter(this.bbsService.getCountersByName(name),
 提示这一行有错误 --------------------编程问答-------------------- getPageCounter

贴出你的核心代码呀

自己可以debug,有助于提高自己水平 --------------------编程问答-------------------- 我能搞定的话就不会在这里发帖了
也没有什么核心代码了饿a
已经发了
就是在action中调用了bbsService类中的一个getCountersByName(name)方法而已啊,
上面的就是核心代码啊 --------------------编程问答-------------------- 你的QQ能告诉我吗
用qq来解答
行不??? --------------------编程问答-------------------- 我的qq是494896565 --------------------编程问答-------------------- 无限递归? --------------------编程问答-------------------- getPageCounter

getCountersByName

可以把这两方法贴出来吗? --------------------编程问答-------------------- 难道是Struts2的线程问题?
要不再贴出这个Action的全部代码和service中getCountersByName()方法代码。 --------------------编程问答-------------------- 没看出来端倪,坐等大牛 --------------------编程问答-------------------- encodeArrayLoop() 方法里有死循环? --------------------编程问答-------------------- encodeArrayLoop() 方法里有死循环? --------------------编程问答-------------------- 没看懂 --------------------编程问答-------------------- getCountersByName(),应该是这个有问题 --------------------编程问答--------------------
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,