2012-12-13 120 views
1

我正在使用GWT,Spring,Hibernate和Bonita(一種BPM工具)等項目。 除了應用程序之外,我還需要創建一段代碼來更新一次數據庫和更新/創建工作流程。在GWT中創建獨立代碼

我的問題是,我應該如何創建此工具/件的代碼,以便它可以

  1. 使用所有的Java在我的應用程序可用的對象(如DAO中的實例),
  2. 更新數據庫,
  3. 是獨立的嗎?

我對GWT比較陌生,對Spring也是全新的,所以任何建議都是值得歡迎的。

謝謝

問候

回答

1

如果這僅僅是關於春天(服務器端)對象,那麼你可以只寫一個類與創建一個ApplicationContext(例如基於ClassPathXmlApplicationContext)與主方法您需要的bean,然後繼續從applicationContext.getBean(...)

或者編寫一個簡單的Web API並與之交互(我最喜歡的方法)。一個帶有一點JSON的簡單Servlet就足夠了,如果你願意,也可以使用一些REST框架。然而,如果使用「應用程序中的所有對象」實際上是指所有這些對象(包括某些僅客戶端的GWT對象),那麼可能的方法是使用來實現GWTTestCase(「 d必須在模塊xml中註冊你的servlet)。通常,我不會使用後一種方法 - 應該始終可以以乾淨的方式與服務器交互(例如更新數據庫),而不需要客戶端類。

+0

謝謝克里斯。我遇到了一個問題:當試圖在DB中保存對象時,flush()崩潰: javax.persistence.TransactionRequiredException:沒有事務正在進行。 這裏缺少什麼配置? – leochab

+0

取決於你的彈簧配置。你在使用'@ Transactional'註解嗎?如果是的話,你可能需要''。有關更多信息,請閱讀http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/transaction.html#transaction-claclarative- annotations。 –