本文共 4001 字,大约阅读时间需要 13 分钟。
Spring同时了Web Services项目的两个版本:作为开发主干的3.0.4.RELEASE和作为运维的2.4.3.RELEASE。两个版本都已更新,可以在Spring Framework 5.1.0上运行,支持Java 11。
\\是Spring社区的一款产品,致力于创建文档驱动的Web服务。它旨在促进开发,允许使用操作XML有效负载的多种方法中的一种来创建灵活的Web服务。
\\在新版本的Spring Web Services中,最显著的改进是支持Java 11。自从Java 9以来,一些关键的Java EE包(如核心XML包和基于soap的包)的可见性降低了,在中,这些包被完全删除了。因此,要在Java 9及以上版本上使用Spring Web Services,开发人员不能再依赖于JDK提供关键的XML和基于soap的库。
\\Spring Web Services构建文件中新增一个,其中包含开发人员必须添加到自己的构建文件中的额外依赖项。在使用Java 11时,开发人员应该将依赖项添加到构建文件中。下面是build.xml的一个片段,其中包含在版本3.0.4.RELEASE上Java 11所需要的依赖项:
\\\\u0026lt;dependencies\u0026gt;\ \u0026lt;dependency\u0026gt;\ \u0026lt;groupId\u0026gt;com.sun.xml.ws\u0026lt;/groupId\u0026gt;\ \u0026lt;artifactId\u0026gt;jaxws-ri\u0026lt;/artifactId\u0026gt;\ \u0026lt;version\u0026gt;2.3.0\u0026lt;/version\u0026gt;\ \u0026lt;type\u0026gt;pom\u0026lt;/type\u0026gt;\ \u0026lt;/dependency\u0026gt;\ \u0026lt;dependency\u0026gt;\ \u0026lt;groupId\u0026gt;org.jvnet.staxex\u0026lt;/groupId\u0026gt;\ \u0026lt;artifactId\u0026gt;stax-ex\u0026lt;/artifactId\u0026gt;\ \u0026lt;version\u0026gt;1.7.8\u0026lt;/version\u0026gt;\ \u0026lt;/dependency\u0026gt;\ \u0026lt;dependency\u0026gt;\ \u0026lt;groupId\u0026gt;com.sun.xml.messaging.saaj\u0026lt;/groupId\u0026gt;\ \u0026lt;artifactId\u0026gt;saaj-impl\u0026lt;/artifactId\u0026gt;\ \u0026lt;version\u0026gt;1.3.28\u0026lt;/version\u0026gt;\ \u0026lt;/dependency\u0026gt;\ \u0026lt;dependency\u0026gt;\ \u0026lt;groupId\u0026gt;javax.xml.soap\u0026lt;/groupId\u0026gt;\ \u0026lt;artifactId\u0026gt;javax.xml.soap-api\u0026lt;/artifactId\u0026gt;\ \u0026lt;version\u0026gt;1.4.0\u0026lt;/version\u0026gt;\ \u0026lt;/dependency\u0026gt;\ \u0026lt;dependency\u0026gt;\ \u0026lt;groupId\u0026gt;javax.xml.ws\u0026lt;/groupId\u0026gt;\ \u0026lt;artifactId\u0026gt;jaxws-api\u0026lt;/artifactId\u0026gt;\ \u0026lt;version\u0026gt;2.3.0\u0026lt;/version\u0026gt;\ \u0026lt;/dependency\u0026gt;\\\
仍然使用Spring Web Services 2.4.3.RELEASE的开发人员使用Java 11时不会有问题。这个版本只是使用了稍微旧一点的SOAP API(1.3.8)。下面是build.xml的一个片段,其中包含在版本2.4.3.RELEASE上Java 11所需要的依赖项:
\\\\u0026lt;dependencies\u0026gt;\ \u0026lt;dependency\u0026gt;\ \u0026lt;groupId\u0026gt;com.sun.xml.ws\u0026lt;/groupId\u0026gt;\ \u0026lt;artifactId\u0026gt;jaxws-ri\u0026lt;/artifactId\u0026gt;\ \u0026lt;version\u0026gt;2.3.0\u0026lt;/version\u0026gt;\ \u0026lt;type\u0026gt;pom\u0026lt;/type\u0026gt;\ \u0026lt;/dependency\u0026gt;\ \u0026lt;dependency\u0026gt;\ \u0026lt;groupId\u0026gt;org.jvnet.staxex\u0026lt;/groupId\u0026gt;\ \u0026lt;artifactId\u0026gt;stax-ex\u0026lt;/artifactId\u0026gt;\ \u0026lt;version\u0026gt;1.7.8\u0026lt;/version\u0026gt;\ \u0026lt;/dependency\u0026gt;\ \u0026lt;dependency\u0026gt;\ \u0026lt;groupId\u0026gt;com.sun.xml.messaging.saaj\u0026lt;/groupId\u0026gt;\ \u0026lt;artifactId\u0026gt;saaj-impl\u0026lt;/artifactId\u0026gt;\ \u0026lt;version\u0026gt;1.3.28\u0026lt;/version\u0026gt;\ \u0026lt;/dependency\u0026gt;\ \u0026lt;dependency\u0026gt;\ \u0026lt;groupId\u0026gt;javax.xml.soap\u0026lt;/groupId\u0026gt;\ \u0026lt;artifactId\u0026gt;javax.xml.soap-api\u0026lt;/artifactId\u0026gt;\ \u0026lt;version\u0026gt;1.3.8\u0026lt;/version\u0026gt;\ \u0026lt;/dependency\u0026gt;\ \u0026lt;dependency\u0026gt;\ \u0026lt;groupId\u0026gt;javax.xml.ws\u0026lt;/groupId\u0026gt;\ \u0026lt;artifactId\u0026gt;jaxws-api\u0026lt;/artifactId\u0026gt;\ \u0026lt;version\u0026gt;2.3.0\u0026lt;/version\u0026gt;\ \u0026lt;/dependency\u0026gt;\\
除了一般的Java 11支持外,这两个Spring Web Services版本还都带来了一系列的Bug修复和改进,例如:
\\Spring Web Services 3.0.4.RELEASE特有的特性包括:
\\Spring Web Services工件位于中心库中和网站上。库中还提供了一个例子,演示如何搭配使用Spring Web Services和Spring Boot。
\\查看英文原文:
转载地址:http://mtsfx.baihongyu.com/