Hi Claus,
commons-dbcp may not be used directly by camel components.
But as datasource like org.apache.commons.dbcp.BasicDataSource is
popularly used by specifying DAO when use database related camel
features such as camel-jpa, so I'm not sure simply remove commons-dbcp
bundle from camel features.xml is a good idea.
Best Regards
Freeman
On 2011-8-6, at 下午5:12, Claus Ibsen wrote:
On Sat, Aug 6, 2011 at 3:31 AM, Freeman Fang
<freeman.f...@gmail.com> wrote:
Hi Christian,
Yeah, If camel team agree to upgrade to commons-dbcp 1.4 then we
can use SMX
wrapped commons-dbcp 1.4 bundle directly.
If there's no other objection I'll append a patch which upgrade to
commons-dbcp 1.4 also.
The commons-dbcp is not used by any of the camel components in non
osgi mode.
So its something somebody added in the features file. Its not required
by Camel or by the 3rd party components.
I wonder if we can just remove it?
In the features file its listed in
- camel-bam
- camel-ibatis
- camel-jpa
- camel-mybatis
- camel-quartz
Best Regards
Freeman
On 2011-8-6, at 上午12:50, Christian Müller wrote:
I wonder is there a reason not to upgrade Camel to use commons-
dbcp 1.4
when
SMX already use this version?
Best,
Christian
On Fri, Aug 5, 2011 at 9:27 AM, Freeman Fang (JIRA)
<j...@apache.org>
wrote:
[
https://issues.apache.org/jira/browse/CAMEL-4308?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13079810
#comment-13079810]
Freeman Fang commented on CAMEL-4308:
-------------------------------------
I noticed that camel now use commons-dbcp 1.3 but in servicemix
we have
wrapped commons-dbcp 1.2.2 and 1.4, so I create SMX4-892[1] and
will add
commons-dbcp 1.3 bundle in servicemix firstly.
[1]https://issues.apache.org/jira/browse/SMX4-892
Freeman
commons-dbcp bundle used in camel feature.xml doesn't allow
dynamic
imports
---------------------------------------------------------------------------
Key: CAMEL-4308
URL: https://issues.apache.org/jira/browse/
CAMEL-4308
Project: Camel
Issue Type: Improvement
Reporter: Freeman Fang
currently the commons-dbcp bundle used in camel feature.xml
doesn't
allow
dynamic imports, it will cause exception like
org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC
driver
class
'oracle.jdbc.driver.OracleDriver'
as
JDBC driver class not found actually is a common issue in OSGi
container,
this problem generally from a bundle(let's say it bundle A,
commons-dbcp
in
this case) using some code like
classForName(jdbc_driver_classname) to
init
a jdbc driver class, this is a big problem in OSGi world, as if
BundleA
not
import package for jdbc_driver_classname, we'll see the problem.
However
BundleA actually can't know about package name for
jdbc_driver_classname
beforehand, as the jdbc_driver_classname generally is passed in
through
configuration during runtime, it can't be determined during build
time,
so
we can't add correct package import when we generate bundle A.
The general solution is
1. add dynamic import for bundle A(commons-dbcp)
or
2. create JDBC driver as a fragment bundle, and attach it to
bundle
A(bundle A is host bundle now), so that all resource from
fragment bundle
is
available for the host bundle.
Solution 1 left less effort for end user and n servicemix wrapped
commons-dbcp bundle we already have dynamic-import header and I
think
camel
features should use the servicemix wrapped commons-dbcp bundle
as well.
I will append a patch soon.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------
Freeman Fang
FuseSource
Email:ff...@fusesource.com
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
--
Claus Ibsen
-----------------
FuseSource
Email: cib...@fusesource.com
Web: http://fusesource.com
Twitter: davsclaus, fusenews
Blog: http://davsclaus.blogspot.com/
Author of Camel in Action: http://www.manning.com/ibsen/
---------------------------------------------
Freeman Fang
FuseSource
Email:ff...@fusesource.com
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com