(Quick Reference)

3.3.2 Orígenes de datos JNDI - Reference Documentation

Authors: Graeme Rocher, Peter Ledbrook, Marc Palmer, Jeff Brown, Luke Daley, Burt Beckwith

Version: null

3.3.2 Orígenes de datos JNDI

Referring to a JNDI DataSource

Most Java EE containers supply DataSource instances via Java Naming and Directory Interface (JNDI). Grails supports the definition of JNDI data sources as follows:

Utilizando un origen de datos JNDI

La mayoría de los contenedores J2EE proporcionan instancias de DataSource a través de Java Naming and Directory Interface (JNDI). Grails es compatible con la definición de orígenes de datos JNDI como sigue:

dataSource {
    jndiName = "java:comp/env/myDataSource"
}

The format on the JNDI name may vary from container to container, but the way you define the DataSource in Grails remains the same.

Configuring a Development time JNDI resource

The way in which you configure JNDI data sources at development time is plugin dependent. Using the Tomcat plugin you can define JNDI resources using the grails.naming.entries setting in grails-app/conf/Config.groovy:

El formato del nombre JNDI puede variar de un contenedor a otro, pero la manera de definir el DataSource en Grails sigue siendo la misma.

Configuración de un recurso JNDI de tiempo de desarrollo

La forma en que puede configurar orígenes de datos JNDI al tiempo de desarrollo depende del plugin utilizado. Utilizando el plugin de Tomcat plugin puede definir recursos JNDI mediante grails.naming.entries en grails-app/conf/Config.groovy:

grails.naming.entries = [
    "bean/MyBeanFactory": [
        auth: "Container",
        type: "com.mycompany.MyBean",
        factory: "org.apache.naming.factory.BeanFactory",
        bar: "23"
    ],
    "jdbc/EmployeeDB": [
        type: "javax.sql.DataSource", //required
        auth: "Container", // optional
        description: "Data source for Foo", //optional
        driverClassName: "org.h2.Driver",
        url: "jdbc:h2:mem:database",
        username: "dbusername",
        password: "dbpassword",
        maxActive: "8",
        maxIdle: "4"
    ],
    "mail/session": [
        type: "javax.mail.Session,
        auth: "Container",
        "mail.smtp.host": "localhost"
    ]
]