Dúvida sobre applets e plugin da SUN

4 respostas
M

Caros,

já estou quebrando a cabeça durante algumas semanas para resolver um problema e até agora nada…

Então resolvi apelar ao fórum…

O problema é o seguinte! Tenho uma aplicação web cujas telas são applets, desde a tela de login até outras funcionalidades…

A tela inicial de login da minha aplicação abre uma nova janela quando o usuário se loga, e nessa nova janela o menu com as diversas opções é exibido.

Quando deixei de utilizar a Microsoft VM e passei a utilizar o novo plugin da SUN (versão 1.6.0_16) me deparei com um problema complicado…

Na antiga VM da Microsoft todas as sessões utilizavam o mesmo classloader, dessa forma minhas classes que mantinham informações estáticas, como cache de listas e tudo mais funcionavam em qualquer janela do navegador…

Ao atualizar a VM para a da SUN descobri que a mesma utiliza diferentes classloaders para sessões diferentes… dessa forma minhas classes que mantinham as informações estáticas são novamente instanciadas gerando um grande overhead…

Vale ressaltar que as listas em cache eram carregadas inicialmente pelo processo de login, dessa forma quando o usuário acessar outras telas as listas já estarão em memória.

Alguém tem alguma dica?

[]s

4 Respostas

E

http://java.sun.com/products/plugin/1.3.1_01a/new.html#classloader

M

Entanglement,

muito obrigado pelo link, mas já havia lido a documentação previamente e mesmo setando o mesmo archive e mesmo codebase, como são janelas diferentes ele continua utilizando classloaders diferentes.

Alguma idéia?

[]s

E

http://tom.conjective.ch/tomtom/space/Sharing+Java+objects+between+class+loader+instances

M

Entaglement,

o problema ali descrito basicamente é o mesmo que o meu, exceto pelo fato da classe utilizada para manter conteúdo estático não ser uma classe nativa… ou seja ela foi implementada por alguém do projeto em algum tempo remoto ehehehe

Pra te ser sincero não entendi muito bem a solução apresentada no site…

Criado 23 de outubro de 2009
Ultima resposta 23 de out. de 2009
Respostas 4
Participantes 2