Hallo zusammen,
ich habe folgendes Problem. Eine Exception die ich weitergeicht habe kommt dort wo die Methode aufgerufen wird nicht an. Woran kann das liegen ?
Hier die Methode im Interface die die Exception wirft
[Java]
public List findAllByCriteria(Criteria criteria)throws PersistenceException;
[/code]
Die Methode selbst
[Java]
public List findAllByCriteria(Criteria criteria) throws PersistenceException{
try {
NDC.push("findAllByCriteria()");
if (TRACE_DBCALLS) {
logger.debug(BEGIN_DBOPERATION);
}
List rst = criteria.list();
if (TRACE_DBCALLS) {
logger.debug(END_DBOPERATION);
}
List result = this.distinct(rst);
if (EntityContext.hasEntityCache()) {
EntityContext.putEntities(result);
}
return result;
} catch (ObjectNotFoundException oe) {
return new ArrayList();
} catch (Exception e) {
throw new PersistenceException(PersistenceException.STATUS_NONE, e);
} finally {
NDC.pop();
}
}
[/Java]
Und der Aufruf der Methode nachher im Programm in dieser Methode würde ich nun eigentlich erwarten, das sie mich drauf Aufmerksam macht das eine Exception noch abzufangen ist was sie aber nicht tut. Die Methode selbst ist im Interface auch nicht hinterlegt das sie selbst die Exception weiter durchreicht.
[Java]
public List findDaten(int dg, int ko) {
PersistenceManager pm = super.getPersistenceManager();
Criteria c = pm.createCriteria(ChargeZusatzinfo.class);
c.add(Expression.eq("dg", new Integer(dg)));
c.add(Expression.eq("ko", new Long(ko)));
List erg = pm.findAllByCriteria(c);
return erg;
}
[/Java]
Interface der Methode
[Java]
List findDaten(int dg, int ko);
[/Java]
Woran kann es liegen das die Exception nicht ankommt .
Lg Fireli
ich habe folgendes Problem. Eine Exception die ich weitergeicht habe kommt dort wo die Methode aufgerufen wird nicht an. Woran kann das liegen ?
Hier die Methode im Interface die die Exception wirft
[Java]
public List findAllByCriteria(Criteria criteria)throws PersistenceException;
[/code]
Die Methode selbst
[Java]
public List findAllByCriteria(Criteria criteria) throws PersistenceException{
try {
NDC.push("findAllByCriteria()");
if (TRACE_DBCALLS) {
logger.debug(BEGIN_DBOPERATION);
}
List rst = criteria.list();
if (TRACE_DBCALLS) {
logger.debug(END_DBOPERATION);
}
List result = this.distinct(rst);
if (EntityContext.hasEntityCache()) {
EntityContext.putEntities(result);
}
return result;
} catch (ObjectNotFoundException oe) {
return new ArrayList();
} catch (Exception e) {
throw new PersistenceException(PersistenceException.STATUS_NONE, e);
} finally {
NDC.pop();
}
}
[/Java]
Und der Aufruf der Methode nachher im Programm in dieser Methode würde ich nun eigentlich erwarten, das sie mich drauf Aufmerksam macht das eine Exception noch abzufangen ist was sie aber nicht tut. Die Methode selbst ist im Interface auch nicht hinterlegt das sie selbst die Exception weiter durchreicht.
[Java]
public List findDaten(int dg, int ko) {
PersistenceManager pm = super.getPersistenceManager();
Criteria c = pm.createCriteria(ChargeZusatzinfo.class);
c.add(Expression.eq("dg", new Integer(dg)));
c.add(Expression.eq("ko", new Long(ko)));
List erg = pm.findAllByCriteria(c);
return erg;
}
[/Java]
Interface der Methode
[Java]
List findDaten(int dg, int ko);
[/Java]
Woran kann es liegen das die Exception nicht ankommt .
Lg Fireli