Problema de "estouro de pilha" em app web (JSF)

7 respostas
X

Boa tarde amigos!

Estou com uma aplicação web feita em jsf que após várias inserções no bd, acusa estouro de pilha. Poderiam me orientar em como proceder para resolver esse problema? Acho que o problema pode estar ocorrendo devido a criação de várias instâncias dos objetos. Mas como posso saber se esse é o caso e o que posso fazer?

Desde já agradeço!

7 Respostas

aeugenio

Estouro de pilha vc quer dizer que faltou memoria ? Vc esta usando a JVM no default ?
Acho mais facil vc postar o stack trace aqui junto com mais informacoes.

X

Estou utilizando o Jvm no default.

Segue:

19/03/2009 00:22:31 org.apache.catalina.core.StandardWrapperValve invoke

SEVERE: Servlet.service() for servlet Faces Servlet threw exception

java.lang.OutOfMemoryError: PermGen space

at sun.misc.Unsafe.defineClass(Native Method)

at sun.reflect.ClassDefiner.defineClass(ClassDefiner.java:45)

at sun.reflect.MethodAccessorGenerator$1.run(MethodAccessorGenerator.java:381)

at java.security.AccessController.doPrivileged(Native Method)

at sun.reflect.MethodAccessorGenerator.generate(MethodAccessorGenerator.java:377)

at sun.reflect.MethodAccessorGenerator.generateSerializationConstructor(MethodAccessorGenerator.java:95)

at sun.reflect.ReflectionFactory.newConstructorForSerialization(ReflectionFactory.java:313)

at java.io.ObjectStreamClass.getSerializableConstructor(ObjectStreamClass.java:1327)

at java.io.ObjectStreamClass.access$1500(ObjectStreamClass.java:52)

at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:437)

at java.security.AccessController.doPrivileged(Native Method)

at java.io.ObjectStreamClass.(ObjectStreamClass.java:413)

at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:310)

at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1106)

at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)

at java.util.HashMap.writeObject(HashMap.java:1000)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)

at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)

at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)

at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)

at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)

at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)

at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)

at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)

at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)

at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)

at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)

at com.sun.faces.renderkit.ResponseStateManagerImpl.writeState(ResponseStateManagerImpl.java:244)
G

ta usando netbeans ? se sim, so fecha o netbeans e abrir dnvo …

aeugenio

Da uma lida aqui http://www.freshblurbs.com/explaining-java-lang-outofmemoryerror-permgen-space
Vc precisa aumentar sua jvm que não esta comportando a necessidade de memoria da sua aplicação.

X

Estou usando netbeans sim aeugenio! Mas o problema está ocorrendo também com a app compilada rodando no tomcat.
Vou dar uma olhada no link. Concordo com você sobre a questão da memória, acho que aumentar a jvm vai resolver, assim espero… rsrs

Obrigado amigo!

X

Então aeugenio! Eu dei uma olhada no link que você passou apesar do meu inglês não estar 100%, mas não entendi como eu utilizo o “-XX:PermSize=64m” e “-XX:MaxPermSize=128m” para setar a quantidade de memória utilizada pelo jvm. Poderia esclarecer??

Abraço.

D

Eu tive este problema, acho que vc tem que alterar a
quantidade de memória utilizada em arquivo de configuração do tomcat.Catalina Home se eu não me engano aqui no forum tem várias soluções procure por
PermGen space.

Criado 16 de março de 2009
Ultima resposta 20 de mar. de 2009
Respostas 7
Participantes 4