Yes you can create a DataSource that is available on first boot.

To make this work you need to add the pax-jdbc features that are needed for your DataSource to the boot features. In your example that should be: pax-jdbc-config pax-jdbc-pool-dbcp2 pax-jdbc-h2 transaction
Then you also need to put a DataSource config in etc.

If you then start karaf the DataSource service should come up.

Christian

On 05.04.2017 11:43, Cristiano Costantini wrote:
hello,

Is it possible to specify at configuration a JDBC datasource to be created when Karaf boots the first time?

For information, I'm learning using Karaf JDBC (https://karaf.apache.org/manual/latest/#_datasources_jdbc) and then Karaf JPA (https://karaf.apache.org/manual/latest/#_persistence_jpa) to replace our current implementation which is based on Spring (spring-orm and spring-jdbc)

I'm following the examples of Christian from https://github.com/apache/aries/tree/trunk/jpa/examples/

where I've found the example command
jdbc:ds-create -dn H2-pool-xa -url jdbc:h2:mem:tasklist tasklist

that creates a data source and publish to OSGi registry its service:
karaf@root>jdbc:ds-info tasklist
Property       | Value
-------------------------------------
driver.version | 1.3.172 (2013-05-25)
db.version     | 1.3.172 (2013-05-25)
db.product     | H2
url            | jdbc:h2:mem:tasklist
driver.name <http://driver.name>    | H2 JDBC Driver
username       |

karaf@root>service:list javax.sql.DataSource
[javax.sql.DataSource]
----------------------
 dataSourceName = tasklist
osgi.jdbc.driver.name <http://osgi.jdbc.driver.name> = H2-pool-xa
osgi.jndi.service.name <http://osgi.jndi.service.name> = tasklist
 service.bundleid = 222
 service.factoryPid = org.ops4j.datasource
service.id <http://service.id> = 403
 service.pid = org.ops4j.datasource.ac08f704-67e1-40c8-8855-9e3e262f8a9e
 service.scope = singleton
 url = jdbc:h2:mem:tasklist
Provided by :
 OPS4J Pax JDBC Config (222)
Used by:
 Apache Karaf :: JDBC :: Core (226)


Thank you !
Cristiano




--
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com

Reply via email to