ops4j / org.ops4j.pax.jdbc Goto Github PK
View Code? Open in Web Editor NEWAn OSGi JDBC Service Implementation, including adapters for various database drivers
License: Apache License 2.0
An OSGi JDBC Service Implementation, including adapters for various database drivers
License: Apache License 2.0
Benjamin Graf created PAXJDBC-49
If you configure a DataSource via pax-jdbc-config and pax-jdbc-pool-aries the exported DataSource service gets wrapped again by aries jdbc itself. IMHO it because pax-jdbc-config does not export aries.managed flag to show aries jdbc that it is already managed.
Affects: 0.4.0
Fixed in: 1.0.1
Attachments:
Votes: 1, Watches: 6
Harald Wellmann created PAXJDBC-2
Create a PostgreSQL driver adapter which imports org.postgresql.*
from an osgified PostgreSQL JDBC driver and works with its native DataSource
implementation classes to register a DataSourceFactory
with full support for vanilla, pooled and XA data sources.
Fixed in: 0.1.0
Votes: 0, Watches: 0
Ioan Eugen Stan created PAXJDBC-33
Needed for PAXJDBC-32
Affects: 0.3.0
Fixed in: 0.4.0
Votes: 0, Watches: 1
Referenced issues
blocks:
Nick Smith created PAXJDBC-39
I have been playing with 0.4.0-SNAPSHOT and have a query / proposal :
Would it be an idea for pax-jdbc-config could use DataSourceFactory#JDBC_DATASOURCE_NAME to create filter for the publishing the datasource? Currently OSGI_JDBC_DRIVER_NAME and/or OSGI_JDBC_DRIVER_CLASS are used to create the LDAP filter for the published service but these values are implementation specific and it would be cleaner to be able to reference the datasource by such an arbitrary value.
Thanks for the great work!
Affects: 0.4.0
Fixed in: 0.4.0
Votes: 0, Watches: 2
Harald Wellmann created PAXJDBC-1
META-INF/services/java.sql.Driver
resource.DataSourceFactory
which delegates DataSource.getConnection()
to the driver instance.With this approach, any JDBC 4 driver packaged as an OSGi bundle can provide a DataSourceFactory
with limited functionality, without having to implement a specific adapter for the OSGi JDBC service.
This also works for drivers distributed as plain old JARs when they are wrapped using the Pax URL wrap:
protocol handler.
Fixed in: 0.1.0
Votes: 0, Watches: 0
Benjamin Graf created PAXJDBC-36
Dependency should be added:
<bundle dependency="true">mvn:org.ops4j.base/ops4j-base-lang/$
{ops4j.base.version}
</bundle>
Affects: 0.4.0
Fixed in: 0.4.0
Votes: 0, Watches: 1
Harald Wellmann created PAXJDBC-27
New adapter for MariaDB, based on org.jumpmind.symmetric.jdbc:mariadb-java-client.
The official org.mariadb.jdbc:mariadb-java-client is not on Maven Central.
Affects: 0.3.0
Fixed in: 0.4.0
Votes: 0, Watches: 1
Christian Schneider created PAXJDBC-30
Currently the pax-jdbc-config module just creates a DataSource from the DataSourceFactory. Some of these datasources will not have pooling capabilities.
So we should add an optional pooling wrapper using one of the pooling libs. So people can get production ready pooled DataSources directly from config.
Affects: 0.3.0
Fixed in: 0.4.0
Votes: 0, Watches: 2
Harald Wellmann created PAXJDBC-9
Use SafeServiceLoader
from Base 1.4.0 instead of directly parsing META-INF/services.
Affects: 0.2.0
Fixed in: 0.3.0
Votes: 0, Watches: 0
Christian Schneider created PAXJDBC-29
What I have in mind is to create a module that watches for configs in config admin that match a certain filter like org.ops4j.datasource..cfg or even datasource..cfg.
Each such config contains properties defined in DataSourceFactory like url, user, password, ...
The DataSourceFactory is chosen by a driver property.
So such a config (datasource.test.cfg) could look like this for derby:
driver=org.apache.derby.jdbc.EmbeddedDriver
databaseName=memory:TEST;create=true
So the new module would do the following:
pick up the config
find the matching DataSourceFactory (e.g. provided by pax jdbc)
create a new DataSource with the rest of the properties
publish the DataSource as an OSGi service and with a jndi name suitable for aries jndi
So the user would install:
derby
pax jdbc derby
the new module
config in config admin
The result would be a data source that is ready to use for aries jdbc or any other use case.
This solution would work much better for production deployments than the current blueprint solution.
Affects: 0.3.0
Fixed in: 0.4.0
Votes: 0, Watches: 1
Harald Wellmann created PAXJDBC-48
Official driver is now on Maven Central, so we can replace the unofficial one.
Fixed in: 0.4.0
Votes: 0, Watches: 1
Harald Wellmann created PAXJDBC-4
Integration tests for non-embedded databases like PostgreSQL or MySQL require a running server which may not be available (e.g. on the OPS4J CI server).
Add JUnit assumptions to ignore server-dependent tests when no server is available.
Fixed in: 0.1.0
Votes: 0, Watches: 0
Michael Taeschner created PAXJDBC-50
Per default GenericObjectPool sets the JMX object name to "pool" It would be rather helpful for tracking multiple managed Datasource pools if the pool name matched the datasource config in some way.
Please initialize the PoolableConnectionFactory with a ObjectName reflecting the datasource config instead of "null"
source: org.ops4j.pax.jdbc.pool.dbcp2.impl.ds.CloseablePoolingDataSource
PoolableConnectionFactory pcf = new PoolableConnectionFactory(cf, null);
Affects: 0.4.0
Fixed in: 0.6.0
Attachments:
Votes: 0, Watches: 2
Eugene Pechenezhsky created PAXJDBC-28
The manifest lists the following package import org.osgi.service.jdbc;version="[1.0,2)", however only versions 4.2.0 and 5.0.0 exist officially.
Affects: 0.3.0
Votes: 0, Watches: 1
Harald Wellmann created PAXJDBC-45
Align code formatting by applying Eclipse formatter from Pax Exam to all modules.
Fixed in: 0.4.0
Votes: 0, Watches: 1
Benjamin Graf created PAXJDBC-38
New oracle adapter based on reflection
Fixed in: 0.4.0
Votes: 0, Watches: 2
Harald Wellmann created PAXJDBC-5
Do not hardcode server properties in integration tests.
Extract them to a jdbc.properties
file so that users can run integration tests in their own environment.
Fixed in: 0.1.0
Votes: 0, Watches: 0
Harald Wellmann created PAXJDBC-8
Create an H2 driver adapter which imports org.h2.* from an osgified H2 JDBC driver and works with its native DataSource implementation classes to register a DataSourceFactory with full support for vanilla, pooled and XA data sources.
Fixed in: 0.2.0
Votes: 0, Watches: 0
Harald Wellmann created PAXJDBC-26
Since the official PostgreSQL driver is not an OSGi bundle, we currently use the Pax URL wrap: protocol to wrap it on the fly.
There is a third-party bundled artifact on Maven Central which should be used instead:
<dependency>
<groupId>org.ancoron.postgresql</groupId>
<artifactId>org.postgresql.osgi</artifactId>
<version>9.1.901.jdbc4.1-rc9</version>
</dependency>
Affects: 0.2.0
Fixed in: 0.3.0
Votes: 0, Watches: 1
Ioan Eugen Stan created PAXJDBC-31
We should provide Karaf features to allo people to use pax-jdbc very easily out of the box.
Affects: 0.3.0
Fixed in: 0.4.0
Votes: 0, Watches: 1
Harald Wellmann created PAXJDBC-14
Use osgified MySQL driver from Pax Tipi.
Update: Recent releases of mysql:mysql-connector-java come with bundle manifest headers, so we can use an official release instead of a repackaged Pax Tipi version.
Affects: 0.2.0, 0.3.0
Fixed in: 0.3.0
Votes: 0, Watches: 1
Referenced issues
depends on:
Tuomas Kiviaho created PAXJDBC-15
Currently MySqlDataSourceFactory will not accept URL as an option but insist on getting configuration in separate entries and parameters do not have any means of getting though.
Support for passing though the URL (http://dev.mysql.com/doc/refman/5.0/en/connector-j-reference-configuration-properties.html) unchanged would resolve this issue nice and clean without having to delve into the depths of URL syntax parsing (which wouldn't seem to be playing nicely with java.net.URI if I'im correct). This would create a slight ambiguity to parameterization but that is the case with plain-old driver configuration as well so I'd be trusting the user to know how to confuig the driver properly (and the driver to give proper feedback as well). This is after all just an adapter.
Affects: 0.3.0
Fixed in: 0.3.0
Votes: 0, Watches: 1
Harald Wellmann created PAXJDBC-6
Create a MySQL driver adapter which imports com.mysql.jdbc.* from an osgified MySQL JDBC driver and works with its native DataSource implementation classes to register a DataSourceFactory with full support for vanilla, pooled and XA data sources.
Fixed in: 0.2.0
Votes: 0, Watches: 0
Harald Wellmann created PAXJDBC-10
We require OPS4J Base 1.4.0 for factoring out META-INF/services operations, so we need to use a Pax Exam version that provisions the required version of OPS4J Base.
Affects: 0.2.0
Fixed in: 0.3.0
Votes: 0, Watches: 0
Harald Wellmann created PAXJDBC-3
Create a Derby driver adapter which imports the required packages from the Apache Derby JDBC driver (distributed as OSGI bundle) and works with its native embedded DataSource
implementation classes to register a DataSourceFactory
with full support for vanilla, pooled and XA data sources.
Fixed in: 0.1.0
Votes: 0, Watches: 0
Harald Wellmann created PAXJDBC-18
Users should upgrade m2e and store lifecycle mappings in workspace.
Affects: 0.2.0
Fixed in: 0.3.0
Votes: 0, Watches: 1
Ioan Eugen Stan created PAXJDBC-32
Needed for testing karaf features with karaf distribution.
Affects: 0.3.0
Fixed in: 0.4.0
Votes: 0, Watches: 1
Referenced issues
depends on:
Harald Wellmann created PAXJDBC-12
New SQLite adapter, wrapping org.xerial:sqlite-jdbc.
Affects: 0.2.0
Fixed in: 0.3.0
Votes: 0, Watches: 1
Benjamin Graf created PAXJDBC-37
The java interface might be added to remove dependency to osgi enterprise bundles which has side effects with e.g. aries blueprint. Not installable in e.g. in karaf
Affects: 0.4.0
Fixed in: 0.4.0
Votes: 0, Watches: 4
Ioan Eugen Stan created PAXJDBC-35
We need to make a realse to export pax-jdbc karaf features.
Affects: 0.3.0
Votes: 1, Watches: 3
Ioan Eugen Stan created PAXJDBC-34
Needed for PAXJDBC-32
Affects: 0.3.0
Fixed in: 0.4.0
Votes: 0, Watches: 1
Referenced issues
blocks:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.