私のプロジェクトでスガッガーを統合する際に問題に直面しています。私は既存のジャージーAPIにswagger(described)を統合し、weblogic serverにデプロイしました。別のモジュールがあるので、すでにweblogicで利用できるjarファイルはほとんどなく、そのために私は競合の問題に直面しています。以下は、私が行ったことの詳細な説明です。Swagger Core Jersey 2.Xプロジェクトの設定1.5
のpom.xml
<dependency> <groupId>io.swagger</groupId> <artifactId>swagger-jersey2-jaxrs</artifactId> <version>1.5.0</version> </dependency>
DemoApplication.java
public class DemoApplication extends ResourceConfig {
public DemoApplication() {
super(io.swagger.jaxrs.listing.ApiListingResource.class,io.swagger.jaxrs.listing.SwaggerSerializers.class);
configSwagger();
}
private void configSwagger() {
BeanConfig beanConfig = new BeanConfig();
beanConfig.setVersion("1.0.0");
beanConfig.setBasePath("/demo/rest/v1");
beanConfig.setResourcePackage(DemoApplication.class.getPackage().getName());
beanConfig.setScan(true);
}
}
そして、私のサンプル・リソース・クラスIは、WebLogic上のアプリを展開しながら
@Path("/ping")
@Api(tags = {"/ping"})
public class DemoServiceV1 {
//some code
}
のようなものですそれは与えます 例外は
java.lang.NoSuchMethodError: com.fasterxml.jackson.databind.AnnotationIntrospector.findPropertyIndex(Lcom/fasterxml/jackson/databind/introspect/Annotated;)Ljava/lang/Integer
ように私はそれを把握しようとした2つの異なるバージョンのjarファイルが
com.fasterxml.jackson.core.jackson-databind_2.3.2.jar
と
com.fasterxml.jackson.core.jackson-databind_2.4.3.jar
用のWebLogicのモジュールであることを発見し、WebLogicが
を選びますcom.fasterxml.jackson.core.jackson-databind_2.3.2.jar
によってdef findPropertyIndexメソッドを持たないaults。 上記のjarファイル(APP-INF/libのcom.fasterxml.jackson.core.jackson-databind_2.3.2.jar)を保持しても、jarファイルはロードされませんでした。
上記の問題のいずれかを助けることができますか?スワッガーの統合は全く新しいものです。
CATは、単一のWARファイル(WL_HOME/server/lib/wls-cat.war)として配布されるスタンドアロンWebアプリケーションです。開発モードでのみオンデマンドアプリケーションとして展開され、最初のアクセス時に展開されます。サーバーが運用モードで実行されている場合、サーバーは自動的にはデプロイされませんが、他のWebアプリケーションと同様に手動でデプロイできます。 –