2010-07-22 28 views
8

Spring-ws 1.5.9 phụ thuộc vào Spring 2.5 (dựa trên pom). Nó có thể được sử dụng với Spring 3 mà không gặp phải bất kỳ vấn đề tải lớp nào hay không. Tôi biết rằng một số các gói phù hợp giữa hai, tôi có thể chỉ không bao gồm những lọ 3 mùa xuân? Tôi không thể tìm thấy bất kỳ từ chính thức nào về điều này.Spring-WS 1.5 có thể được sử dụng với Spring 3 không?

Trả lời

3

Chính thức, không, chúng không tương thích. Như bạn đã nói, có những xung đột về gói giữa hai - org.springframework.oxm nói riêng. Gói này đã được đưa vào Spring 3 từ Spring-WS, và cả hai sẽ đụng độ.

Công việc được cho là hoàn thành vào Spring-WS 2.0 ngay sau khi Spring 3.0 được phát hành, nhưng điều này đã không xảy ra. Cho đến khi điều đó xảy ra, Spring-WS vẫn không tương thích với bản phát hành Spring Framework hiện tại.

Trong thực tế, tôi thấy rằng nếu bạn bỏ qua org.springframework.oxm JAR từ bản phân phối Spring 3, cả hai hoạt động tốt với nhau. Nếu bạn đang sử dụng maven, tuy nhiên, tôi không chắc chắn nếu đây là một lựa chọn cho bạn.

7

Ngoài câu trả lời skaffman của, đây là làm thế nào để sử dụng Spring-WS 1.5.9 với mùa xuân 3 đến Maven:

1) Trước tiên loại trừ phụ thuộc OXM của mùa xuân 3. Chỉ cần loại bỏ phụ thuộc sau đây từ POM của bạn.

<dependency> 
    <groupId>org.springframework</groupId> 
    <artifactId>spring-oxm</artifactId> 
</dependency> 

Nếu bạn đang sử dụng một khuôn khổ mà có một sự phụ thuộc bắc cầu vào mùa xuân 3 (như lạc đà xuân Apache Camel của Module) sử dụng:

<dependency> 
<groupId>org.apache.camel</groupId> 
<artifactId>camel-spring</artifactId> 
<exclusions> 
    <exclusion> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-oxm</artifactId> 
    </exclusion> 
</exclusions> 
</dependency> 

2) Hủy bỏ các phụ thuộc bắc cầu rằng mùa xuân -WS 1.5.9 có vào Mùa xuân 2.5.6:

<dependency> 
    <groupId>org.springframework.ws</groupId> 
    <artifactId>spring-ws-core</artifactId> 
    <version>1.5.9</version> 
    <exclusions> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-core</artifactId> 
     </exclusion> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-beans</artifactId> 
     </exclusion> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-context</artifactId> 
     </exclusion> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-aop</artifactId> 
     </exclusion> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-web</artifactId> 
     </exclusion> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-webmvc</artifactId> 
     </exclusion> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-test</artifactId> 
     </exclusion> 
    </exclusions> 
</dependency> 
<dependency> 
    <groupId>org.springframework.ws</groupId> 
    <artifactId>spring-ws-support</artifactId> 
    <version>1.5.9</version> 
    <exclusions> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-core</artifactId> 
     </exclusion> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-beans</artifactId> 
     </exclusion> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-jms</artifactId> 
     </exclusion> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-tx</artifactId> 
     </exclusion> 
     <exclusion> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-test</artifactId> 
     </exclusion> 
    </exclusions> 
</dependency> 

3) Cuối cùng hãy đảm bảo bạn bao gồm các mô-đun Spring 3 cần thiết (danh sách ở trên) là phụ thuộc liên quan đến POM của bạn.

Bây giờ bạn đã có thể sử dụng Spring-WS 1.5.9 với Spring 3.x.

Các vấn đề liên quan