16 Ekim 2021 Cumartesi

Wildfly Uygulamaya Mahsus DataSource Ekleme

Giriş
Uygulamadan bir DataSource'a erişmek için 3 tane yöntem var.
1. Uygulama içinde tanımlanır
2. Wildfly Üzerinde Modul Olarak Tanımlanır Ancak Wildfly Ayarlarına Driver Eklenmez
3. Wildfly Üzerinde Modul Olarak Tanımlanır ve Wildfly Ayarlarına Driver + DataSource eklenir. Uygulama JNDI üzerinden erişir.

Wildfly JNDI DataSource Ekleme yazısına bakabilirsiniz.

1. Uygulama içinde tanımlanır
Bu belki de en kolay yöntem. Böylece diğer hiç bir uygulamayı etkilememiş oluruz
Örnek
Şöyle yaparız
app-deployment.war
 |_WEB-INF
  |_lib
   |_postgresql-42.2.5.jar (example version)
2. Wildfly Üzerinde Modul Olarak Tanımlanır Ancak Wildfly Ayarlarına Driver Eklenmez

Örnek
Burada önce module dizini yaratılır. Şöyle yaparız
modules
|_org
 |_postgresql
  |_main
   |_postgresql-42.2.5.jar
   |_module.xml
Daha sonra module.xml içinde şöyle yaparız
<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.7" name="org.postgresql">

    <resources>
        <resource-root path="postgresql-42.2.5.jar.jar"/>
    </resources>

    <dependencies>
        <module name=""/>
      ...
    </dependencies>

</module>
Bu module' ü kendi uygulamamızda kullanmak için şöyle yaparız
<?xml version='1.0' encoding='UTF-8'?>
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
    <deployment>
         <dependencies>
            ...
             <module name="org.postgresql"/>
            ...
        </dependencies>

    </deployment>         
    
</jboss-deployment-structure>
Örnek - Oracle 8
module.xml içinde şöyle yaparız
<?xml version="1.0" encoding="UTF-8"?>

<module xmlns="urn:jboss:module:1.5" name="com.oracle">

    <resources>
        <resource-root path="ojdbc8.jar"/>
        <resource-root path="orai18n.jar"/>
        <resource-root path="ucp.jar"/>
    </resources>
    <dependencies>
        <module name="javax.api"/>
        <module name="javax.transaction.api"/>
    </dependencies>
</module>
Örnek - Oracle 7
module.xml içinde şöyle yaparız
<?xml version="1.0" encoding="UTF-8"?>
    
<module name="com.oracle" xmlns="urn:jboss:module:1.1">
    <resources>
        <resource-root path="ojdbc7.jar"/>
    </resources>
    <dependencies>
        <module name="javax.api"/>
        <module name="javax.transaction.api"/>
    </dependencies>
</module>

Hiç yorum yok:

Yorum Gönder