日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

为Jersey 2.19创建共享库以与Weblogic 12.1.3一起使用

發(fā)布時間:2023/12/3 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 为Jersey 2.19创建共享库以与Weblogic 12.1.3一起使用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Weblogic服務(wù)器帶有一個共享庫,因此您可以部署JAX-RS 2.0應(yīng)用程序。 但是僅限于Jersey 2.5.1版,更改的說明并不完全清楚或直觀 。 我最近加入了Oracle的新團(tuán)隊,我要做的第一件事就是著眼于升級依賴庫。 現(xiàn)在我已經(jīng)與澤西隊進(jìn)行了交談,他們不支持這種組合。 但它可能足以使您擺脫困境,直到發(fā)布下一版Weblogic。

我將使用Maven進(jìn)行此操作,因為這意味著所有打包和下載均已為您完成。 該項目的基本結(jié)構(gòu)如下:

|-pom.xml |-src | |-main | | |-java | | |-resources | | | |-META-INF | | | | |-MANIFEST.MF | | |-webapp | | | |-WEB-INF | | | | |-web.xml | | | | |-weblogic.xml

我剛剛使用Netbeans生成了一個香草Maven項目,然后添加了我所需的Jersey依賴項,很可能可以確定地將此文件削減一些。 但這對我來說足夠好:

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.example</groupId><artifactId>JerseyLibrary</artifactId><version>2.9</version><packaging>war</packaging><name>Jersey Library</name><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><jersey.version>2.19</jersey.version></properties><dependencies><dependency><groupId>org.glassfish.jersey.containers</groupId><artifactId>jersey-container-servlet</artifactId><version>${jersey.version}</version><scope>compile</scope></dependency><dependency><groupId>org.glassfish.jersey.core</groupId><artifactId>jersey-client</artifactId><version>${jersey.version}</version></dependency><dependency><groupId>org.glassfish.jersey.media</groupId><artifactId>jersey-media-multipart</artifactId><version>${jersey.version}</version><type>jar</type></dependency><dependency><groupId>org.glassfish.jersey.media</groupId><artifactId>jersey-media-moxy</artifactId><version>${jersey.version}</version></dependency></dependencies><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.1</version><configuration><source>1.7</source><target>1.7</target></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-war-plugin</artifactId><version>2.3</version><configuration><failOnMissingWebXml>false</failOnMissingWebXml><archive><manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile></archive></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-dependency-plugin</artifactId><version>2.6</version><executions><execution><phase>validate</phase><goals><goal>copy</goal></goals><configuration><outputDirectory>${endorsed.dir}</outputDirectory><silent>true</silent><artifactItems><artifactItem><groupId>javax</groupId><artifactId>javaee-endorsed-api</artifactId><version>7.0</version><type>jar</type></artifactItem></artifactItems></configuration></execution></executions></plugin></plugins></build></project>

MANIFEST.MF文件中的下一個最重要的文件,它告訴Weblogic當(dāng)您嘗試部署.war時,這是一個庫,還包含它提供的版本:

Specification-Title: Weblogic JAX-RS 2.0 Specification-Version: 2.0 Implementation-Title: Weblogic JAX-RS 2.0 Reference Implementation Implementation-Version: 2.19 Extension-Name: jax-rs

最后,您必須包含一個weblogic.xml文件來告訴服務(wù)器您需要從此處獲取某些類,而不是服務(wù)器類加載器。 我從12.1.3附帶的2.5.1共享庫附帶的文件中獲得了這一基礎(chǔ),然后添加了幾行以考慮代碼的前進(jìn)方式。 根據(jù)您的代碼在做什么,您可能必須再添加一些。

<?xml version="1.0" encoding="UTF-8"?> <weblogic-web-appxmlns="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.4/weblogic-web-app.xsd"><container-descriptor><prefer-application-packages><!-- apis --><package-name>javax.ws.rs.*</package-name><!-- guava --><package-name>com.google.common.*</package-name><!-- jersey providers --><package-name>com.sun.jersey.*</package-name><package-name>org.glassfish.jersey.*</package-name><package-name>jersey.repackaged.*</package-name><!-- hk2 --><package-name>org.jvnet.hk2.*</package-name><package-name>org.jvnet.hk2.tiger_types.*</package-name><package-name>org.glassfish.hk2.*</package-name><package-name>javassist.*</package-name><!-- media providers --><package-name>org.eclipse.persistence.jaxb.rs.*</package-name><package-name>org.codehaus.jackson.jaxrs.*</package-name><!-- wls --><package-name>weblogic.jaxrs.api.client.*</package-name><package-name>weblogic.jaxrs.internal.api.client.*</package-name><package-name>weblogic.jaxrs.dispatch.*</package-name><package-name>weblogic.jaxrs.monitoring.util.*</package-name></prefer-application-packages></container-descriptor> </weblogic-web-app>

現(xiàn)在,所有這些都需要快速mvn install并且在目標(biāo)目錄中將有一個很好的完整共享庫,名為JerseyLibrary-2.9.war,您可以按常規(guī)方式進(jìn)行部署。 當(dāng)然,請記住要更新.war的庫條目,該庫依賴于此條目以具有正確的版本,因此它確實會選擇2.5.1版本。

翻譯自: https://www.javacodegeeks.com/2015/08/creating-a-shared-library-for-jersey-2-19-to-use-with-weblogic-12-1-3.html

總結(jié)

以上是生活随笔為你收集整理的为Jersey 2.19创建共享库以与Weblogic 12.1.3一起使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。