[Resolvido] Pasta no Tomcat equivalente a /conf do JBoss (arquivos properties)

Boa tarde pessoal,

Estou com um problema que não estou conseguindo achar a solução, na verdade nem sei muito como procurar, e nas buscas que fiz não achei nada que me ajudasse.

No JBoss, eu tenho todos os arquivos .properties dentro de uma pasta chamada /conf, tudo que eu coloco la dentro consigo abrir de dentro do WAR.

Preciso achar essa mesma pasta (equivalente) no Tomcat. Ele até tem uma pasta /conf com alguns arquivos properties, mas quando coloquei meu arquivo la dentro não funcionou.

Alguém saberia me dizer o caminho dessa pasta “publica” no Tomcat? É necessário configurar alguma coisa?

Muito obrigado!

Será que voce especificou o caminho correto na hora de pegar seu arquivo?

[]'s

[quote=bastides]Será que voce especificou o caminho correto na hora de pegar seu arquivo?

[]'s[/quote]

Fala Bastides!

Sim, teoricamente está correto pois funciona normalmente no JBoss.

No código eu uso:

Assim como no JBoss ele sabe que precisa procurar por .properties na pasta /conf, ele teria que saber no Tomcat, e é ai que está meu problema, como “ativar” esse recurso no Tomcat ou saber a pasta correta.

Abraços,

Aqui trabalho com tomcat, mas estou de saida, manda uma msg segunda de manha que chego aviso no meu email e vou dar um caçada aqui pra ver se consigo te ajudar.

abraço

Olha, o fato de funcionar no JBoss não implica em funcionar no Tomcat. São dois servidores absurdamente diferentes.

Tente olhar a documentação do Tomcat para ver se ele suporta esse tipo de coisa.

[quote=bastides]Aqui trabalho com tomcat, mas estou de saida, manda uma msg segunda de manha que chego aviso no meu email e vou dar um caçada aqui pra ver se consigo te ajudar.

abraço[/quote]

Eu estava vendo aqui que o Tomcat tem o catalina.properties, acredito que ali posso informar pastas que ficarão visíveis na busca dos arquivos .properties, mas ainda não consegui por em prática com sucesso!

Mando msg sim! Muito obrigado!

Olha, o fato de funcionar no JBoss não implica em funcionar no Tomcat. São dois servidores absurdamente diferentes.

Tente olhar a documentação do Tomcat para ver se ele suporta esse tipo de coisa.[/quote]

Afirmei isso por se tratar do ResourceBundle, mas você tem toda razão, são completamente diferentes.

Conforme falei acima, acredito que no catalina.properties eu consiga alguma coisa, mas ainda não tive sucesso.

Tem alguma ideia? Qualquer ajuda é bem vinda! Abraços!

Olha, o fato de funcionar no JBoss não implica em funcionar no Tomcat. São dois servidores absurdamente diferentes.

Tente olhar a documentação do Tomcat para ver se ele suporta esse tipo de coisa.[/quote]

Afirmei isso por se tratar do ResourceBundle, mas você tem toda razão, são completamente diferentes.

Conforme falei acima, acredito que no catalina.properties eu consiga alguma coisa, mas ainda não tive sucesso.[/quote]

O lance é que o ResourceBundle.getBundle recebe uma String. No seu exemplo tem uma variável “file”, que pode levar a uma conclusão errada que se trata de um arquivo.

Como a JVM vai fazer a busca da String usando o ClassLoader.getResource, isso iria ser diferente nos dois servidores porque eles possuem ClassLoaders diferentes.

Ataxexe, ali eu passo só o nome do .properties, por exemplo “sistema.properties” eu passo só o “sistema”.

Eu acho que eu preciso informar pro Tomcat adicionar uma pasta x no classloader, para ele achar os files, mas não sei como fazer isso!

É pessoal, até o momento não consegui solução, por favor se alguém puder ajudar, fico muito agradecido!

Pessoal, graças a uma observação do Bruno Laturner em um outro post, consegui a solução!

Os arquivos .properties precisam estar no classloader do Tomcat para ficarem visíveis, se olharem o catalina.properties (dentro da pasta do Tomcat /conf) verão que temos o:

Então a solução mais rápida é colocar seus .properties dentro da pasta /lib.

Porém não acho que seja a solução mais organizada, por isso acho bacana adicionar uma pasta no common.loader onde serão colocados somente .properties.

Além disso, ainda no catalina.properties temos o server.loader e shared.loader, ainda não sei exatamente a diferença entre eles, vou dar uma pesquisada agora para entender a diferença, pois acredito possa existir um lugar mais correto para isso (que seja visível em todas aplicações, ou com limitações, segurança, etc).

Bom, o fato é de que está resolvido, agora quem se interessar pode dar uma pesquisada para agregar mais conhecimento.

Muito obrigado a todos que se envolveram, espero que o post ajude pessoas com essa dúvida no futuro!

Abraços!