Tenho um objeto no scopo application onde duas aplicacões web (dois contextos) fazem acesso (configurei crossContext=“true” no server.xml do tomcat).
Então, eu consigo ter acesso a este objeto… porém só consigo acessá-lo como sendo do tipo Object. Quando tento fazer o cast, o container gera uma exceção de ClassCastException.
Alguém já se deparou com esta situação? Existe a possibilidade de eu fazer este cast?
Você tem na verdade duas classes diferentes, mesmo que sejam carregadas do mesmo arquivo .class, porque foram carregadas por classloaders diferentes.
Se essa classe, em vez de estar na aplicação, estiver em uma biblioteca que é carregada por um classloader que é comum para ambas as aplicações, você não terá esse problema.
T
thingol
Por exemplo, em vez de você compartilhar um objeto “Cliente”, você pode passar entre as duas aplicações um java.util.LinkedHashMap (por exemplo). É nojento, diga-se de passagem.