[昨日調試]Named query not known: Employee.findByName

版權聲明:本文爲博主原創文章,但是你也可以隨意轉載。 https://blog.csdn.net/smartcore/article/details/79975645

又是拿到一個三方的前置應用,在使用前一篇《[昨日調試]在本地運行三方公司開發的maven項目》的方案做好依賴包的非倉庫本地化後,idea內使用mvn clean package -DskipTests,開始生成war包,一切順利。

然後開始進系統(localhost:port/login.on),輸入完用戶名、密碼,點擊登錄,然後系統跳轉到含有本文標題的錯誤頁面:

Named query not known: Employee.findByName

 

因爲對hibernate使用少,再加上mvn生成表面上是成功的(war包裏的內容初看該有的都有了),所以首先感覺是hiberate的配置哪兒有問題?(非常疑惑,覺得應用裏面應該沒有少的或者錯的東西啊),就先搜搜此問題到底是因爲什麼原因,大概有以下:

1、有說是<query>在<class>裏的,請見:https://blog.csdn.net/daryl715/article/details/1518900

2、Entity註解的引用類錯誤,請見:https://stackoverflow.com/questions/10261651/named-query-not-known-for-named-hibernate-query

 

有需要的同學可以參考以上,但我的問題並不是因爲以上的問題。

最終發現,是src/main/java/com/xxx/bizpro/entity下面的xml文件集沒有包含在生成的war包裏,真是意外,pom.xml完成沒有關於<resource>的配置啊,你們是怎麼打包到war裏的[捂臉]。

隨即使用通用方案在pom.xml裏新增下面的片段:

<build>
<!-- 其他配置 -->
<resources>
    <resource>
        <directory>src/main/java</directory>
        <includes>
            <include>com/xxx/bizpro/entity/**/*.xml</include>
        </includes>
    <resource>
</resources>
</build>



結束。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章