Abrir arquivos que estejam no META-INF

Bom dia galera!

A pergunta é bem simples e o título já explica tudo.
Sei que é bem básico mas não consigo encontrar as tags corretas em minhas pesquisas que retornem dados satisfatórios.

Enfim, tenho um pacote EAR com a pasta META-INF bonitinha lá.
Criei um arquivo de configuração de um módulo e gostaria de empacota-lo junto ao EAR, dentro da pasta META-INF.

Como posso abrir esse arquivo?

Tento com o endereço /META-INF/file.xml mas sem suceso.

Sei que é algo bem simples… mas não consigo encontrar.
Muito obrigado!

Estamos falando de JSF?
Se for JSF, por exemplo…

ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext();
ServletContext sContext = (ServletContext) externalContext.getContext();
sContext.getRealPath("WEB-INF") + "/file.xml";

Com Servlet possivelmente é a mesma ideia.

Abraços.

[quote=nel]Estamos falando de JSF?
Se for JSF, por exemplo…

ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext();
ServletContext sContext = (ServletContext) externalContext.getContext();
sContext.getRealPath("WEB-INF") + "/file.xml";

Com Servlet possivelmente é a mesma ideia.

Abraços.[/quote]

Nops, não estamos falando de JSF.

Tenho um jar empacotado num EAR que possui jars de EJB e wars.
Todos meus jars tem a pasta META-INF mas em um deles em especial quero pegar um arquivo manualmente que esteja ali.
Ou no META-INF do pacote EAR, de preferência.

Vlw!!!

Falha minha.
Estava “crente” que você havia dito WEB-INF.

Você provavelmente terá que fazer busca em um determinado JAR e buscar extrair os arquivos dele para em seguida, buscar o arquivo especifico.
Claro, fazer é outro papo.

Bom, vou almoçar, qualquer coisa tento ajudar depois.

Abraços.

Sussa.
De fato terei que fazer a busca no jar.
Mas a classe que vai chamar esse arquivo do META-INF pertence ao jar especificado, compreende?
Só preciso saber como pegar o endereço relativo. =/

Abraços!!

Sim, creio que se você fizer algo como “/META-INF/file.xml” em sua classe File ele te retorne o valor, não?
Acredito que seja só uma questão de URL a ser passada, senão, podes buscar este JAR (diretório) e efetuar um unzip e a partir dai buscar o arquivo.

Abraços!!!

[quote=nel]Sim, creio que se você fizer algo como “/META-INF/file.xml” em sua classe File ele te retorne o valor, não?
Acredito que seja só uma questão de URL a ser passada, senão, podes buscar este JAR (diretório) e efetuar um unzip e a partir dai buscar o arquivo.

Abraços!!![/quote]
Foi a primeira coisa que testei e não funcionou.
Fiz o seguinte;

 File file = new File(getClass().getResource("/META-INF/file.xml").getPath());

Ai funfou!

Vlw!!

Show de bola! :slight_smile:
Só edit o tópico e adiciona [Resolvido].

Abraços.