Olá…
Desenvolvi uma aplicacao web que lê e escreve muitos arquivos xml.
desenvolvi a aplicacao no eclipse e utilizei o caminho absoluto:
EX.:
public class MenuEditCommand implements ModuloCommand {
private Modulo modulo;
private final String urlMenu = "C://workspace//sistema//WebContent//modulos//sistema_core//menus//menu.xml";
public void executar() throws Exception {
Document doc = null;
SAXBuilder builder = new SAXBuilder();
try {
doc = builder.build(this.modulo.getPath() + "//conf//modulo.xml");
} catch (Exception e) {
e.printStackTrace();
}
Element menu = doc.getRootElement();
List<Element> lista = menu.getChildren();
for (Element e : lista) {
if (e.getName().equals("menu")) {
Document docMenuXML = null;
SAXBuilder builderMenuXML = new SAXBuilder();
try {
docMenuXML = builderMenuXML.build(urlMenu);
} catch (Exception exception) {
exception.printStackTrace();
}
Element novo = docMenuXML.getRootElement();
List<Element> elements = e.getChildren();
for (Element x : elements) {
novo.addContent((Element) x.clone());
}
XMLOutputter xout = new XMLOutputter();
org.jdom.output.Format formatXML = org.jdom.output.Format
.getPrettyFormat();
formatXML.setEncoding("UTF-8");
xout.setFormat(formatXML);
try {
// Criando o arquivo de saida
FileWriter arquivo = new FileWriter(new File(urlMenu));
// Imprimindo o XML no arquivo
xout.output(docMenuXML, arquivo);
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}
Eu achava que so alterando:
private final String urlMenu = “C://workspace//sistema//WebContent//modulos//sistema_core//menus//menu.xml”;
para
private final String urlMenu = “//modulos//sistema_core//menus//menu.xml”;
eu poderia jogar o arquivo.WAR no tomcat e funcionaria, mas não funcionou não é tão simples assim.
[b]Ai gostaria de saber se existe algum método que eu posso obter o tomcat_home (CATALINA_HOME)?
PARA MIM FAZER O SEGUINTE:
String tomcat_home = getTomcatHome
String caminhoRelativo = “//modulos//sistema_core//menus//menu.xml”;
String nome_aplicacao = “//sistema”;
String path = tomcat_home + nome_aplicação + caminhoRelativo;[/b]
ATT. Dirceu