我只花了一個半小時的調試一些新的代碼,不破,因爲我忘了檢查我的日誌這個可怕的消息(又來了!):有沒有什麼辦法來強制執行EE配置RuntimeUnenhancedClasses
WARN openjpa.Enhance - Creating subclass for ...
我在OpenEJB 3.2快照構建,Java 1.6.0_25和Eclipse Helios中運行OpenJPA 2.1.0。我的實體使用ant PCEnhancerTask進行了增強。
我的META-INF/openjpa.xml包含
<property name="openjpa.RuntimeUnenhancedClasses" value="unsupported" />
<property name="openjpa.DynamicEnhancementAgent" value="false" />
反正是有這個EE配置有OpenJPA的執行RuntimeUnenhancedClasses選擇,因爲它在SE的配置呢?
我嫌疑人我的'真正的'問題源於Eclipse svn更新,有時會觸及我的JPA實體源,從而導致生成覆蓋我的增強類。
令人沮喪的是,我多長時間從IDE運行一個單元測試,以某種奇怪的方式失敗,並且當我需要做的就是運行增強器時,我會遍歷代碼尋找問題。
這適用於OpenJPA日誌錯誤。不知道爲什麼它沒有上週使用@Rick的建議... – JimO
至於記錄動作,OpenJPA已經記錄了WARN,這只是我的(很多?)日誌在測試過程中被使用過,這就是爲什麼我錯過了它。我已經優化了我的解決方法,以驗證每個JPA實體實現了PersistenceCapable,所以問題在我身後,但爲了幫助人們從JPA遷移到EJB/JPA,我建議遵守openjpa.xml條目。 – JimO