Come scrivere il testo o il registro per il file in OFbiz Framework
Domanda
Sto cercando di scrivere alcuni messaggi di prova o alcuni contenuti di testo da archiviare tramite Java nel framework di OFbiz.Se il file ha già il contenuto, i messaggi recenti devono aggiungere in fondo al file.
In breve, voglio una funzionalità come Debug.log in Ofiz.Come scrive tutto a Debug.log File, voglio un file separato per scrivere i miei messaggi di testo.
Ho provato questo,
File file = new File("/applications/party/webapp/partymgr/test.txt");
if (!file.exists()) {
try {
file.createNewFile();
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
Debug.logInfo("writing...........", module);
bw.write("this is first line in file");
bw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
.
Ma sta lanciando FileNotFoundException
.
Come, non sono esperto in Ofiz, non sono sicuro del percorso del file.Se il percorso del file è il problema, ti preghiamo di suggerirmi la soluzione.
Soluzione
È possibile utilizzare il registratore per registrare il messaggio.
Logger logger = Logger.getLogger(Logger.GLOBAL_LOGGER_NAME);
logger.setLevel(Level.INFO);
try {
FileHandler fileTxt = new FileHandler("/root/apache-ofbiz/applications/party/webapp/partymgr/test.txt",true);
SimpleFormatter formatterTxt = new SimpleFormatter();
fileTxt.setFormatter(formatterTxt);
logger.addHandler(fileTxt);
logger.log(Level.INFO,"this is first line in file");
} catch (SecurityException e) {
} catch (IOException e) {
}
.
Non dimenticare di menzionare il percorso del file assoluto.Ex: /root/apache-ofbiz/applications/party/webapp/partymgr/test.txt
o
Ottieni il percorso relativo dal componente
filepath = ComponentConfig.getRootLocation("party")+"webapp/log/test.txt";
.