Return error do cmd em variável

Ola a todos, estou com uma duvida tenho o seguinte método:

 public void startDB() throws IOException, SQLException, NamingException, ClassNotFoundException, NullPointerException {
        String saida;
        DLCControle dlc_controle = new DLCControle();
        BancoControle banco_controle = new BancoControle();
        String sdlc = dlc_controle.selectedDLC_CB().toString().replace("[", "").replace("]", "");
        String sban = banco_controle.selectedBanco_CBAN().toString().replace("[", "").replace("]", "");

        String startDB = "cmd /c start " + sdlc + "\\proserve \"" + sban + "\\" + getNb() + "\\" + getEmp() + "\"" + " " + getParam();

        pro = run.exec(startDB);
        read = new BufferedReader(new InputStreamReader(pro.getInputStream()));
        read.readLine();
     
        FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Info: ", "BANCO INICIADO COM SUCESSO! "));
    }

que funciona, executa o script de acordo com os parâmetros que eu passo, só que quero devolver a mensagem no FacexContext caso de algum erro, gostaria de saber como faço para capturar em uma variavel ou algo do tipo os erros que o script devolver

vc tem que descobrir o que o script faz quando ocorre um erro.

por exemplo, o exec retorna um objeto da classe Process

https://docs.oracle.com/javase/7/docs/api/java/lang/Process.html

vc tem o metodo exitValue ( no mundo unix, 0 pode ser sucesso, qq outro valor pode simbolizar erro )

vc tambem pode pegar o o errorStream, que pode ter alguma mensagem de erro