No, I don't think it's a good idea.

As you know we can not assume that user don't use a customized Karaf, as we should not assume the Karaf version years ago. That could make apache-camel feature be supported by different version of Karaf. And we should not let the apache-camel feature to change the run time configuration of Karaf.

We don't want the user lose the control, even we provide the out of box configuration.

My suggestion is we provide two version of camel default feature, one is install the xml-spacs-api feature, the other is no. And the user need to install one version of camel default feature before he install other camel feature.

I think it make sense to provide this kind of offer for the user to choice what he wants.

On Sat Dec 24 22:18:09 2011, Jean-Baptiste Onofré wrote:
Agree,

But I would prefer to have feature deployed by default than failure without documentation.

I would add something like that in the xml-specs-api feature:

<configfile finalname="etc/jre.properties.camel">
mvn:org.apache.camel.karaf/jre/${project.version}/properties
</configfile>

to provide a "preconfigured" jre.properties for Camel (hiding the concerned packages), and document in the component wiki page to use the Camel jre.properties than the default one.

WDYT ?

Regards
JB

On 12/24/2011 03:13 PM, Daniel Kulp wrote:
On Saturday, December 24, 2011 2:50:00 PM Jean-Baptiste Onofré wrote:
Hi Dan,

did you see my latest e-mail on this thread ?

I don't see any problem, as camel-hdfs or camel-soap reference
ServiceMix Specs JAXWS, which reference JAXB 2.2
(javax.xml.bind*;version=2.2 and not just javax.xml.bind*).

Yea. Everything now deploys OK, but I think we'll get into strange runtime
issues that are very hard to debug. Strange errors like failing to cast
XMLStreamReader to XMLStreamReader or not finding JAXB annotations (and thus
getting defaults) and other strange things.

Couple of examples:
If a bundle uses JAXB objects for the body, (like maybe CXF?) but that bundle ends up pulling in 2.2. If that is passed into the JAXB stuff in camel-core, camel-core won't see the JAXB annotations and won't properly write it out.

Any bundle that uses the versioned stax-api API's will not be able to use the
StaxConverter in camel-core.

You ALSO get into even stranger things when you restart Karaf. With the
start-level on the API's, when you restart, camel-core will then get DIFFERENT
bundles than it did the first time.

Basically, the behavior is very indeterministic which, to me, will cause
issues trying to figure out what is going on when something goes wrong.

Dan





So it means that without these changes, these features will never work
even if we run using jre-1.6 profile.

I don't understand the previous change to be honest.

Regards
JB

On 12/24/2011 02:46 PM, Daniel Kulp wrote:
On Saturday, December 24, 2011 4:29:53 PM Willem Jiang wrote:
-1 for it.
As it brokes CAMEL-4671 even we don't add the dependency of the
xml-specs-api feature on the camel-core.
And it make it wore, the user need to remove lots of xml-specs-api
this
time.

I would recommend backing out the changes for CAMEL-4671 and re-opening
it for 2.10 or 3.0 when Karaf can provide better support for such use
cases. Right now, it's causing way more problems than it's solving,
IMO.

Dan

If we want to support to install the feature out of box, we may
consider to provide two kind of feature this time.

On Fri Dec 23 23:56:36 2011, jbono...@apache.org wrote:
Author: jbonofre
Date: Fri Dec 23 15:56:36 2011
New Revision: 1222709

URL: http://svn.apache.org/viewvc?rev=1222709&view=rev
Log:
[CAMEL-4818] camel-hdfs and camel-soap reference xml-specs-api
feature

Modified:
camel/trunk/platforms/karaf/features/src/main/resources/
featur
es.xml

Modified:
camel/trunk/platforms/karaf/features/src/main/resources/features.xml
URL:
http://svn.apache.org/viewvc/camel/trunk/platforms/karaf/features/sr
c/m
ain/resources/features.xml?rev=1222709&r1=1222708&r2=1222709&view=di
ff
====================================================================
===
======= ---
camel/trunk/platforms/karaf/features/src/main/resources/features.xml
(original) +++
camel/trunk/platforms/karaf/features/src/main/resources/features.xml
Fri Dec 23 15:56:36 2011 @@ -282,6 +282,7 @@

<bundle>mvn:org.apache.camel/camel-hawtdb/${project.ve
rsion}
</bundle>>

</feature>
<feature name='camel-hdfs' version='${project.version}'
resolver='(obr)' start-level='50'>>

+<feature
version='${servicemix-specs-version}'>xml-specs-api</feature>

<feature
version='${project.version}'>camel-core</feature>
<feature>war</feature>
<bundle
dependency="true">mvn:org.apache.servicemix.specs/org.
apach
e.servicemix.specs.jaxws-api-2.2/${servicemix-specs-ve
rsion}
</bundle>>

@@ -595,6 +596,7 @@

<bundle>mvn:org.apache.camel/camel-snmp/${project.vers
ion}</
bundle>

</feature>
<feature name='camel-soap' version='${project.version}'
resolver='(obr)' start-level='50'>>

+<feature
version='${servicemix-specs-version}'>xml-specs-api</feature>

<feature
version='${project.version}'>camel-jaxb</feature>
<bundle
dependency="true">mvn:org.apache.geronimo.specs/geroni
mo-ws
-metadata_2.0_spec/${geronimo-ws-metadata-spec-version
}</bun
dle> <bundle
dependency="true">mvn:org.apache.servicemix.specs/org.
apach
e.servicemix.specs.jaxws-api-2.2/${servicemix-specs-ve
rsion}
</bundle>




--
Willem
----------------------------------
FuseSource
Web: http://www.fusesource.com
Blog:    http://willemjiang.blogspot.com (English)
        http://jnn.javaeye.com (Chinese)
Twitter: willemjiang Weibo: willemjiang

Reply via email to