You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by Rex Wang <rw...@gmail.com> on 2010/01/14 04:30:30 UTC
cxf bundles
Hi
I am looking into "GERONIMO-5016 Enable cxf in Geronimo 3.0". There is an
issue I think need discuss first before I drive further. Not like axis, the
cxf community did not release their jars as a bundle. Instead they made 2
separate distributions named "cxf-bundle" and "cxf-bundle-minimal" to
contain the different set of their components. For instance:
The cxf-bundle-minimal bundle contains 17 components:
cxf-common-utilities
cxf-common-schemas
cxf-api
cxf-rt-core
cxf-rt-transports-http
cxf-rt-transports-http-jetty
cxf-rt-transports-jms
cxf-rt-bindings-soap
cxf-rt-databinding-aegis
cxf-rt-databinding-jaxb
cxf-rt-frontend-jaxws
cxf-rt-frontend-simple
cxf-rt-databinding-xmlbeans
cxf-rt-ws-security
cxf-rt-ws-policy
cxf-rt-ws-addr
cxf-rt-ws-rm
but what we need are just following 13:
cxf-api
cxf-common-utilities
cxf-rt-core
cxf-rt-bindings-xml
cxf-rt-bindings-soap
cxf-rt-databinding-jaxb
cxf-rt-frontend-jaxws
cxf-rt-frontend-simple
cxf-rt-transports-http
cxf-rt-ws-addr
cxf-rt-ws-security
cxf-tools-common
cxf-tools-java2ws
You can see the "cxf-tools-common" & "cxf-tools-java2ws" are not included by
"cxf-bundle-minimal".
The "cxf-bundle" contains all the 13 components we need, but it will import
a great many other components, which will not only bring a lot of jobs to
exclude un-necessary jars when build our cxf plugins, but also increase the
size of new G3.0.
So I see 2 ways to pull cxf bundles in:
1. Use the cxf-bundle-minimal and make a new private bundle that contains
"cxf-tools-common" & "cxf-tools-java2ws" in Geronimo.
2. Make a private cxf bundle customized by ourselves which only contains the
above 13 packages
I suggest the approach #2. Any comments?
Thanks
--
Lei Wang (Rex)
rwonly AT apache.org
Re: cxf bundles
Posted by Ivan <xh...@gmail.com>.
If CXF would not publish bunlized file for each library, we might need to do
it by ourselves. Build all the CXF libraries in one file would make work
easy. but shall we make it more fine-grained? for example, for runtime,
there is one, for tools, there is another one.
2010/1/14 Rex Wang <rw...@gmail.com>
> Hi
>
> I am looking into "GERONIMO-5016 Enable cxf in Geronimo 3.0". There is an
> issue I think need discuss first before I drive further. Not like axis, the
> cxf community did not release their jars as a bundle. Instead they made 2
> separate distributions named "cxf-bundle" and "cxf-bundle-minimal" to
> contain the different set of their components. For instance:
> The cxf-bundle-minimal bundle contains 17 components:
> cxf-common-utilities
> cxf-common-schemas
> cxf-api
> cxf-rt-core
> cxf-rt-transports-http
> cxf-rt-transports-http-jetty
> cxf-rt-transports-jms
> cxf-rt-bindings-soap
> cxf-rt-databinding-aegis
> cxf-rt-databinding-jaxb
> cxf-rt-frontend-jaxws
> cxf-rt-frontend-simple
> cxf-rt-databinding-xmlbeans
> cxf-rt-ws-security
> cxf-rt-ws-policy
> cxf-rt-ws-addr
> cxf-rt-ws-rm
> but what we need are just following 13:
> cxf-api
> cxf-common-utilities
> cxf-rt-core
> cxf-rt-bindings-xml
> cxf-rt-bindings-soap
> cxf-rt-databinding-jaxb
> cxf-rt-frontend-jaxws
> cxf-rt-frontend-simple
> cxf-rt-transports-http
> cxf-rt-ws-addr
> cxf-rt-ws-security
> cxf-tools-common
> cxf-tools-java2ws
> You can see the "cxf-tools-common" & "cxf-tools-java2ws" are not included
> by "cxf-bundle-minimal".
> The "cxf-bundle" contains all the 13 components we need, but it will import
> a great many other components, which will not only bring a lot of jobs to
> exclude un-necessary jars when build our cxf plugins, but also increase the
> size of new G3.0.
>
> So I see 2 ways to pull cxf bundles in:
> 1. Use the cxf-bundle-minimal and make a new private bundle that contains
> "cxf-tools-common" & "cxf-tools-java2ws" in Geronimo.
> 2. Make a private cxf bundle customized by ourselves which only contains
> the above 13 packages
>
> I suggest the approach #2. Any comments?
>
> Thanks
>
> --
> Lei Wang (Rex)
> rwonly AT apache.org
>
--
Ivan
Re: cxf bundles
Posted by Rex Wang <rw...@gmail.com>.
2010/1/14 David Jencks <da...@yahoo.com>
> 1. is there a need for the 2 tools jars to be in the same bundle as the
> minimal bundle? Maybe we could use minimal + the other two jars
> individually bundleized.
>
That is the #1 I suggested above. For #2, because the minimal bundle still
contains some useless components such as "cxf-common-schemas",
"cxf-rt-databinding-aegis".. to geronimo, I think we can made an individual
bundle only contains those we need.
> 2. do the other jars in the minimal bundle provide generally useful
> functionality?
>
Seems not.
> 3. how much is exposed unnecessarily if the individual jars were
> bundleized?
>
4. Have we approached cxf about creating the appropriate bundles there? Its
> pretty unlikely we will be ready to release g 3 before they do another
> release.
>
I have send a email to cxf mailling list. I suspect if they have the
motivation to bundlize each jar like axis2.
>
> thanks
> david jenkcs
>
> On Jan 13, 2010, at 7:30 PM, Rex Wang wrote:
>
> Hi
>
> I am looking into "GERONIMO-5016 Enable cxf in Geronimo 3.0". There is an
> issue I think need discuss first before I drive further. Not like axis, the
> cxf community did not release their jars as a bundle. Instead they made 2
> separate distributions named "cxf-bundle" and "cxf-bundle-minimal" to
> contain the different set of their components. For instance:
> The cxf-bundle-minimal bundle contains 17 components:
> cxf-common-utilities
> cxf-common-schemas
> cxf-api
> cxf-rt-core
> cxf-rt-transports-http
> cxf-rt-transports-http-jetty
> cxf-rt-transports-jms
> cxf-rt-bindings-soap
> cxf-rt-databinding-aegis
> cxf-rt-databinding-jaxb
> cxf-rt-frontend-jaxws
> cxf-rt-frontend-simple
> cxf-rt-databinding-xmlbeans
> cxf-rt-ws-security
> cxf-rt-ws-policy
> cxf-rt-ws-addr
> cxf-rt-ws-rm
> but what we need are just following 13:
> cxf-api
> cxf-common-utilities
> cxf-rt-core
> cxf-rt-bindings-xml
> cxf-rt-bindings-soap
> cxf-rt-databinding-jaxb
> cxf-rt-frontend-jaxws
> cxf-rt-frontend-simple
> cxf-rt-transports-http
> cxf-rt-ws-addr
> cxf-rt-ws-security
> cxf-tools-common
> cxf-tools-java2ws
> You can see the "cxf-tools-common" & "cxf-tools-java2ws" are not included
> by "cxf-bundle-minimal".
> The "cxf-bundle" contains all the 13 components we need, but it will import
> a great many other components, which will not only bring a lot of jobs to
> exclude un-necessary jars when build our cxf plugins, but also increase the
> size of new G3.0.
>
> So I see 2 ways to pull cxf bundles in:
> 1. Use the cxf-bundle-minimal and make a new private bundle that contains
> "cxf-tools-common" & "cxf-tools-java2ws" in Geronimo.
> 2. Make a private cxf bundle customized by ourselves which only contains
> the above 13 packages
>
> I suggest the approach #2. Any comments?
>
> Thanks
>
> --
> Lei Wang (Rex)
> rwonly AT apache.org
>
>
>
--
Lei Wang (Rex)
rwonly AT apache.org
Re: cxf bundles
Posted by Daniel Kulp <dk...@apache.org>.
On Thu January 14 2010 2:44:51 am David Jencks wrote:
> 1. is there a need for the 2 tools jars to be in the same bundle as
> the minimal bundle? Maybe we could use minimal + the other two jars
> individually bundleized.
I'm trying to figure out why the two tool jars are even needed in the osgi
runtime at all. Those are for the command line tooling so I'm really at a
loss as to why they would be needed in the container.
> 2. do the other jars in the minimal bundle provide generally useful
> functionality?
IMO. Yes, especially with CXF 2.3 which we hope to get out this quarter.
1) cxf-rt-ws-policy - you really don't want cxf-rt-ws-security without this
one. Doing ws-security with SecurityPolicy is much easier and the policy
stuff requires this jar.
2) cxf-rt-transports-jms - with 2.3, this will bring full SOAP over JMS spec
compliance.
3) cxf-common-schemas - I personally thought this was required for anything in
CXF to work. The fact that you have something working without it actually
surprises me. :-) It's certainly needed in some cases if schema validation
is turned on.
4) http-jetty - you're probably correct in that this wouldn't be required for
you. It's small though. I believe the osgi imports for stuff it needs are
marked optional. I think with 2.2.6, there is also http-osgi which uses the
OSGi http stuff.
5) cxf-rt-databinding-xmlbeans/aegis - not required for JAX-WS compliance.
Semi useful though. With 2.3, changing from JAXB to one of the others is just
a matter of adding a @DataBinding annotation. No config or anything. That
said, I'm not sure why xmlbeans is in the minimal bundle. Probably shouldn't
be. Aegis is needed for DOSGi which uses the minimal bundle. 2.3 also adds
an SDO databinding, but again, shouldn't be in minimal.
6) ws-rm - I'm honestly not sure why this is in the minimal bundle at all. It
shouldn't be.
In anycase, fragments would be good if someone knowledgeable in the area would
like to help out with that.
> 3. how much is exposed unnecessarily if the individual jars were
> bundleized?
Unfortunately, they cannot be until we completely refactor things which would
break compatibility and not something we can really do until 3.0. Bundle
fragments are a possibility.
> 4. Have we approached cxf about creating the appropriate bundles
> there? Its pretty unlikely we will be ready to release g 3 before
> they do another release.
We definitely could. I really need to start a discussion about the minimal
bundle though. It's growing with each release and it's now not much different
than the full bundle. 2.2.6 actually adds JAX-RS in there as well. Not
really "minimal" anymore. :-(
Dan
>
> thanks
> david jenkcs
>
> On Jan 13, 2010, at 7:30 PM, Rex Wang wrote:
> > Hi
> >
> > I am looking into "GERONIMO-5016 Enable cxf in Geronimo 3.0". There
> > is an issue I think need discuss first before I drive further. Not
> > like axis, the cxf community did not release their jars as a bundle.
> > Instead they made 2 separate distributions named "cxf-bundle" and
> > "cxf-bundle-minimal" to contain the different set of their
> > components. For instance:
> > The cxf-bundle-minimal bundle contains 17 components:
> > cxf-common-utilities
> > cxf-common-schemas
> > cxf-api
> > cxf-rt-core
> > cxf-rt-transports-http
> > cxf-rt-transports-http-jetty
> > cxf-rt-transports-jms
> > cxf-rt-bindings-soap
> > cxf-rt-databinding-aegis
> > cxf-rt-databinding-jaxb
> > cxf-rt-frontend-jaxws
> > cxf-rt-frontend-simple
> > cxf-rt-databinding-xmlbeans
> > cxf-rt-ws-security
> > cxf-rt-ws-policy
> > cxf-rt-ws-addr
> > cxf-rt-ws-rm
> > but what we need are just following 13:
> > cxf-api
> > cxf-common-utilities
> > cxf-rt-core
> > cxf-rt-bindings-xml
> > cxf-rt-bindings-soap
> > cxf-rt-databinding-jaxb
> > cxf-rt-frontend-jaxws
> > cxf-rt-frontend-simple
> > cxf-rt-transports-http
> > cxf-rt-ws-addr
> > cxf-rt-ws-security
> > cxf-tools-common
> > cxf-tools-java2ws
> > You can see the "cxf-tools-common" & "cxf-tools-java2ws" are not
> > included by "cxf-bundle-minimal".
> > The "cxf-bundle" contains all the 13 components we need, but it will
> > import a great many other components, which will not only bring a
> > lot of jobs to exclude un-necessary jars when build our cxf plugins,
> > but also increase the size of new G3.0.
> >
> > So I see 2 ways to pull cxf bundles in:
> > 1. Use the cxf-bundle-minimal and make a new private bundle that
> > contains "cxf-tools-common" & "cxf-tools-java2ws" in Geronimo.
> > 2. Make a private cxf bundle customized by ourselves which only
> > contains the above 13 packages
> >
> > I suggest the approach #2. Any comments?
> >
> > Thanks
>
--
Daniel Kulp
dkulp@apache.org
http://www.dankulp.com/blog
Re: cxf bundles
Posted by Daniel Kulp <dk...@apache.org>.
On Thu January 14 2010 3:25:23 am David Jencks wrote:
> On Jan 13, 2010, at 11:44 PM, David Jencks wrote:
> > 1. is there a need for the 2 tools jars to be in the same bundle as
> > the minimal bundle? Maybe we could use minimal + the other two jars
> > individually bundleized.
> > 2. do the other jars in the minimal bundle provide generally useful
> > functionality?
> > 3. how much is exposed unnecessarily if the individual jars were
> > bundleized?
>
> this would be "nothing" if we had a core bundle with everything else
> fragment bundles.
When we started doing OSGi related stuff in CXF, we DIDN'T go down the route
of bundles fragments because, at the time, Felix didn't support them at all
and the support in Equinox was only partially there. Basically, not
something we could rely on. Since we already had the big bundle jar (users
wanted that), we just added the OSGi stuff to there.
I would LOVE some help doing the fragment thing if that is now working in the
various OSGi containers.
Dan
>
> thanks
> david jencks
>
> > 4. Have we approached cxf about creating the appropriate bundles
> > there? Its pretty unlikely we will be ready to release g 3 before
> > they do another release.
> >
> > thanks
> > david jenkcs
> >
> > On Jan 13, 2010, at 7:30 PM, Rex Wang wrote:
> >> Hi
> >>
> >> I am looking into "GERONIMO-5016 Enable cxf in Geronimo 3.0". There
> >> is an issue I think need discuss first before I drive further. Not
> >> like axis, the cxf community did not release their jars as a
> >> bundle. Instead they made 2 separate distributions named "cxf-
> >> bundle" and "cxf-bundle-minimal" to contain the different set of
> >> their components. For instance:
> >> The cxf-bundle-minimal bundle contains 17 components:
> >> cxf-common-utilities
> >> cxf-common-schemas
> >> cxf-api
> >> cxf-rt-core
> >> cxf-rt-transports-http
> >> cxf-rt-transports-http-jetty
> >> cxf-rt-transports-jms
> >> cxf-rt-bindings-soap
> >> cxf-rt-databinding-aegis
> >> cxf-rt-databinding-jaxb
> >> cxf-rt-frontend-jaxws
> >> cxf-rt-frontend-simple
> >> cxf-rt-databinding-xmlbeans
> >> cxf-rt-ws-security
> >> cxf-rt-ws-policy
> >> cxf-rt-ws-addr
> >> cxf-rt-ws-rm
> >> but what we need are just following 13:
> >> cxf-api
> >> cxf-common-utilities
> >> cxf-rt-core
> >> cxf-rt-bindings-xml
> >> cxf-rt-bindings-soap
> >> cxf-rt-databinding-jaxb
> >> cxf-rt-frontend-jaxws
> >> cxf-rt-frontend-simple
> >> cxf-rt-transports-http
> >> cxf-rt-ws-addr
> >> cxf-rt-ws-security
> >> cxf-tools-common
> >> cxf-tools-java2ws
> >> You can see the "cxf-tools-common" & "cxf-tools-java2ws" are not
> >> included by "cxf-bundle-minimal".
> >> The "cxf-bundle" contains all the 13 components we need, but it
> >> will import a great many other components, which will not only
> >> bring a lot of jobs to exclude un-necessary jars when build our cxf
> >> plugins, but also increase the size of new G3.0.
> >>
> >> So I see 2 ways to pull cxf bundles in:
> >> 1. Use the cxf-bundle-minimal and make a new private bundle that
> >> contains "cxf-tools-common" & "cxf-tools-java2ws" in Geronimo.
> >> 2. Make a private cxf bundle customized by ourselves which only
> >> contains the above 13 packages
> >>
> >> I suggest the approach #2. Any comments?
> >>
> >> Thanks
>
--
Daniel Kulp
dkulp@apache.org
http://www.dankulp.com/blog
Re: cxf bundles
Posted by David Jencks <da...@yahoo.com>.
On Jan 13, 2010, at 11:44 PM, David Jencks wrote:
> 1. is there a need for the 2 tools jars to be in the same bundle as
> the minimal bundle? Maybe we could use minimal + the other two jars
> individually bundleized.
> 2. do the other jars in the minimal bundle provide generally useful
> functionality?
> 3. how much is exposed unnecessarily if the individual jars were
> bundleized?
this would be "nothing" if we had a core bundle with everything else
fragment bundles.
thanks
david jencks
> 4. Have we approached cxf about creating the appropriate bundles
> there? Its pretty unlikely we will be ready to release g 3 before
> they do another release.
>
> thanks
> david jenkcs
> On Jan 13, 2010, at 7:30 PM, Rex Wang wrote:
>
>> Hi
>>
>> I am looking into "GERONIMO-5016 Enable cxf in Geronimo 3.0". There
>> is an issue I think need discuss first before I drive further. Not
>> like axis, the cxf community did not release their jars as a
>> bundle. Instead they made 2 separate distributions named "cxf-
>> bundle" and "cxf-bundle-minimal" to contain the different set of
>> their components. For instance:
>> The cxf-bundle-minimal bundle contains 17 components:
>> cxf-common-utilities
>> cxf-common-schemas
>> cxf-api
>> cxf-rt-core
>> cxf-rt-transports-http
>> cxf-rt-transports-http-jetty
>> cxf-rt-transports-jms
>> cxf-rt-bindings-soap
>> cxf-rt-databinding-aegis
>> cxf-rt-databinding-jaxb
>> cxf-rt-frontend-jaxws
>> cxf-rt-frontend-simple
>> cxf-rt-databinding-xmlbeans
>> cxf-rt-ws-security
>> cxf-rt-ws-policy
>> cxf-rt-ws-addr
>> cxf-rt-ws-rm
>> but what we need are just following 13:
>> cxf-api
>> cxf-common-utilities
>> cxf-rt-core
>> cxf-rt-bindings-xml
>> cxf-rt-bindings-soap
>> cxf-rt-databinding-jaxb
>> cxf-rt-frontend-jaxws
>> cxf-rt-frontend-simple
>> cxf-rt-transports-http
>> cxf-rt-ws-addr
>> cxf-rt-ws-security
>> cxf-tools-common
>> cxf-tools-java2ws
>> You can see the "cxf-tools-common" & "cxf-tools-java2ws" are not
>> included by "cxf-bundle-minimal".
>> The "cxf-bundle" contains all the 13 components we need, but it
>> will import a great many other components, which will not only
>> bring a lot of jobs to exclude un-necessary jars when build our cxf
>> plugins, but also increase the size of new G3.0.
>>
>> So I see 2 ways to pull cxf bundles in:
>> 1. Use the cxf-bundle-minimal and make a new private bundle that
>> contains "cxf-tools-common" & "cxf-tools-java2ws" in Geronimo.
>> 2. Make a private cxf bundle customized by ourselves which only
>> contains the above 13 packages
>>
>> I suggest the approach #2. Any comments?
>>
>> Thanks
>>
>> --
>> Lei Wang (Rex)
>> rwonly AT apache.org
>
Re: cxf bundles
Posted by David Jencks <da...@yahoo.com>.
1. is there a need for the 2 tools jars to be in the same bundle as
the minimal bundle? Maybe we could use minimal + the other two jars
individually bundleized.
2. do the other jars in the minimal bundle provide generally useful
functionality?
3. how much is exposed unnecessarily if the individual jars were
bundleized?
4. Have we approached cxf about creating the appropriate bundles
there? Its pretty unlikely we will be ready to release g 3 before
they do another release.
thanks
david jenkcs
On Jan 13, 2010, at 7:30 PM, Rex Wang wrote:
> Hi
>
> I am looking into "GERONIMO-5016 Enable cxf in Geronimo 3.0". There
> is an issue I think need discuss first before I drive further. Not
> like axis, the cxf community did not release their jars as a bundle.
> Instead they made 2 separate distributions named "cxf-bundle" and
> "cxf-bundle-minimal" to contain the different set of their
> components. For instance:
> The cxf-bundle-minimal bundle contains 17 components:
> cxf-common-utilities
> cxf-common-schemas
> cxf-api
> cxf-rt-core
> cxf-rt-transports-http
> cxf-rt-transports-http-jetty
> cxf-rt-transports-jms
> cxf-rt-bindings-soap
> cxf-rt-databinding-aegis
> cxf-rt-databinding-jaxb
> cxf-rt-frontend-jaxws
> cxf-rt-frontend-simple
> cxf-rt-databinding-xmlbeans
> cxf-rt-ws-security
> cxf-rt-ws-policy
> cxf-rt-ws-addr
> cxf-rt-ws-rm
> but what we need are just following 13:
> cxf-api
> cxf-common-utilities
> cxf-rt-core
> cxf-rt-bindings-xml
> cxf-rt-bindings-soap
> cxf-rt-databinding-jaxb
> cxf-rt-frontend-jaxws
> cxf-rt-frontend-simple
> cxf-rt-transports-http
> cxf-rt-ws-addr
> cxf-rt-ws-security
> cxf-tools-common
> cxf-tools-java2ws
> You can see the "cxf-tools-common" & "cxf-tools-java2ws" are not
> included by "cxf-bundle-minimal".
> The "cxf-bundle" contains all the 13 components we need, but it will
> import a great many other components, which will not only bring a
> lot of jobs to exclude un-necessary jars when build our cxf plugins,
> but also increase the size of new G3.0.
>
> So I see 2 ways to pull cxf bundles in:
> 1. Use the cxf-bundle-minimal and make a new private bundle that
> contains "cxf-tools-common" & "cxf-tools-java2ws" in Geronimo.
> 2. Make a private cxf bundle customized by ourselves which only
> contains the above 13 packages
>
> I suggest the approach #2. Any comments?
>
> Thanks
>
> --
> Lei Wang (Rex)
> rwonly AT apache.org