<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    xskow's road.

    做好自己,做好一切。
    數據加載中……
    【轉】ClassNotFoundException:org.hibernate.hql.ast.HqlToken-weblogic使用hibernate hql問題解決

    一般我們使用hibernate,最喜歡用的應該就是hql查詢吧,較為靈活寫法也跟sql相似,不過有的同志喜歡用criteria查詢的可能不會看到這個異常信息,呵呵。

    今天把一hibernate war項目部署到wl10.3.3上,部署是不會報錯的,但是當你點到某個功能,這個功能下面有hql查詢,就會報錯,報錯信息如下:

    java.lang.RuntimeException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken [select ...]; nested exception is org.hibernate.QueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken [select ...]
    at …
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:183)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.doIt(WebAppServletContext.java:3686)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3650)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2268)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2174)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1446)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    >

    通過自己做的JarFinder小工具,明顯可以在部署的war包中看到 org.hibernate.hql.ast.HqlToken 類,在hibernate-core-3.3.0.GA.jar中,這報錯不正常啊,估計就是某些包跟wl沖突了,后來google了一下,找到一個國外的帖子,說是antlr的問題,親身試驗了一次,果然是這個問題,現在就把解決方法跟大家分享下:

    將你的war包打入ear包中,當然你還需要有META-INF文件,帶有weblogic-application.xml和application.xml,主要就是在weblogic-application.xml中解決,聲明prefer-application-packages,如下所示(關鍵line3-5):

    <?xml version="1.0" encoding="UTF8"?>
    <weblogic-application>
    <prefer-application-packages>
    <package-name>antlr.*</package-name>
    </prefer-application-packages>
    </weblogic-application>

    而application.xml就較為簡單了,這里就不說了,相信打過ear包的都應該知道怎么回事,呵呵.打包后再次發布,問題解決。

    附上解決問題原帖鏈接:http://forum.springsource.org/showthread.php?t=36860

    不會寫application.xml的可以參考一下java的dtd:http://java.sun.com/dtd/

    再附上一篇08年的英文文章,blogspot的,講的是weblogic jws+spring+hibernate開發的,需要翻墻才能看到:http://timezra.blogspot.com/2008/09/spring-hibernate-and-jax-ws-webservices.html

    歡迎討論~


    原文鏈接:http://www.shaojiahao.org/java/hibernate/weblogic-hibernate-hql-problem

    posted on 2010-11-15 14:51 xskow! 閱讀(1039) 評論(0)  編輯  收藏 所屬分類: SSH探索

    links:
    主站蜘蛛池模板: 自拍偷自拍亚洲精品第1页| 亚洲日韩精品一区二区三区无码 | 亚洲AV日韩精品一区二区三区 | 日本人护士免费xxxx视频| 亚洲伊人成无码综合网 | 在线精品免费视频| 久久亚洲国产午夜精品理论片| 亚洲av无码专区在线| 九九免费精品视频在这里| 91网站免费观看| 亚洲精品无码mv在线观看网站| 亚洲精品动漫免费二区| 99精品视频在线观看免费播放 | 国产成人精品日本亚洲语音 | 日韩a在线观看免费观看| 亚洲国产成人AV网站| 免费99热在线观看| 亚洲一区二区久久| 国产一卡2卡3卡4卡2021免费观看| 亚洲无av在线中文字幕| 四虎影视无码永久免费| 亚洲av片一区二区三区| AAAAA级少妇高潮大片免费看| 国产高清免费的视频| 亚洲成人黄色在线观看| 国产猛男猛女超爽免费视频| 午夜国产大片免费观看| 中文字幕亚洲情99在线| 亚洲啪啪免费视频| 亚洲一区二区电影| 无码国产精品一区二区免费模式| 精品国产香蕉伊思人在线在线亚洲一区二区 | 国产精品亚洲аv无码播放| 最新亚洲成av人免费看| 亚洲黄色在线观看视频| 午夜无码A级毛片免费视频 | 天天拍拍天天爽免费视频| 麻豆安全免费网址入口| 国产成人精品免费直播| 两性色午夜免费视频| 亚洲精品无码不卡在线播HE|