Boa tarde a todos.
Estou com um problema muito estranho ao fazer o deploy de uma aplicação J2EE. Tenho um projeto Java que está rodando atualmente em um servidor SunOne.
Estou migrando a aplicação para o ambiente WebSphere. A aplicação utiliza Spring.
Estou há 1 semana com o seguinte problema: Quando faço o deploy da aplicação, o Spring acusa que naum encontrou determinada classe devidamente configurada no applicationContext.xml. Fazendo vários testes, mudando a classe de pacote, alterando seu nome e outras coisas, verifique que : sempre que o nome completo da classe (pacote + nome da classe) ultrapassa 107 caracteres, o spring não encontra a classe !!! Não vejo lógica nisso, mas é o que acontece. Fui alterando o nome da classe e se passar de 107, o spring não encontra a classe, lançando uma “ClassNotFoundException”. Alguém sabe o que pode estar acontecendo ?
Já passei por isto descompactando com gzip. O tar dos sistemas unix-like também com nomes bem menores do que o winzip. Procure na web por estas limitações do tar, gzip, etc. que encontrará alguma coisa. Acredito que no seu caso o problema é semelhante.
WebSphere sob Windows, Linux, AIX ou Solaris? No WebSphere sob Windows você deve saber que ele já põe suas classes em um diretório com um nme bastante grande (como "d:\Program Files\IBM\WebSphere Studio\Application Developer\v5.1\runtimes\express_v5\wstemp\0\workspace\cells\DefaultNode\applications\BlablablaEAR.ear\deployments\BlablablaEAR
e o que ocorre é que o JDK da IBM, que é usado no WebSphere do Windows, não consegue criar ou usar arquivos com nomes de mais de 253 caracteres.
(O Windows até consegue acessar arquivos com nomes maiores, mas é necessário usar uma sintaxe super-esquisita, que me foge agora. Os nomes dos arquivos começam por “\?” ou coisa parecida.)
Não sei se é possível efetuar o deploy em um outro diretório; consulte a documentação do WebSphere.