aşağıdaki özel durum alıyorum:Adlandırılan sorgu bilinmemektedir - Açıklamalar ve hazırda
org.springframework.orm.hibernate3.HibernateSystemException: Named query not known:
Varlık sınıfı başlığı: hibernate.cfg.xml olarak
@Entity
@NamedNativeQuery(callable = true, name = "_Foo_SP", query = "call _Foo()", readOnly = true, resultClass = Foo.class)
public class Foo {
//...properties omitted for brevity
}
:
<mapping
class="com.company.test.Foo" />
Ve bir test sınıfında:
private static HibernateTemplate HIBERNATE_TEMPLATE;
public static void main(final String[] args) {
HIBERNATE_TEMPLATE =
new HibernateTemplate(new AnnotationConfiguration().addAnnotatedClass(Foo.class).configure().buildSessionFactory());
new HibernateTest().test();
}
public void test() {
List findByNamedQuery = HIBERNATE_TEMPLATE.findByNamedQuery("_Foo_SP");
for(Object object : findByNamedQuery) {
System.out.println(object);
System.out.println(object.getClass().getName());
}
}
Bu, ek açıklama yapmadan çalışmıştı (örneğin: bir eşleme dosyasında eşleme ile), ancak eşleme bildirmek için JPA ek açıklamalarını kullanmak daha sezgisel gibi görünüyor - ama işe yaramaya gelemiyorum.
Burada yanlış olan ne yapıyorum? Yapmaya çalıştığım şey mümkün mü? Bununla karşılaşan tek kişi ben değilim, bkz .: here.
Hazırda bekletme 3.5.6 FİNİŞ FWIW kullanıyorum.
TIA
Örnek olarak kendim denedim ve iyi çalışıyor. AnnotationConfiguration –
içinde bildirdikten sonra hibernate.cfg.xml 'den dosyasını kaldırmayı denedim ve bunu denedim ve işe yaramadı. –
javamonkey79