2011-01-11 5 views
0

Для того, чтобы предотвратить SQL инъекцию я пытаюсь преобразовать динамические запросы к именованному запросу параметров .. Однако, когда я использую этот код -проблема с именем запросом параметров в спящем режиме

String query = "from Ad a left join fetch a.adQueries left join fetch a.aduser u left join fetch u.profile where a.id =:identifier"; 
     Query q = s.createQuery(query); 
     q.setParameter("identifier", id); 

Никакие данные не возвращается из БД, даже если данные есть и тот же запрос в данных возвратных динамической формы

и, когда я использую этот код -

String query = "from Ad a left join fetch a.adQueries left join fetch a.aduser u left join fetch u.profile where a.id =:identifier"; 
     Query q = s.createQuery(query); 
     q.setLong("identifier", id); 

он бросает исключение Null указатель ..

Пожалуйста, дайте мне знать, где я буду неправильно

Благодаря

ответ

1

Возможно id является null, это может вызвать такое поведение.