0
这是我制作的代码。它不应该得到并进入NoResultException,但它不符合预期。有一个未使用的数据。我尝试打印出来,这里是输出: “[]”此代码无法检查NoResultException
private void deleteButtonActionPerformed(java.awt.event.ActionEvent evt) {
try {
int row = tableDataRangka.getSelectedRow();
String idRangka = tableDataRangka.getValueAt(row, 0).toString();
System.out.println(relasiRumahkayuRangkaDAO.getRelasiByIdRangka(idRangka).toString());
} catch (NoResultException nre) {
// Doing something..
} catch (Exception ex) {
Logger.getLogger(MasterDataProjectUI.class.getName()).log(Level.SEVERE, null, ex);
}
}
这里是方法的代码 “getRelasiByIdRangka”:
public List<RelasiRumahKayuRangka> getRelasiByIdRangka(String idRangka) throws Exception{
initEntityManager();
List<RelasiRumahKayuRangka> rrDrs = new ArrayList<>();
Query q = em.createNamedQuery("RelasiRumahKayuRangka.findByIdRangka");
q.setParameter("idRangka", idRangka);
rrDrs.addAll(q.getResultList());
closeEntityManager();
return rrDrs;
}
而这一次是JPA查询,findByIdRangka:
@NamedQuery(name = "RelasiRumahKayuRangka.findByIdRangka", query = "SELECT r FROM RelasiRumahKayuRangka r WHERE r.relasiRumahKayuRangkaPK.idRangka = :idRangka"),
你们是否知道解决方案,所以可以通过NoResultException捕获代码?
代码“relasiRumahkayuRangkaDAO.getRelasiByIdRangka(idRangka)”应该被noResultException抓住。我用IDRangka填充了数据库中未包含的数据。 – user3198020
尝试从某处抛出'noResultException',而不仅仅是'Exception'。就像现在这样,这个例外并没有被任何东西抛出。 – csmckelvey
好吧,我会尝试,除了它通常工作.. – user3198020