以下のコードを少しいじった後、突然、「トランザクションが正常に開始されませんでした」という例外が発生しました。そして、私はそれを取り除くようには見えません。Java メソッドのエラーを見つけることができますか?
データ・モデル
提案: 提案 ID、名前、isReceivedNSD、isSetupNSD、isDecidedUHR、会議 ID、..
会議: 会議 ID、日付
ログ: ログ ID、提案 ID、..
ここで特別なのは次のとおりです。
コントロールパネル: controlpanel_id、processMeeting_id (現在の選択肢を含む、常に 1 行のみ)
Java メソッド
public static List<Suggestion> getSuggestion(final int maxResults,
final boolean isReceivedNSD, final boolean isSetupNSD, final boolean isDecidedUHR,
final Status status) throws GettingException {
final Transaction transaction = getSession().getTransaction();
List<Suggestion> list = null;
final Query query;
try {
final String hql = "select f" //
+ " from Controlpanel p, Log L" //
+ " where L.suggestion.isReceivedNSD = :isReceivedNSD" //
+ " and L.suggestion.isSetupNSD = :isSetupNSD" //
+ " and L.suggestion.isDecidedUHR = :isDecidedUHR" //
+ " and L.status.id = :statusId" //
+ " and L.suggestion.meeting.id = p.processMeeting.id";
query = getSession().createQuery(hql);
query.setParameter("isReceivedNSD", isReceivedNSD);
query.setParameter("isSetupNSD", isSetupNSD);
query.setParameter("isDecidedUHR", isDecidedUHR);
query.setParameter("statusId", status.getId());
query.setMaxResults(maxResults);
list = castList(Suggestion.class, query.list());
transaction.commit();
}
catch (final HibernateException e) {
throw new GettingException("Suggestion list. " + e.getMessage());
}
finally {
HibernateCommon.rollbackIfNeededDuringHenting(transaction);
}
return list;
}