JBoss EAP 6의 앱에서 Oracle 10g에 액세스하는 동안 오류가 발생했습니다.

Josep A. Perales

Oracle 10g DB에 액세스해야하며 JBoss EAP 6.1.0 서버에서 실행되는 간단한 응용 프로그램을 개발 중입니다. Oracle 드라이버를 설치하기 위해 공식 가이드제공된 단계를 따랐습니다 .

현재 다음과 같은 구성 파일이 있습니다. 내용 jboss-eap-6.1\modules\com\oracle\db\main과 함께 ojdbc6.jar폴더 추가했습니다 module.xml.

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="com.oracle.db">
  <resources>
    <resource-root path="ojdbc6.jar"/>
  </resources>
  <dependencies>
    <module name="javax.api"/>
    <module name="javax.transaction.api"/>
  </dependencies>
</module>

에서 jboss-eap-6.1\standalone\configuration\standalone.xml나는 다음 행 추가 datasources노드를 :

        <datasource jndi-name="java:/jdbc/OracleDS" pool-name="OracleDS" enabled="true" use-java-context="true">
            <connection-url>jdbc:oracle:thin:@10.0.6.0:1521:ORC1;DB_CLOSE_DELAY=-1</connection-url>
            <driver>oracle</driver>
            <security>
                <user-name>a</user-name>
                <password>a</password>
            </security>
        </datasource>
        <drivers>
            <driver name="oracle" module="com.oracle.db">
                <datasource-class>oracle.jdbc.driver.OracleDriver</datasource-class>
            </driver>
        </drivers>

마지막으로 Java 코드에서 다음과의 연결을 만듭니다.

InitialContext initContext = new InitialContext();
DataSource ds = (DataSource)initContext.lookup("java:/jdbc/OracleDS");
conexion = ds.getConnection();

이것을 실행하는 동안 줄에 오류가 발생합니다 conexion = ds.getConnection().

javax.resource.ResourceException: IJ000453: Unable to get managed connection for java:/jdbc/OracleDS

나는 성공하지 못한 인터넷에서 가능한 해결책을 찾고있었습니다. 어떤 생각?

Josep A. Perales

마침내 나는 그것을 작동시킬 수 있었다! 내가 한 것:

  • standalone.xml에서이 두 줄을 변경했습니다.

-

<datasource jndi-name="java:/jdbc/OracleDS" pool-name="OracleDS" enabled="true" use-java-context="true">
<connection-url>jdbc:oracle:thin:@10.0.6.0:1521:ORC1;DB_CLOSE_DELAY=-1</connection-url>

...에 대한

<datasource jndi-name="**java:jboss/OracleDS**" pool-name="OracleDS" enabled="true" use-java-context="true">
<connection-url>jdbc:oracle:thin:**@//10.0.0.110:1521/orc11.palluc.com**</connection-url>

그래서 내 jndi-name과 url 연결이 잘못되었습니다.

  • Java 코드에서 변경했습니다 (이전 변경 사항을 고려).

    DataSource ds = (DataSource) initContext.lookup ( "java : / jdbc / OracleDS");

...에 대한

DataSource ds = (DataSource)initContext.lookup("java:jboss/OracleDS");

그 후, 작동하는 것처럼 보였지만 ORA-01882 : timezone region not found에 설명 된 Oracle 오류가 계속 발생 합니다. 나는 그것을 해결하기 위해 코멘트 # 6을 따랐고 (이 포스트에서 설명한 것처럼 ojdbc6.jar 라이브러리를 직접 수정하는 것보다 '더 예쁜'솔루션이있는 것 같다), 이제 예상대로 작동합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관