|
View:
New views
7 Messages
—
Rating Filter:
Alert me
|
|
|
MANIFEST.MF funciona no WAR ????Olá pessoal, estou desenvolvendo uma App. Web que necessita fazer call de outras JVM's. Então estou tentando 'reaproveitar' o classpath da jvm atual ao invocar a outra. Ao pegar o classpath (java.class.path) do meu contexto WEB vi que nenhuma das libs ou classes estão realmente no meu classpath, apenas o jar "bootstrap.jar", pois o tomcat acha minhas classes através de um classLoader customizado da apache, não precisando que estejam no classpath. Porém eu preciso dos caminhos relativos para os jar, então tentei colocar as referências no Manifest.MF e vi também que está sendo 'ignorado' o classpath que lá informo. Existe alguma solução que não me obriga a fazer um forzão adicionando os jars dinamicamente no CLASSPATH??? -- Fabrício Silva Epaminondas Student at Federal University of Campina Grande (Brazil) - UFCG Systems and Computing Department http://fabricioepa.googlepages.com/home --~--~---------~--~----~------------~-------~--~----~ ================================================================= Site: http://pbjug.org/ Grupo: http://groups.google.com/group/pbjug - Para cancelar a sua inscrição neste grupo, envie um e-mail para pbjug-unsubscribe@... ================================================================= -~----------~----~----~----~------~----~------~--~--- |
|
|
Re: MANIFEST.MF funciona no WAR ????Já tentou pegar o caminho dos jars dentro da pasta web-inf/lib? 2008/7/17 fabricio epaminondas <fabricioepa@...>: > Olá pessoal, estou desenvolvendo uma App. Web que necessita fazer call de > outras JVM's. Então estou tentando 'reaproveitar' o classpath da jvm atual > ao invocar a outra. > Ao pegar o classpath (java.class.path) do meu contexto WEB vi que nenhuma > das libs ou classes estão realmente no meu classpath, apenas o jar > "bootstrap.jar", pois o tomcat acha minhas classes através de um classLoader > customizado da apache, não precisando que estejam no classpath. > > Porém eu preciso dos caminhos relativos para os jar, então tentei colocar > as referências no Manifest.MF e vi também que está sendo 'ignorado' o > classpath que lá informo. > > Existe alguma solução que não me obriga a fazer um forzão adicionando os > jars dinamicamente no CLASSPATH??? > > > > -- > Fabrício Silva Epaminondas > > Student at Federal University of Campina Grande (Brazil) - UFCG > Systems and Computing Department > > http://fabricioepa.googlepages.com/home > > > -- Maurício Linhares http://alinhavado.wordpress.com/ (pt-br) | http://blog.codevader.com/ (en) João Pessoa, PB, +55 83 8867-7208 --~--~---------~--~----~------------~-------~--~----~ ================================================================= Site: http://pbjug.org/ Grupo: http://groups.google.com/group/pbjug - Para cancelar a sua inscrição neste grupo, envie um e-mail para pbjug-unsubscribe@... ================================================================= -~----------~----~----~----~------~----~------~--~--- |
|
|
Re: MANIFEST.MF funciona no WAR ????Olá Maurício, está é minha "solução imediatista", porém eu preciso do classpath (libs + classes) de forma mais "padronizada" digamos assim. Pegar os libs e os classes funcionará de forma diferente no OC4j, Tomcat, Jboss, etc... isso pq o default location do ClassLoader das classes do WAR muda de acordo com a implementação de cada servidor. no tomcat por exemplo se eu pegar o default location, encontro a raiz do projeto (web-inf/classes) então é so subir um diretorio e achar os libs. Já no oc4j ele está no "C:/casa da mão joana/" Gostaria de fazer funcionar o propósito do MANIFEST.MF, é possível ? 2008/7/17 Maurício Linhares <mauricio.linhares@...>:
-- Fabrício Silva Epaminondas Student at Federal University of Campina Grande (Brazil) - UFCG Systems and Computing Department http://fabricioepa.googlepages.com/home --~--~---------~--~----~------------~-------~--~----~ ================================================================= Site: http://pbjug.org/ Grupo: http://groups.google.com/group/pbjug - Para cancelar a sua inscrição neste grupo, envie um e-mail para pbjug-unsubscribe@... ================================================================= -~----------~----~----~----~------~----~------~--~--- |
|
|
Re: MANIFEST.MF funciona no WAR ????Fabrício, O caminho pra o web-inf/lib e o web-inf/classes é sempre o mesmo de dentro da aplicação web, seja qual for o container que você estiver usando, é só fazer um getRealPath("/WEB-INF/lib") que você vai sempre pegar o lugar correto, independente do servidor de aplicações que você estiver usando. 2008/7/17 fabricio epaminondas <fabricioepa@...>: > > Olá Maurício, está é minha "solução imediatista", porém eu preciso do > classpath (libs + classes) de forma mais "padronizada" digamos assim. > > Pegar os libs e os classes funcionará de forma diferente no OC4j, Tomcat, > Jboss, etc... isso pq o default location do ClassLoader das classes do WAR > muda de acordo com a implementação de cada servidor. no tomcat por exemplo > se eu pegar o default location, encontro a raiz do projeto (web-inf/classes) > então é so subir um diretorio e achar os libs. Já no oc4j ele está no > "C:/casa da mão joana/" > > Gostaria de fazer funcionar o propósito do MANIFEST.MF, é possível ? > -- Maurício Linhares http://alinhavado.wordpress.com/ (pt-br) | http://blog.codevader.com/ (en) João Pessoa, PB, +55 83 8867-7208 --~--~---------~--~----~------------~-------~--~----~ ================================================================= Site: http://pbjug.org/ Grupo: http://groups.google.com/group/pbjug - Para cancelar a sua inscrição neste grupo, envie um e-mail para pbjug-unsubscribe@... ================================================================= -~----------~----~----~----~------~----~------~--~--- |
|
|
Re: MANIFEST.MF funciona no WAR ????Mauricio,vlw a dica, sei que apesar de ser sempre o mesmo o padrão estrutural dentro dum war, para pegar este diretório via getRealPath(""), teria que executar a chamada num servlet, pegar o diretório e "montar" um classpath, ou seja continuo processando eu mesmo o classpath.
No caso o call de JVM está bem abaixo da camada WEB e eu teria que passar isso como paramêtro para ela, ou como falei antes usar o "Default Location" que é onde ocorre a diferença conforme o Servidor usado, mas se não tiver outra forma solução será o jeito. Quero evitar o trabalho sujo de montar o classpath na mão "dentro" do código do sistema. Ainda to pesuiqsando o pq no manifest.mf não funciona. 2008/7/17 Maurício Linhares <mauricio.linhares@...>:
-- Fabrício Silva Epaminondas Student at Federal University of Campina Grande (Brazil) - UFCG Systems and Computing Department http://fabricioepa.googlepages.com/home --~--~---------~--~----~------------~-------~--~----~ ================================================================= Site: http://pbjug.org/ Grupo: http://groups.google.com/group/pbjug - Para cancelar a sua inscrição neste grupo, envie um e-mail para pbjug-unsubscribe@... ================================================================= -~----------~----~----~----~------~----~------~--~--- |
|
|
Re: MANIFEST.MF funciona no WAR ????Eu ainda não tô entendendo direito o seu problema, mas tem mais um complicador aí, quando um servidor de aplicação desempacota um war ele coloca ele em um caminho "temporário", quando essa aplicação for reiniciada ou o war for atualizado dos os arquivos são apagados e gerados denovo, não necessariamente no mesmo lugar e se a sua aplicação "de fora" estiver usando alguma coisa da aplicação web diretamente ela pode quebrar tudo pro servidor de aplicação. O ideal é que essa sua aplicação desktop seja autocontida e não dependa em nada de uma aplicação web. 2008/7/17 fabricio epaminondas <fabricioepa@...>: > Mauricio,vlw a dica, sei que apesar de ser sempre o mesmo o padrão > estrutural dentro dum war, para pegar este diretório via getRealPath(""), > teria que executar a chamada num servlet, pegar o diretório e "montar" um > classpath, ou seja continuo processando eu mesmo o classpath. > > No caso o call de JVM está bem abaixo da camada WEB e eu teria que passar > isso como paramêtro para ela, ou como falei antes usar o "Default Location" > que é onde ocorre a diferença conforme o Servidor usado, mas se não tiver > outra forma solução será o jeito. > > Quero evitar o trabalho sujo de montar o classpath na mão "dentro" do > código do sistema. Ainda to pesuiqsando o pq no manifest.mf não funciona. > > > > > 2008/7/17 Maurício Linhares <mauricio.linhares@...>: >> >> Fabrício, >> >> O caminho pra o web-inf/lib e o web-inf/classes é sempre o mesmo de >> dentro da aplicação web, seja qual for o container que você estiver >> usando, é só fazer um getRealPath("/WEB-INF/lib") que você vai sempre >> pegar o lugar correto, independente do servidor de aplicações que você >> estiver usando. >> >> 2008/7/17 fabricio epaminondas <fabricioepa@...>: >> > >> > Olá Maurício, está é minha "solução imediatista", porém eu preciso do >> > classpath (libs + classes) de forma mais "padronizada" digamos assim. >> > >> > Pegar os libs e os classes funcionará de forma diferente no OC4j, >> > Tomcat, >> > Jboss, etc... isso pq o default location do ClassLoader das classes do >> > WAR >> > muda de acordo com a implementação de cada servidor. no tomcat por >> > exemplo >> > se eu pegar o default location, encontro a raiz do projeto >> > (web-inf/classes) >> > então é so subir um diretorio e achar os libs. Já no oc4j ele está no >> > "C:/casa da mão joana/" >> > >> > Gostaria de fazer funcionar o propósito do MANIFEST.MF, é possível ? >> > >> >> >> -- >> Maurício Linhares >> http://alinhavado.wordpress.com/ (pt-br) | http://blog.codevader.com/ (en) >> João Pessoa, PB, +55 83 8867-7208 >> >> > > > > -- > Fabrício Silva Epaminondas > > Student at Federal University of Campina Grande (Brazil) - UFCG > Systems and Computing Department > > http://fabricioepa.googlepages.com/home > > > -- Maurício Linhares http://alinhavado.wordpress.com/ (pt-br) | http://blog.codevader.com/ (en) João Pessoa, PB, +55 83 8867-7208 --~--~---------~--~----~------------~-------~--~----~ ================================================================= Site: http://pbjug.org/ Grupo: http://groups.google.com/group/pbjug - Para cancelar a sua inscrição neste grupo, envie um e-mail para pbjug-unsubscribe@... ================================================================= -~----------~----~----~----~------~----~------~--~--- |
|
|
Re: MANIFEST.MF funciona no WAR ????CErto, explicando resumidamente o cenário, não é uma app desktop q depende das libs web, é apenas uma aap Web que precisa rodar uma única Main class para processar um determinado arquivo numa VM separada, a gosso modo seria:
WebApp - > Runtime.exec(" Call another Local VM -cp classpath -a arquivo MainClass") A MainClass class salva no arquivo certos dados que serão recuperados futuramente pela app web. Está descrição é apenas ilustrativa, mas existe um propósito mais concreto chamar esta única MainClass separadamente. Como vê, provavelmente terei que passar um classpath para chamda da MainClass, que usa basicamente o mesmo classpath da app web. As possibilidades que vejo 1 - Ou faço um arquivo externo com classpath para ser recuperado e passado nessa chamda. Já que classpath não é uma coisa legal de ser ter dentro do código. 2 - Ou de alguma forma utilizo o classpath corrente (System.getPropery("java.class.path")) como parametro, o que funcionou utilizando testes de unidade. Porém não funciona com o dado classpath do JEE WebContainer, nem mesmo com CLASSPATH setado no manifest 2008/7/17 Maurício Linhares <mauricio.linhares@...>:
-- Fabrício Silva Epaminondas Student at Federal University of Campina Grande (Brazil) - UFCG Systems and Computing Department http://fabricioepa.googlepages.com/home --~--~---------~--~----~------------~-------~--~----~ ================================================================= Site: http://pbjug.org/ Grupo: http://groups.google.com/group/pbjug - Para cancelar a sua inscrição neste grupo, envie um e-mail para pbjug-unsubscribe@... ================================================================= -~----------~----~----~----~------~----~------~--~--- |
| Free Forum Powered by Nabble | Forum Help |