12

現在、jboss 4.3 から jboss 7.1.1 (Final) に移行しており、Oracle データソースを構成しようとしていますが、機能していません。以下は、Oracleデータソースをセットアップするために行ったことです

1) ojdbc6-11.jar をダウンロードし、フォルダー $JBOSS_HOME/modules/com/oracle/ojdbc6/main 内に配置します。

2) $JBOSS_HOME/modules/com/oracle/ojdbc6/main の下にファイル module.xml を作成しました。これがファイルの内容です。

<module xmlns="urn:jboss:module:1.0" name="com.oracle.ojdbc6">
  <resources>
    <resource-root path="ojdbc6.jar"/>
  </resources>
  <dependencies>
    <module name="javax.api"/>
  </dependencies>
</module>

3)standalone.xml 内に次のドライバーとデータソースを追加しました。

<drivers>
  <driiver name="oracle" module="com.oracle.ojdbc6">
    <xa-datasource-class>oracle.jdbc.OracleDriver</xa-datasource-class>
  </driver>
</drivers>

<datasource jndi-name="java:/Altis" pool-name="Altis" enabled="true" use-java-context="true">
  <connection-url>connurl</connection-url>
  <driver>oracle</driver>
  <security>
    <user-name>username</user-name>
    <password>passwd</password>
  </security>
</datasource>
</datasources>

ただし、war ファイルをデプロイすると、次のエラーが発生します。

16:54:43,281 INFO  [org.jboss.as.server] (HttpManagementService-threads - 2) JBA
S015870: Deploy of deployment "altisavante.war" was rolled back with failure mes
sage {"JBAS014771: Services with missing/unavailable dependencies" => ["jboss.na
ming.context.java.module.altisavante.altisavante.env.Altisjboss.naming.context.j
ava.AltisMissing[jboss.naming.context.java.module.altisavante.altisavante.env.Al
tisjboss.naming.context.java.Altis]"]}

何か不足していますか?

4

7 に答える 7

19

もちろん7.1で動作するJBoss 7のデータソース設定に関するリンクがあります

https://community.jboss.org/wiki/DataSourceConfigurationInAS7

この例では、MySQL の例を構成しています。
これは、Oracleドライバーに対して行ったことです

<datasource jndi-name="java:/sigap_ws_receiver" pool-name="sigap_ws_receiver" enabled="true">
    <connection-url>jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=off)(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.0.1)(PORT=1524))(CONNECT_DATA=(SERVICE_NAME=profepa)(SERVER=DEDICATED)))</connection-url>
    <driver>com.oracle</driver>
    <pool>
        <min-pool-size>3</min-pool-size>
        <max-pool-size>5</max-pool-size>
    </pool>
    <security>
        <user-name>user</user-name>
        <password>pass</password>
    </security>
    <validation>
        <exception-sorter class-name="org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter"/>
    </validation>
    <timeout>
        <blocking-timeout-millis>5000</blocking-timeout-millis>
        <idle-timeout-minutes>5</idle-timeout-minutes>
    </timeout>
</datasource>

ドライバーのセクションは次のようになります。

<drivers>
    <driver name="com.oracle" module="com.oracle">
        <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
    </driver>
</drivers>

私の module.xml は、jar ojdbc6.jar 内の $JBOSS_HOME\modules\com\oracle\main の下にあります。

<module xmlns="urn:jboss:module:1.0" name="com.oracle">
    <resources>
        <resource-root path="ojdbc6.jar"/>
    </resources>
    <dependencies>
        <module name="javax.api"/>
    </dependencies>
</module>
于 2012-12-19T18:03:28.983 に答える
0

JBoss AS のコンソールパネルに移動します。adduser.batを使用して作成したユーザーのユーザー名とパスワードを入力します。次に、すべての構成に関するページが表示されます。次に、以下の手順に従います。

1) プロフィールに移動

2) 左側のペインからデータソースを選択します

3)次に、データソースセクションの追加ボタンをクリックします

4) 名前、jndi 名などの詳細を提供します。

  • 名前:オラクルDS
  • Jndi: java:jboss/datasources/OracleDS

5) 次へボタンをクリック

6) standalone.xml を使用して、jboss にデプロイしたドライバーを選択します。

7) 次へボタンをクリック

