Just found out that the stacktrace is coming from Felix code
(URLHandlersStreamHandlerProxy), which does a plain
exception.printStacktrace().
Looks as if the 'reference:' protocol scheme, which is a Felix builtin
(right ?) is not handled properly here. What's funny is
that this exception is raised only at startup time. Once I actually use my
pool, the connections are properly created, as
if the URL handler for 'reference' protocol was not found at startup but
found after.
Weird.
/jog
On Mon, Apr 20, 2009 at 3:16 PM, Jacques-Olivier Goussard <
[email protected]> wrote:
> Hi
> I'm trying to deploy an Oracle datasource in Felix and I get the following
> error when creating my first JDBC connection
> :
>
> java.net.MalformedURLException: invalid url:
> reference:file:C:\Dev\views\viewA
> \server\_output\_dist\deploy\component-datasource!/ (java.net.MalformedU
> RLException: Unknown protocol: reference)
> at java.net.URL.<init>(URL.java:601)
> at
> org.apache.felix.framework.URLHandlersStreamHandlerProxy.parseURL(URL
> HandlersStreamHandlerProxy.java:281)
> at java.net.URL.<init>(URL.java:596)
> at java.net.URL.<init>(URL.java:464)
> at java.net.URL.<init>(URL.java:413)
> at javax.crypto.SunJCE_c.b(DashoA13*..)
> at javax.crypto.SunJCE_c.a(DashoA13*..)
> at javax.crypto.SunJCE_c.a(DashoA13*..)
> at javax.crypto.SunJCE_b.a(DashoA13*..)
> at javax.crypto.SunJCE_h.a(DashoA13*..)
> at javax.crypto.SunJCE_h.a(DashoA13*..)
> at javax.crypto.Cipher.c(DashoA13*..)
> at javax.crypto.Cipher.b(DashoA13*..)
> at javax.crypto.Cipher.a(DashoA13*..)
> at javax.crypto.Cipher.init(DashoA13*..)
> at javax.crypto.Cipher.init(DashoA13*..)
> at oracle.security.o5logon.O5LoginClientHelper.decryptAES(Unknown
> Source
> )
> at
> oracle.security.o5logon.O5LoginClientHelper.generateOAuthResponse(Unk
> nown Source)
> at
> oracle.jdbc.driver.T4CTTIoauthenticate.marshalOauth(T4CTTIoauthentica
> at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:367)
> at
> oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:
> 508)
> at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:203)
> at
> oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtensio
> n.java:33)
> at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:510)
> at
> oracle.jdbc.pool.OracleDataSource.getPhysicalConnection(OracleDataSou
> rce.java:275)
> at
> oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java
> :206)
> at
> oracle.jdbc.pool.OracleConnectionPoolDataSource.getPhysicalConnection
> (OracleConnectionPoolDataSource.java:139)
> at
> oracle.jdbc.pool.OracleConnectionPoolDataSource.getPooledConnection(O
> racleConnectionPoolDataSource.java:88)
> at
> oracle.jdbc.pool.OracleConnectionPoolDataSource.getPooledConnection(O
> racleConnectionPoolDataSource.java:70)
>
> I'm using oracle.jdbc.pool.OracleConnectionPoolDataSource to do pooling.
> Anyone has an idea on what's going on ? My bundles are installed in felix
> using the reference:file:// scheme.
>
> /jog
>
>