2012-02-01 128 views
2

我正在尋找Spring 1.2.8的Spring 3.1遷移指南和Hibernate遷移指南。我無法在Google上找到相關信息。如果有有用的文章,請與我分享。從spring 1.2.8遷移到spring 3.1和hibernate 3.1到4.0

當我用彈簧3.1罐取代彈簧1.2.8罐子時出現以下錯誤。

java.lang.NoSuchFieldError的:手動 在org.springframework.orm.hibernate3.support.OpenSessionInViewFilter(OpenSessionInViewFilter.java:102)

+0

首先,如果您使用的是Hibernate 4,請不要使用org.springframework.orm.hibernate3中的任何類。如包名所示,這些類用於Hibernate 3,而不是4.使用來自org.springframework.orm.hibernate4 – 2012-02-01 09:02:10

+0

的類但是,我還沒有添加Hibernate 4 jar。首先,我試圖解決所有春季相關的問題。所以,我已經用彈簧3.1罐替換了彈簧1.2.8罐。 – neni 2012-02-01 09:21:58

+0

@Veerendra看到我答案的第一段,它解釋了這個問題。 – Ralph 2012-02-01 09:22:56

回答

1

更新到Hibernate 3.2或更新的版本! 見https://jira.springsource.org/browse/SPR-7008(最後的評論)

它是由谷歌,如果你谷歌「java.lang.NoSuchFieldError的第一個答案:在org.springframework.orm.hibernate3.support.OpenSessionInViewFilter手冊(OpenSessionInViewFilter.java:102 )」


如果你使用Hibernate 4,那麼你應該使用new org.springframework.orm.hibernate4包(在Spring 3.1中引入),而不是hibernate3包。


btw:一步一步更新系統,但不是一次全部更新!

例如:

  • 更新休眠> = 3.2
  • 更新彈2.0或2.5
  • 更新休眠3.X
  • 然後更新到彈簧3.0
  • 可以代替休眠與JPA 2.0 (然後更新到春天3.1(希望沒有太多改變)
  • 然後到休眠4。 0
+0

嗨拉爾夫,是的,我在Google上找到了上述鏈接。這是由於版本不匹配。然後我必須同時更新spring和hibernate庫。 – neni 2012-02-01 09:32:54