문제

JBoss 서버에서 Oracle ADF 비즈니스 구성 요소를 사용하여 응용 프로그램을 실행하려고합니다. 배포를 할 예정이지만 페이지를로드하려고하면 예외가 아래에 있습니다.

 java.lang.ClassCastException: org.jboss.resource.adapter.jdbc.jdk6.WrappedConnectionJDK6 cannot be cast to oracle.jdbc.OracleConnection

이것을 해결하는 방법이 있습니까? 이 랩핑 된 연결을 사용하지 않도록 JBoss를 구성하거나 ADF 프레임 워크를 구성하여 랩을 풀어 주시겠습니까?

도움이 되었습니까?

해결책

이것은 시간이 오래 걸리지 만 내 자신의 질문에 대해 후속 조치를 취할 것입니다.

가이드가 있습니다 Oracle Metalink (로그인 필요) Wich는 Jboss에 ADF/BC를 배포하는 방법을 설명합니다. 나는 이것이 나를 위해 이것을 해결 한 것이라고 확신한다 (그것은 얼마 전입니다 ..)

다음은 그것의 사본입니다.


추상적인
이 노트의 목적은 ADF BC 응용 프로그램 모듈을 만드는 방법과 JBoss 응용 프로그램 서버에 배포하는 방법을 보여주는 것입니다. 또한 애플리케이션 모듈이 올바르게 작동하기 위해 JBoss 측에서 수행 해야하는 구성을 보여줍니다.

범위 및 응용 프로그램
이 노트는 ADF BC 모듈을 JBOSS 애플리케이션 서버에 배포하려는 사람을위한 것입니다.

ADF BC 모듈을 JBOSS 애플리케이션 서버에 배포하는 방법
ADF BC 모듈을 JBOSS 응용 프로그램 서버에 배포하는 데 필요한 단계는 다음과 같습니다.

  1. JBoss 서버에서 ADF 런타임 라이브러리를 설정하십시오
  2. JBoss 서버에서 데이터 소스 설정
  3. ADF BC 모듈을 구성하십시오
  4. ADF BC 모듈을 배포하십시오

이 각 단계를 더 자세히 살펴 보겠습니다. 여기에 다운로드 할 수있는 완전한 예도 있습니다. JBoss 서버에서 ADF 런타임 라이브러리를 설정하십시오

  1. 응용 프로그램 서버를 종료합니다.
  2. ADF 런타임 설치 프로그램 마법사를 호출하십시오. 도구 선택 | ADF 런타임 설치 프로그램을 선택하고 하위 메뉴에서 서버 유형을 선택하십시오.
  3. 마법사의 페이지를 진행하십시오. 마법사의 모든 페이지에 대한 자세한 지침은 도움말을 클릭하십시오.
  4. 위치 페이지에서 라이브러리를 설치할 서버의 홈 (또는 루트) 디렉토리를 선택하십시오.
  5. 설치 옵션 페이지에서 수행하려는 작업을 선택할 수 있습니다. * JDeveloper 설치에서 ADF 런타임 라이브러리를 설치하십시오. * 이전에 설치된 ADF 런타임 라이브러리를 제거하십시오. * ADF 런타임 라이브러리의 보관 된 버전을 활성 버전으로 복원하십시오.
  6. 요약 페이지에서 배포를 위해 기존 UIX JSP 프로젝트를 준비하려면 마이그레이션을 클릭하십시오.
  7. 요약 페이지에서 설치의 세부 사항을 확인하고 완료를 클릭하십시오.
  8. 응용 프로그램 서버를 다시 시작하십시오.

JBoss 서버에서 데이터 소스 설정
JBoss 서버에서 Oracle Data Source를 만들려면 다음 단계를 수행해야합니다.

  1. oracle-ds.xml이라는 파일을 만듭니다. 이 파일에는 데이터 소스 구성이 포함됩니다. 아래는 그러한 파일이 어떻게 보이는지에 대한 예입니다.

    <?xml version="1.0" encoding="UTF-8"?>
      <datasources>
        <local-tx-datasource>
        <jndi-name>OracleDS</jndi-name>
        <use-java-context>false</use-java-context>
        <connection-url>jdbc:oracle:thin:@mydbhost.com:1521:mysid</connection-url>
        <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
        <user-name>hr</user-name>
        <password>******</password>
        <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
      </local-tx-datasource>
    </datasources>
    
  2. 파일을 /배포에 복사하십시오. JBoss 서버에 설치됩니다.

