2009-09-02 19 views
0

私は、int id,String nameという2つのフィールドを持つ永続的なclass Authorを持っています。where節のHql問題

問題は、いつでも私は、クエリをこのように実行することです:

Session s = HibernateUtil.getSessionFactory().getCurrentSession(); 
s.beginTransaction(); 

Query q = s.createQuery("from Author"); 
return (Author)q.list().get(0); 

それが正常に動作してくれ充填フィールドを持つAuthorオブジェクトを返します。しかし、クエリに条件を入れようとすると、たとえば次のようになります。

Session s = HibernateUtil.getSessionFactory().getCurrentSession(); 
s.beginTransaction(); 

Query q = s.createQuery("from Author a where a.id=41"); 
return (Author)q.list().get(0); 

私のアプリケーションがクラッシュします。これは私がエラー・スタックで受信一番上のエラーです:それは私に3時間以上を取ったが、私はまだありませんソリューション件までです、私を助けてください

java.lang.reflect.UndeclaredThrowableException 
    at $Proxy0.createQuery(Unknown Source) 

。ありがとう。

antlr.jar 
    cglib.jar 
    asm.jar 
    asm-attrs.jars 
    commons-collections.jar 
    commons-logging.jar 
    hibernate3.jar 
    jta.jar 
    dom4j.jar 
    log4j.jar 

とあなたのコードは動作するはずです:

答えて

1

あなたがする必要がある唯一のものは、Hibernateのような付属してすべてのJARをリンクすることです。

+0

私はlibフォルダにantlr.jarという2つのバージョンがあることがわかりました。 1つの作業を削除しました。あなたの答えをありがとう。 – craftsman