8) 詳細を入力します...

  • 接続 URL: jdbc:oracle:thin:@[ホスト]:1521:[sid]
  • ユーザー名: [ユーザー]
  • パスワード: [パス]
  • セキュリティ ドメイン: 空白のままにします

9) 完了をクリックします。

「データソースが正常に追加されました」というメッセージが表示されます。

それでおしまい....!!!

于 2016-05-24T09:14:09.913 に答える
0

ドライバーでドライバークラスを次のように使用してみてください <driver-class>oracle.jdbc.OracleDriver</driver-class>

于 2012-08-23T21:57:57.840 に答える
0

Jean-François Savard の手動ソリューションに加えて、jboss-deployment-structure.xml から jar を除外しただけで、なんとか起動して実行することができました。これは他の人を助けるかもしれないので、ここにログインするだけです.私のjboss-deployment-structure.xmlの例は以下です

enter code here

<!--exclude-subsystems>
<subsystem name="jpa" />
</exclude-subsystems-->
<!--http://mca.intranet.barclays.co.uk/confluence/display/MCA/Changes+required+in+MCA+for+aPaaS-->

<exclusions>
    <module name="org.codehaus.jackson.jackson-core-asl" />
    <module name="org.codehaus.jackson.jackson-mapper-asl" />
    <module name="org.apache.log4j" />
    <module name="javax.persistence.api" />
    <module name="org.hibernate" />

</exclusions>
    <dependencies>

        <module name="javax.activation.api" export="true"/>
        <module name="javax.annotation.api" export="true"/>
        <module name="javax.ejb.api" export="true"/>
        <module name="javax.el.api" export="true"/>
        <module name="javax.enterprise.api" export="true"/>
        <module name="javax.enterprise.deploy.api" export="true"/>
        <module name="javax.inject.api" export="true"/>
        <module name="javax.interceptor.api" export="true"/>
        <module name="javax.jms.api" export="true"/>
        <module name="javax.jws.api" export="true"/>
        <module name="javax.mail.api" export="true"/>
        <module name="javax.management.j2ee.api" export="true"/>

        <module name="javax.resource.api" export="true"/>
        <module name="javax.rmi.api" export="true"/>
        <module name="javax.security.auth.message.api" export="true"/>
        <module name="javax.security.jacc.api" export="true"/>
        <module name="javax.servlet.api" export="true"/>
        <module name="javax.servlet.jsp.api" export="true"/>
        <module name="javax.transaction.api" export="true"/>
        <module name="javax.validation.api" export="true"/>
        <module name="javax.ws.rs.api" export="true"  services="export"/>
        <module name="javax.xml.bind.api" export="true"/>
        <module name="javax.xml.registry.api" export="true"/>
        <module name="javax.xml.soap.api" export="true"/>
        <module name="javax.xml.ws.api" export="true"/>
        <module name="org.jboss.as.jmx" />
        <!--module name="ibm.mq" /-->
        <module name="javax.api" export="true"/>

    </dependencies>
</deployment>

于 2016-05-17T07:57:06.903 に答える
0

$JBOSS_HOME\modules\system\layers\base\com\oracle\ojdbc6\main が存在し、ojdbcXX.jar と module.xml があることを確認します。module.xml の Module name="com.oracle.ojdbc" は module="com と一致する必要があります。 .oracle.ojdbc" (standalone.xml 内)

例:module.xml -->

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="**com.oracle.ojdbc6**">
    <resources>
        <resource-root path="ojdbc6.jar"/>
        <!-- Insert resources here -->
    </resources>
    <dependencies>
        <module name="javax.api"/>
        <module name="javax.transaction.api"/>
        <module name="javax.servlet.api" optional="true"/>
    </dependencies>
</module>
standalone.xml -->

<datasource jndi-name="java:/abc" pool-name="abc" enabled="true" use-java-context="true">
                    <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url>
                    <driver>**oracle**</driver>
                    <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
                    <security>
                        <user-name>a_user</user-name>
                        <password>pwdXXX</password>
                    </security>
                </datasource>

                <drivers>
                    <driver name="**oracle**" module="**com.oracle.ojdbc6**">
                    <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
                    <xa-datasource-class>oracle.jdbc.driver.OracleDriver</xa-datasource-class>
                    </driver>
                    </driver>
于 2014-04-16T19:28:22.863 に答える