First of all, the default jre export package version is 0, so if
customer bundle import such package but not specify the version, then
it always work, that's why I said we generally needn't specify the jre
export package version.
And the main reason smx doesn't use the jaxb/jaxws api from jdk is
that the SPI mechanism doesn't work in OSGi container, it can't load
the proper implementation from bundles.
So smx wrapped specs bundle(like JAXB/JAXWS) use OSGiLocator to make
it working in OSGi container.
So if you wanna cxf stuff work in KARAF, change the jre.properties
only isn't enough, we need some features anyway, actually those
features are already provided by both cxf and servicemix, I don't
think we need reinvent the wheel in karaf.
Best Regards
Freeman
On 2011-8-30, at 下午7:48, Achim Nierbeck wrote:
Just to get this right,
for JAXB if someone needs a JAXB 2.2. he needs to provide it by
himself (or we can offer some nice features for it +1)
but for the included jre JAXB which causes all kinds of issues if you
even provide your own JAXB 2.2. I think it's a good solution
to set the version to 2.1.0. This way it's possible to provide another
JAXB version in the first place.
Or am I totally wrong here?
regards, Achim
2011/8/30 Freeman Fang <freeman.f...@gmail.com>:
I don't think hack jre.properties can support jaxb2.2 and create a
default
feature which contain smx jaxb bundles should be the solution.
But I have little concern that this will make karaf more like smx
and this
actually is against our initial idea that keep karaf as a simple
general
container.
Regards
Freeman
On 2011-8-30, at 下午7:32, Andreas Pieber wrote:
On Tue, Aug 30, 2011 at 13:17, Achim Nierbeck
<bcanh...@googlemail.com>wrote:
hmm, OK,
does it really prevent us from actually fixing the version of
JAXB in
the jre property in conjunction with what Andreas just suggested?
I'd really favor changing the jre properties (I actually did that
on a
project fixing my issues with jaxb this way) and providing
functional
features
out of the box for JAXB since this is still a highly used
framework of
lots of developers. I really want this to work right away.
I myself spent already to much time haunting those nightmares ;)
I'm completely with Achim here (had the same nightmares). Still,
if it is
2.2 we're looking for and jdk6 comes with 2.1 using a (default)
feature or
a
default bundle might be the better solution?
Kind regards,
Andreas
regards, Achim
2011/8/30 Andreas Pieber <anpie...@gmail.com>:
Although it is a little bit otherwise defined in the JRE we may
be able
to
provide features for those alternatives and completely remove
them from
the
jre.properties? I think this would help users a lot at various
situations
and als remove some of the hacks from SMX :-)
Kind regards,
Andreas
On Tue, Aug 30, 2011 at 09:37, Freeman Fang <freeman.f...@gmail.com
>
wrote:
Hi,
Not sure we should do it for JAXB(and also jaxws). As in most
case the
jaxb/jaxws api(as in JDK6 it use jaxws/jaxb 2.1 but in most
case we
need
use
2.2, and also the SPI mechanism of jaxws doesn't work in OSGi
container)
from jdk isn't much useful and so in Servicemix we shipped jaxb
api/impl
bundle and comment it out from jdk, so if customer need use
jaxb in
karaf,
he need do a bit hack anyway.
Best Regards
Freeman
On 2011-8-30, at 下午3:25, Achim Nierbeck wrote:
Hi,
I suggest we do this also for the jaxb bundles since those are
a real
pain
:)
regards, Achim
2011/8/30 Freeman Fang <freeman.f...@gmail.com>:
Hi,
This commit[1] also do same for JDK1.7.
I'd say other JDK API are quite stable but javax.annotation
is a
little
bit
different so several other bundles(such as activemq, you can
get more
details from [2]) which are popularly used in KARAF are
explicitly
specify
javax.annotation import version as 1.1, and since JDK6, the
javax.annotation
is 1.1 compatible, so in this case, if we don't provide this
change,
customer need hack the jre.properties themselves.
But for other jdk packages, 3rd party bundle usually just
import but
without
specified version, so the default export from system bundle 0
should
be
fine
IMHO.
[1]http://svn.apache.org/**viewvc?rev=1162478&view=rev<
http://svn.apache.org/viewvc?rev=1162478&view=rev>
[2]https://issues.apache.org/**jira/browse/KARAF-835<
https://issues.apache.org/jira/browse/KARAF-835>
Best Regards
Freeman
On 2011-8-30, at 下午12:30, Andreas Pieber wrote:
I'm a little bit curious because none of the other exported
packages
has
a
version; I'm basically not against adding versions here, but
shouldn't
we
do
the same for 1.5 and 1.7? Is there any way we can easily
lookup
which
versions are used by which JRE?
Kind regards,
Andreas
On Sun, Aug 28, 2011 at 05:46, <ff...@apache.org> wrote:
Author: ffang
Date: Sun Aug 28 03:46:53 2011
New Revision: 1162476
URL: http://svn.apache.org/viewvc?**rev=1162476&view=rev<
http://svn.apache.org/viewvc?rev=1162476&view=rev>
Log:
[KARAF-840]specify javax.annotation packages version to
1.1.0 for
jre-1.6
as Annotation 1.1 Spec is used for Java 6
Modified:
karaf/branches/karaf-2.2.x/**assemblies/apache-karaf/src/**
main/filtered-resources/etc/**jre.properties
Modified:
karaf/branches/karaf-2.2.x/**assemblies/apache-karaf/src/**
main/filtered-resources/etc/**jre.properties
URL:
http://svn.apache.org/viewvc/**karaf/branches/karaf-2.2.x/**
assemblies/apache-karaf/src/**main/filtered-resources/etc/**
jre.properties?rev=1162476&r1=**1162475&r2=1162476&view=diff<
http://svn.apache.org/viewvc/karaf/branches/karaf-2.2.x/assemblies/apache-karaf/src/main/filtered-resources/etc/jre.properties?rev=1162476&r1=1162475&r2=1162476&view=diff
=
=
=
===========================**==============================**
==================
---
karaf/branches/karaf-2.2.x/**assemblies/apache-karaf/src/**
main/filtered-resources/etc/**jre.properties
(original)
+++
karaf/branches/karaf-2.2.x/**assemblies/apache-karaf/src/**
main/filtered-resources/etc/**jre.properties
Sun Aug 28 03:46:53 2011
@@ -153,8 +153,8 @@ jre-1.6= \
javax.accessibility, \
javax.activation, \
javax.activity, \
- javax.annotation, \
- javax.annotation.processing, \
+ javax.annotation;version="1.1"**, \
+ javax.annotation.processing;**version="1.1", \
javax.crypto, \
javax.crypto.interfaces, \
javax.crypto.spec, \
------------------------------**---------------
Freeman Fang
FuseSource
Email:ff...@fusesource.com
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.**com<
http://freemanfang.blogspot.com>
--
--
*Achim Nierbeck*
Apache Karaf <http://karaf.apache.org/> Committer & PMC
OPS4J Pax Web <http://wiki.ops4j.org/**display/paxweb/Pax+Web/<
http://wiki.ops4j.org/display/paxweb/Pax+Web/>
Committer & Project Lead
blog <http://notizblog.nierbeck.de/**>
------------------------------**---------------
Freeman Fang
FuseSource
Email:ff...@fusesource.com
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.**com <
http://freemanfang.blogspot.com>
--
--
*Achim Nierbeck*
Apache Karaf <http://karaf.apache.org/> Committer & PMC
OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/>
Committer & Project Lead
blog <http://notizblog.nierbeck.de/>
---------------------------------------------
Freeman Fang
FuseSource
Email:ff...@fusesource.com
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
--
--
*Achim Nierbeck*
Apache Karaf <http://karaf.apache.org/> Committer & PMC
OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/>
Committer & Project Lead
blog <http://notizblog.nierbeck.de/>
---------------------------------------------
Freeman Fang
FuseSource
Email:ff...@fusesource.com
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com