Vou insistir neste assunto porque considero no mínimo frustrante existir uma funcionalidade tão promissora quanto o Java Web Start com suporte em uma ferramenta como o Netbeans 6.5 - e no final das contas não funcionar adequadamente, ou não possuir documentação acessível.
Primeiro vamos aos meus objetivos: tenho que desenvolver uma aplicação desktop utilizando Swing para comunicar com periféricos locais, como uma impressora fiscal (ECF). Este cliente faz parte de um ERP maior, que já possui suas regras de negócio em EJB 3.0, por isto preciso acessar os Session Beans já existentes.
Criei uma aplicação do tipo “Enterprise Application Client” (EAC) pelo Netbeans 6.5 com o nome “SGP” e coloquei alguns JFrames dentro dele (Swing). A empresa também possui um framework no qual são emitidas diversas mensagens informativas em outros JFrames que estão no pacote SSCORE.JAR, e este pacote é usado no projeto SGP. O framework funciona a mil maravilhas quando estou numa aplicação desktop comum.
Quando faço o deploy do projeto EAC no Glassfish, e tento acessá-lo via Java Web Start pelo endereço “http://localhost:8080/SGP”, o arquivo JNLP e começa a fazer o download da aplicação. Mas quando executa a primeira linha que chama algum objeto do framework SSCORE, vem a mensagem de que a classe não foi encontrada (a classe está no pacote SSCORE.JAR).
Detalhe:
- Se eu verificar o SGP.JAR, gerado pelo NetBeans, o arquivo SSCORE.JAR está incluído dentro dele;
- Quando tento executar o SGP.JAR com “java -jar SGP.jar”, não acontece nada;
- Caso eu copie as classes e a referência do framework externo em um projeto simples, do tipo “Java Application”, tudo funciona, mas não através do Java Web Start (claro).
Alguém conhece uma solução para este tipo de problema?