2010-11-11 8 views
0

J'essaie d'excuter des commandes système telles que exp pour sauvegarder un db.Mais si les informations de connexion sont erronées ou si la base de données n'existe pas, elle ne génère pas d'exception.exception jamais levée par la méthodeExec en java

Comment puis-je gérer ce genre de cas où des exceptions sont levées.

Toutes les mains sont les bienvenus .. helpul

Cordialement, Swarupa

+0

Peut-être que vous pourriez partager le code utilisé pour appeler la commande système –

Répondre

1

Vous devriez vérifier la valeur de sortie de la commande du système à la place.

0

Généralement, les commandes système renvoient le code de sortie. Si le code est 0, alors l'oeuvre s'est complétée avec succès. Sinon, vous devez analyser le code de sortie et imprimer le message d'erreur correspondant.

int result = Runtime.getRuntime().exec("dir").exitValue(); 

if (result != 0) { 
// error handling 
} 
0

Vous devriez vérifier la sortie de votre programme. La fonction Runtime.getRuntime(). Exec() renvoie un objet Process, qui peut être utilisé pour extraire l'InputStream et l'ErrorStream.

Capturez la sortie écrite dans ces flux et analysez-la pour obtenir les erreurs. Peut-être que le code de sortie du processus vous aidera aussi.