2017-08-01 89 views
0

大家好,長話短說,我在我的項目中使用hibernate,我嘗試在WebSphere上部署我的項目,但它給了我你在問題標題 中看到的錯誤,正如你在我的罐子中看到的那樣, JPA的較低版本2.0WebSphere7:java.lang.NoSuchMethodError:javax/persistence/spi/PersistenceUnitInfo.getSharedCacheMode()Ljavax/persistence/SharedCacheMode;

jars included in my project

,但我知道,所有服務器都有一個版本JPA的,和WebSphere 7是使用1.0,我發現它的罐子中,這裏是它的照片,

WebSphere 7 jars

,如果有人請知道如何解決這個問題,或者發現了這個問題之前,我會很感激,謝謝你在前進,我會留下更多的相關信息的完整的堆棧跟蹤:

Caused by: java.lang.NoSuchMethodError: javax/persistence/spi/PersistenceUnitInfo.getSharedCacheMode()Ljavax/persistence/SharedCacheMode; at org.hibernate.ejb.util.LogHelper.logPersistenceUnitInfo(LogHelper.java:39) at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:516) at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:73) at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:288) at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:310) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1547) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1485) ... 61 more

回答

0

我有一個類似的問題,部署我的應用程序在Websphere 7中使用jpa 2.1。

如果是相同的問題,則必須告知Websphere使用Hibernate持久性提供程序而不是默認持久性提供。

我寫了,在這個答案爲我工作的解決方案指南:

https://stackoverflow.com/a/38505479/6503002

編輯:(解釋指南步驟1和2)

第1步:創建文件夾你必須通過ssh訪問服務器機器並在文件系統中創建它(例如,假設你的服務器在Linux上運行,則爲/usr/sharedHibernate)。然後將Hibernate庫複製到您創建的文件夾中(使用Filezilla或WinScp或Putty從本地計算機到服務器)。

步驟2:在WebSphere控制檯左邊你有環境節,其中包含共享庫款:

Websphere console

這裏創建一個新的共享庫,給你想要的名稱和在classpath textarea中插入您之前創建的文件夾的路徑(例如/usr/sharedHibernate

Shared libraries

+0

我很喜歡但步驟對我來說不是那麼清楚,因爲我是veeery websphere的新成員,而且我只是在爲此工作,因爲公司的特殊要求我正在實習中,如果你可以通過Skype與我聯繫,以更好的方式向我解釋這些步驟,我會很感激,謝謝。 –

+0

你能向我解釋第一步和第二步嗎? –

+0

編輯我的答案,希望現在清除 – amicoderozer