使用 WebLogic 12C 支持 JAX-RS 2.0
Support JAX-RS 2.0 with WebLogic 12C
我正在阅读以下链接以获得 weblogic 支持的 Jaxrs 2.0
https://docs.oracle.com/middleware/1213/wls/WLUPG/upgrade_ws.htm#WLUPG332
https://docs.oracle.com/middleware/1213/wls/RESTF/use-jersey20-ri.htm#RESTF297
我发现 javax.ws.rs-api-2.0.jar 文件重命名为 javax.ws.rs-api-2.0.war。
然后将其作为库文件部署到weblogic中。
但我仍然遇到错误,因为 weblogic 仍然使用 jaxrs 1.1 API。
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'openStackService': Invocation of init method failed;
hodError: javax.ws.rs.core.MultivaluedMap.addAll(Ljava/lang/Object;[Ljava/lang/Object;)V
这是我的所有配置:
pom.xml
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>2.10.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${org.springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${org.springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${org.springframework.version}</version>
</dependency>
<dependency>
<groupId>org.pacesys</groupId>
<artifactId>openstack4j</artifactId>
<version>2.0.9</version>
</dependency>
weblogic.xml
<?xml version="1.0" encoding="UTF-8"?>
<wls:weblogic-web-app xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-web-app
http://xmlns.oracle.com/weblogic/weblogic-web-app/1.7/weblogic-web-app.xsd">
<context-root>jaxrsrest</context-root>
<wls:library-ref>
<library-name>javax.ws.rs</library-name>
<specification-version>2.0</specification-version>
<exact-match>false</exact-match>
</wls:library-ref>
</wls:weblogic-web-app>
我已经意识到 weblogic 12.1.3 带有以下具有 jax-rs-2.0.war
的文件夹
Oracle\wlserver\common\deployable-libraries.
我已将 war 文件作为库安装到 Application Server
我正在阅读以下链接以获得 weblogic 支持的 Jaxrs 2.0
https://docs.oracle.com/middleware/1213/wls/WLUPG/upgrade_ws.htm#WLUPG332 https://docs.oracle.com/middleware/1213/wls/RESTF/use-jersey20-ri.htm#RESTF297
我发现 javax.ws.rs-api-2.0.jar 文件重命名为 javax.ws.rs-api-2.0.war。 然后将其作为库文件部署到weblogic中。
但我仍然遇到错误,因为 weblogic 仍然使用 jaxrs 1.1 API。
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'openStackService': Invocation of init method failed;
hodError: javax.ws.rs.core.MultivaluedMap.addAll(Ljava/lang/Object;[Ljava/lang/Object;)V
这是我的所有配置:
pom.xml
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>2.10.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${org.springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${org.springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${org.springframework.version}</version>
</dependency>
<dependency>
<groupId>org.pacesys</groupId>
<artifactId>openstack4j</artifactId>
<version>2.0.9</version>
</dependency>
weblogic.xml
<?xml version="1.0" encoding="UTF-8"?>
<wls:weblogic-web-app xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.oracle.com/weblogic/weblogic-web-app
http://xmlns.oracle.com/weblogic/weblogic-web-app/1.7/weblogic-web-app.xsd">
<context-root>jaxrsrest</context-root>
<wls:library-ref>
<library-name>javax.ws.rs</library-name>
<specification-version>2.0</specification-version>
<exact-match>false</exact-match>
</wls:library-ref>
</wls:weblogic-web-app>
我已经意识到 weblogic 12.1.3 带有以下具有 jax-rs-2.0.war
的文件夹Oracle\wlserver\common\deployable-libraries.
我已将 war 文件作为库安装到 Application Server