[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Handling Java Webapps in Debian and Fedora



Niels Thykier <niels@thykier.net> writes:

> Recently we created the DEP-7 draft and just today I was pinged over IRC
> by a Fedora developer about it. It turns out that Fedora has been
> debating how to deal with Java Webapps as well. Perhaps it would be
> prudent to cooperate with Fedora on this.

That would be great.  Unfortunately, I'm completely swamped by my day job
and on pseduo-VAC from Debian through the end of the year, so won't be
able to help with that process, at least until next year.

> They intend take this up on their next Java IRC meeting and we are
> invited to show up as well. The time and date for the meeting has not
> been decided yet[1]. Have a look at [2] for more information.

> I was also asked the following questions about DEP-7:
>  - ""How do you handle the servlet specific versions? i.e. putting
> servlet 2.4, servlet 2.5 and servlet 3.0 exploded wars in the same
> directory? There needs to be some subdirectories for them or at least
> some marker so e.g. jetty 6 don't try to load servlet 3.0 webapps.""

>  -  ""Has it been checked that major container implementations - tomcat
> jetty support more than one webapps directory? because if we have to
> hack them for that it's gonna get ugly. [...] more than one webapp
> directory is needed because some webapps (e.g.  tomcat-manager) needs to
> go into tomcat webapp dir only.""

I think both of these can be handled fairly easily with the scheme
described in DEP-7, because the whole key to the DEP-7 proposal is that it
doesn't put any webapp directly into the webapps directory for a servlet
engine unless it's installed for that servlet.  So there's no need for the
engines to support multiple directories; they each need to have their own
directory and the infrastructure will deploy into that directory exactly
those webapps that are compatible with and enabled for that servlet
engine.  Similarly, the deployment tool can check whether the servlet
version is compatible with the servlet engine to which the servlet is
being deployed.

It's exactly for solving problems like this that I propose that layer of
indirection on top of the actual servlets, so that there's a program that
can inspect the servlet, inspect the installed servlet engines, and
selectively deploy as appropriate.

-- 
Russ Allbery (rra@debian.org)               <http://www.eyrie.org/~eagle/>


Reply to: