Ejecute jar en la página jsp: espere hasta que se complete la ejecución de jar

Tengo un archivo jar que debe ejecutarse en la página jsp. jar está diseñado para ejecutarse en la línea de comandos. Este es mi código:

public static String scheduleCourses() throws IOException {

    String execute = "java -jar execute.jar \"jdbc:mysql://localhost:3306/db\" root \"\" file.txt";
    Process process = Runtime.getRuntime().exec(execute);
    BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
    try {
        process.waitFor();
    } catch (InterruptedException ex) {
        Logger.getLogger(widgets.class.getName()).log(Level.SEVERE, null, ex);
        return "Error with import<br>" +ex;
    }
    return "All done";
}

pero de alguna manera, aunque esta función se está ejecutando, se detiene en unos 10-20 segundos. Pero si ejecuto el archivo jar desde el símbolo del sistema, funciona bien

preguntado el 22 de mayo de 12 a las 21:05

Agregaría que se considera una mala práctica realizar acciones como esta en jsp, ya que es extremadamente difícil de depurar. Ejecute el jar en su propio servlet, adjunte cualquier resultado que intente obtener del jar a la solicitud y luego reenvíelo al jsp para producir el resultado final para el solicitante. Esto hace que la modularidad sea mucho mejor y la depuración sea más fácil, ya que el error de Java generará errores más significativos. -

1 Respuestas

Terminé con la solución anterior.

Respondido el 09 de junio de 12 a las 15:06

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.