ADF BC 모듈을 구성하십시오
JBOSS 서버에서 실행 되려면 ADF BC 모듈에서 수행 해야하는 몇 단계가 있습니다.

JBoss 응용 프로그램 서버에서 사용될 ADF BC 모듈을 만들 때 SQL 맛을 SQL92로 설정하고 유형 맵을 Java로 설정해야합니다. 이 변경 사항은 jboss를 응용 프로그램 서버로 사용할 때 필요합니다.

**** ADF 비즈니스 구성 요소 프로젝트를 EJB 세션 Bean으로 패키지. ****

  1. 응용 프로그램 모듈을 마우스 오른쪽 버튼으로 클릭하고 비즈니스 구성 요소 배포를 선택하십시오.
  2. 프로파일 대화 상자에서 EJB 세션 Bean을 선택하십시오.
  3. EJB 세션 Beans 대화 상자에서 배포를 선택하십시오 : 기타 EJB 컨테이너
  4. AppModules 대화 상자에서 아래 그림 1과 같이 응용 프로그램 모듈을 구성하십시오.

그림 1. 응용 프로그램 모듈의 구성
alt text

완료되면 프로젝트는 아래 그림 2에 표시된 프로젝트와 유사하게 보입니다.

그림 2. JDeveloper 프로젝트
alt text

마지막 단계는 이전 단계에서 만든 데이터 소스를 사용하도록 응용 프로그램 모듈을 구성하는 것입니다. 이것은 다음과 같이 수행됩니다.

  1. 응용 프로그램 모듈을 편집하십시오.
  2. 네비게이터에서 비즈니스 구성 요소 응용 프로그램 모듈 아이콘을 마우스 오른쪽 버튼으로 클릭하고 구성을 선택하십시오.
  3. 적절한 구성을 선택하십시오.
  4. 이 구성을 선택하고 편집을 클릭하십시오.
  5. 연결 유형 목록에서 JDBC DataSource를 선택하십시오.
  6. 데이터 소스 이름을 입력하십시오. 예를 들어 : java :/oracleds.

ADF BC 모듈을 배포하십시오
JBoss 서버가 로컬 로컬 또는 로컬 컴퓨터에 매핑 된 경우 jdeveloper 내부에서 직접 배포 할 수 있습니다. JBoss 서버가 원격이고 로컬 컴퓨터에 매핑되지 않았거나 나중에이 모듈을 사용하는 JSP 응용 프로그램이있는 경우 JDeveloper 내에서 직접 배포 할 수 없습니다. 두 방법 모두 아래에 설명되어 있습니다.

JDeveloper 내에서 모듈을 배포합니다
1. 대상 응용 프로그램 서버에 대한 연결을 만듭니다. 2. EJB의 JBoss- 특이 적 구성 옵션을 지원하려면 JBoss.xml 배포 디스크립터 파일을 추가하십시오. 이 파일에 대한 자세한 내용은 참조하십시오 http://www.jboss.org. 3. 프로젝트가 비즈니스 구성 요소 UIX JSP 프로젝트 인 경우 필요한 CABO 리소스를 추가하십시오. 4. 네비게이터에서 배포 프로파일을 선택하고 마우스 오른쪽 버튼을 클릭하고 배포를 선택하십시오. <Application Server Connection> 응용 프로그램을 아카이브 파일로 패키지하고 선택한 응용 프로그램 서버 연결을 통해 배포합니다.

JDeveloper 외부 모듈을 배포합니다
JBoss 서버가 원격이고 로컬 컴퓨터에 매핑되지 않았거나 나중에이 모듈을 사용하는 JSP 응용 프로그램이있는 경우 다음과 같이 수행해야합니다.

  1. 문맥 메뉴에서 EAR 파일로 배포하여 EAR 파일로 배포하십시오. JBOSS는 Java : Comp/ ENV/ JNDI 네임 스페이스에 따라 전쟁 파일에 대한 EJB 참조를 추가하지 않기 때문에이 응용 프로그램은 전쟁 파일이 아닌 EAR 파일에 배치해야합니다.
  2. 이 파일을 /배포 디렉토리에 수동으로 복사하십시오.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top