cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Glen Mazza <>
Subject Re: [Proposal] Sample Improvement
Date Fri, 17 Aug 2007 11:50:33 GMT
Am Freitag, den 17.08.2007, 13:18 +0800 schrieb Jeff.Yu:

> Glen Mazza wrote:
> >>>
> >>> I think the listing of jar files needed should be explicitly listed via
> >>> <includes/> (even if there are 40 of them--remember this is only done
> >>> once in the common_build.xml), not *all* included but just having a few
> >>> left out via <excludes/>.  This also will provide us a crisp,
> >>> authoritative list of precisely what is needed to run CXF.  Using
> >>> excludes over time might result in unneeded jars getting into the WAR
> >>> files (i.e., we add a JAR file to the /lib directory but forget to
> >>> exclude it here.)
> >>>   
> >>>       
> >> Well, I don't think we need to list them, because in fact we include *all* the
jars. Allowing me explain a little bit on this.
> >> Currently, we have two flavors CXF jar, one is all-in-one jar, called cxf-2.1-incubator.jar;
the other is module-based jar, which is listed in the "${cxf.home}/modules",
> >> for the WARs, we used the module-based jars, so we need to exclude the all-in-one
> >> The reason why I excluded those two servlet jars, because we deploy it into
a servlet-container, there is no need to have these two servlet jars. 
> >>
> >>     
> >
> > Hmmm, in the lib directory there is a "needed jars" file, which
> > specifies a much smaller subset of all the jars in lib.
> >
> > The way I see it, is as follows, is you just need something like this:
> > <war>
> > ...
> > <lib dir="${lib.dir}">
> >    <include name="abc.jar"/>
> >    <include name="bcd.jar"/>
> >    ...
> > </lib>
> > ...
> > </war>
> >
> > For the time being, best to just include the jars needed by *any* of the
> > samples.  Later, perhaps, we can think of a cleaner design where we can
> > bring in JARs required of *all* samples, plus a few extra
> > sample-dependent jars, depending on the sample.
> >
> >
> >   
> The reason that why you think the "WHICH_JARS" in the lib lists much smaller jars, is
it uses the all-in-one jar as I said before. Well, I can update it to use the the all-in-one
> jar instead of module-based jars for the simplicity, but I still think list 40 more jars
is not a good idea. If we want to make users clear which jars will be needed for their usage,

> I think that is why the "WHICH_JARS" existed.

With the exception of these jars in the cxf/lib directory:
(1) all-in-one jar
(2) the servlet-api jar
(3) the geronimo jar

Is it *really* the case that every other JAR in this directory needs to
go into the WAR's WEB-INF/lib directory for the servlet to operate?
(For example, do we really need the jetty jars in the WAR file?  The
velocity JARs?  The WHICH_JARS file indicates that we do not.)

The fact that there are already exceptions above (1-3) suggests to me
that the cxf/lib directory serves purposes other than as a pure
repository of JAR files necessary for a WAR to operate.  That's why an
explicit listing would have been helpful--a listing also allows us to do
a further analysis of which JARs we can take out, and it also provides
safety in case someone places a jboss or a glassfish jar in this lib
directory (it would not copy over, because it was not added to this
<include/> list.)

Perhaps we can look at this issue again later.


View raw message