Sto cercando di eseguire un'istanza ApacheDS dalla mia applicazione java.
Io uso questo metodo run()
di classe ScriptWrapper per eseguire script che viene fornito con ApacheDS per eseguirlo:Come eseguire un'applicazione java da un'altra applicazione java e mantenerla in esecuzione dopo il ritorno del programma master?
public class ScriptWrapper implements Serializable {
private String scriptPath;
protected Process run(List<String> params) throws IOException {
LOGGER.debug("Executing script="+scriptPath);
params.add(0, scriptPath);
if(workDir != null) {
return Runtime.getRuntime().exec(params.toArray(new String[params.size()]), envp.toArray(new String[envp.size()]), new File(workDir));
} else {
return Runtime.getRuntime().exec(params.toArray(new String[params.size()]));
}
}
}
ma il problema è, che quando tomcat su cui questa applicazione viene eseguito, è terminato e/o ScriptWrapper è spazzatura raccolta, termina anche l'istanza di ApacheDS. Come tenerlo in vita?
MODIFICA: Grazie per le vostre risposte. Ho deciso di affrontare il problema in modo diverso e ho demonizzato il processo con l'avvio di script con l'installazione binaria di ApacheDS.
problema risolto se sì, per favore condividi la soluzione. –