Alterando um arquivo dentro de um .war

Bom dia, galera do GUJ!

Gostaria de saber como eu faço para alterar um arquivo dentro de um .war em produção.

Caso: Tenho uma aplicação JSF na qual me solicitaram que integrasse com FusionCharts, que tem sua base de dados alimentados por um arquivo XML.

Mas tive um problema, não consigo acessar o conteúdo desde arquivo de dentro da aplicação, por exemplo se ele estiver na minha Desktop.

Então, pensei em sempre atualizar estes arquivos dentro do escopo da aplicação

no caso, se no projeto o acesso à pagina estiver em:
/{Applicação}/arquivo.xhtml

os arquivos XML que alimentarão os dados do FusionCharts estarão em
/{Aplicação}/data/exemplo.xml

Como estes dados estão mudando com grande frequencia, eles precisam ser real-time, então à cada request da Bean, os arquivos XML são gerados e devem substituir os antigos.

Mãs, estou com problemas de IO, talvez meu acesso ao caminho do arquivo está errado, não sei dizer!

Por favor, dicas, sugestões mesmo que não tenham soluções prontas!

Obrigado, Takeshi91 :smiley:

Cara, eu já cansei de ler por aí o seguinte e simples recado: “Não altere arquivos dentro de um WAR, nunca!” Não é aconselhável ou qualquer coisa assim.

Por que você não cria um diretório e não coloca o arquivo a parte? Assim sua aplicação poderá acessar e alterar ou até mesmo manualmente, com menos riscos de o operador interferir nos arquivos da aplicação.

Então meu amigo, mas estou tendo um problema inesperado

Eu consigo gerar arquivos normalmente na camada do servidor, mas eu não consigo acessá-los chamando na camada do Cliente.

por exemplo:

<script type="text/javascript">     
            <!--
            var myChart = new FusionCharts("FusionCharts/Pie3D.swf", "HighRiskChart", "285", "220", "0", "1");
            myChart.setXMLUrl("highrisk.xml");
            myChart.render("chartContainer");
            //-->
        </script>

este conteudo está numa pagina HTML comum dentro da minha aplicação que eu rodo usando iframe numa página xhtml.