-2
私はこの方法でエラーをキャッチしようとしています。私はすべてのトレースエラーをログに記録したくありません。なぜこのSQLExceptionをキャッチできませんか?
この私が今持っているコード:私はこれを追加する場合
public void grabar() throws Exception {
System.out.print("hl");
try {
if (condiva.getId() > 0) {
service.modificar(condiva);
} else {
service.registrar(condiva);
}
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Info", "Condicion IVA Grabada Correctamente !!!"));
} catch (Exception e) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "Error!", "Ocurrio un Error al Grabar la Condición de IVA !!!"));
log.error("CondivaEditBean:",e) ;
} finally {
FacesContext.getCurrentInstance().getExternalContext().getFlash().setKeepMessages(true);
}
}
は今、機能しません。
catch(SQLException e)
インターフェース「サービス」が次のように定義されます
public interface IService<T> {
void registrar(T t) throws Exception;
void modificar(T t) throws Exception;
void eliminar(T t) throws Exception;
List<T> listar() throws Exception;
}
私は明確ではありません何かが、私が何をしなければならないか....がありますか?
具体的には、「機能しません」という意味になります。あなたは何を期待していますか?何が起こるのですか? – MrSmith42
その新しいcatch節をどの行に追加しますか?結果のコードを表示してください。また、これは「機能しない」という意味ですか?何かエラーがありますか、またはあなたは、あるコード(どの行?)によってSQLExceptionがスローされていることを知っていますが、catch節によって捕まえられません。はいの場合、例外は何ですか?スタックトレースを表示できますか? –
'SQLException'は' SQLExcpetion'が**前** 'Exception'の' catch'ブロックをスタンドしなければならないのゆえ 'catch'ブロック' Exception'、から延びています。 – Turing85