2014-04-25 53 views
0

# 大家好,兩個Maven項目從Web應用程序(Hibernate Spring)拆分服務?

我想從web應用程序拆分我的web服務。所以我有兩個maven項目。

  1. Maven的1結構:package.service,package.model,package.dao
  2. Maven 2的結構:package.controller和不同的網絡的東西(JSP 頁等)

既有一個上下文的文件:

  1. Maven的1:SRC /主/資源定義休眠,數據源, 會話工廠...
  2. 的Maven 2:WEB-INF /定義
  3. jsp頁面的位置

配置:

  1. Maven 2所的引用的Maven 1作爲項目​​(內置路徑和部署描述符)
  2. 雙方都neccessary瓦爾加入到構建路徑和部署描述符

問題:

當試圖在Apache 7(eclipse)上運行時,Maven 1的資源無法識別; (服務)類被稱爲中沒有找到的Maven 2的控制器之一...

問題:

  1. 如何可以將文件一起工作的情況下,實現這一目標呢?
  2. 是否有可能像描述的那樣從Web應用中分離服務?
  3. 有沒有其他辦法可以實現我的目標?

任何幫助,將不勝感激

+0

請您將內容發佈到web.xml中,我認爲問題在那裏,您maven2項目不會加載maven1中的上下文配置文件。 – OQJF

回答

0

裏面的Maven2項目的POM文件中添加類似下面

<dependencies> 
    <dependency> 
     <groupId>package</groupId> 
     <artifactId>maven1project</artifactId> 
     <version>2.1</version> 
    </dependency> 
</dependencies> 
+0

ts ok沒問題.. –

+0

謝謝你的回覆:)。它做了Karibasappa的工作!但還有一個錯誤(找不到會話)。 我用下面的程序解決了這個問題... ConfigurableApplicationContext context = new ClassPathXmlApplicationContext(「applicationContext。XML 「); 博=(IPatientService)context.getBean(」 patientService「); // 做一些東西...博 context.close(); 這是最好的做法,或者是有ynother方式 – mrcoffee85

+0

?可能我知道什麼時候沒有發現會話發生錯誤嗎?意思是在代碼中的確切位置? –

0

對於你的問題的Maven1項目的依賴: 1.我覺得這個問題是maven1背景config文件沒有被導入到maven2中,所以在web.xml中contextconfiglocation參數應該是classpath*: not classpath:注意:所有的服務都在jar文件中,所以它有點棘手。 2.當然,你可以這樣做。 3.另一種方法是Maven模塊。這也是Maven的一大好處。

+0

謝謝QQJF!我會在不同的時間嘗試模塊方式:) – mrcoffee85

相關問題