최신 Weblogic 서버 버전 12.2.1.2에서 매우 이상한 동작이 관찰되었습니다. 자바 서블릿 애플리케이션에 eclipselink 종속성이 추가되면 Weblogic 서버가/resources/* path 아래에서 Jax-RS Jersey REST 서비스를 자동으로 트리거합니다.eclipselink 이슈를 추가 할 때 Weblogic 12.2.1에 자동 Jax-RS 등록
의심의 여지를 없애기 위해 아주 간단한 helloworld war 파일을 만들었습니다. 샘플 war 파일이 페이지에서 지침에 따라 만들 수 있습니다 (http://geekabyte.blogspot.com/2015/07/how-to-create-war-files-with-intellij.html)
당신은 위의 명령, 기본적으로 당신이 할 수있는 유일한 의존성이 유일한 클래스로
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
이고 helloworld를 따라하는 경우 응용 프로그램. 모든 서버에 배포 할 수 있으며 정상적으로 실행됩니다.
이제 maven pom 파일에 다른 종속성을 추가합니다. 당신이 war 파일을 배포 할 때
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>eclipselink</artifactId>
<version>2.5.2</version>
</dependency>
는, 서버는 다음과 같은 기록합니다 :
<May 23, 2017, 2:42:47,343 PM MST> <Warning> <JAXRSIntegration> <BEA-2192511>
<The list of resource packages: org.eclipse.persistence.jpa.rs.exceptions;org.eclipse.persistence.jpa.rs.resources;org.eclipse.persistence.jpa.rs.resources.unversioned>
을 그리고 당신은 당신의 웹 로직 관리 콘솔 에서 다음을 볼 수 아래 볼 수는 EclipseLink가 이슈입니다
규칙에 따라 모든 정적 파일을 제공하는 대신/resources/path에 javascript 및 css 파일을 저장하면 서버가 이러한 요청을 처리하려고 시도합니다 JAX-RS 서비스를 통해 404가 반환되지 않습니다.
다른 서버, 다른 버전의 Weblogic 서버, eclipselink 대신 Toplink, 다른 버전의 eclipselink 및 여기에 간단히 설명하지는 않을 다른 여러 가지 사항을 시도했습니다. 분명히 우리는 최신 버전의 Weblogic으로 마이그레이션해야하는 이전 버전의 Weblogic에서 실행중인 작업 응용 프로그램을 보유하고 있습니다. 이 한 가지 종속성에 문제를 지적하는 데는 수 일이 걸렸습니다. 어쨌든이 문제는 모든 버전의 eclipselink가 종속 된 Weblogic 12.2. *에만 존재합니다.
내 모든 분명한 질문은 다음과 같습니다. 왜 이런 일이 발생합니까? 누구도 같은 문제를 경험 했습니까? 당신의 해결책은 무엇입니까?
이상하게 보입니다. 그것은 당신의 문제에 대한 해결책은 아니지만, EclipseLink는 weblogic에서 JPA를 구현하므로, '제공된'범위에서 eclipseLink 종속성을 설정할 수 있습니다. – Rouliboy