RFC: New port for using Tomcat with jakarta-commons-daemon (jscv)

Herve Quiroz herve.quiroz at esil.univ-mrs.fr
Mon Jul 4 13:33:18 GMT 2005


Hi Martin,

[ Various Tomcat-realted PRs submitters CC'ed, as well as the Tomcat
ports maintainer -- PR list at the end of the message ]

[ Attached to this message is a new shar, again supplied by Martin, but
hopefully without tabs and \n messed up in the process ]

I tested your port, and have a little remark: there can only be one
tomcat server running at a time using your rcNG script. I don't know if
this is a problem, as I don't know how much it is useful to run several
different versions of tomcat at once on the same machine. I have a
workaround for this issue, though. See below.

OTOH, I find the script quite simple to use and pass arguments via
rc.conf. I would really like to hear from the Tomcat users/maintainer
community though.

So my plan for now is the following:

- Rework the sysutils/jakarta-commons-daemon port and add it in the
  ports tree.
- Add a rcNG/Tomcat port: sysutils/jakarta-tomcat-rncg. This port would
  be bound to (but not depend on -- see below) a particular Tomcat port
  (which user may pick at build/install), and would set an according
  PKGNAMESUFFIX (e.g.  "50", "55") so that we could install several
  startup scripts for the many installed Tomcat ports.
- Have each Tomcat port in the tree depend on an according
  jakarta-tomcat-rncgXX port. That's why we don't want the tomcat-rcng
  ports to depend on a particular Tomcat port (cyclic dependency).

The first step will be straightforward, and don't really need feedback
from the Tomcat community. This port would be a nice addition to the
ports tree anyhow. The 2nd and 3rd steps both depend on the feedback
from users and maintainers. Hence, while I proceed with the first step,
I would be glad if people could comment on the next ones, so we don't
end up implementing something worthless...

The PKGNAMESUFFIX and "multiple tomcat launchers" approach described in
step 2 means that there will be different configuration settings, each
specific to one tomcat version (e.g. "tomcat50_enable",
"tomcat55_javahome"...).

However, we need to discuss the patch-jsvc-unix.c issue. I don't think
it is good to disable some FreeBSD-specific code in a generic utility
port such as jakarta-commons-daemon. But you seem to think this is
useful in our Tomcat/rcNG case. Hence, here again I need feedback and/or
contribution or we will probably have to have two distinct ports
(jakarta-commons-daemon and jakarta-tomcat-launcher), possibly with the
later importing stuff from the former.

Now, regarding the required contributions, I would say that I can
probably implement the 3 forecited steps myself, given I already have
all I need with the shar you submitted. I just need to know who wants to
become maintainer(s) of the various incoming new ports.

A lot of work and energy has already been put into finding a way to pass
arguments to Tomcat, and to handle the lifecycle of the Tomcat daemon
(see PRs list at the end of the message), so let's review the various
submissions and implement something so we can move on with this issue.

Herve


PS: FYI, a repost of the list of related PRs (to my knowledge):

http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/38018
http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/38020
http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/59571
http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/74344
http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/75143


On Sun, Jun 26, 2005 at 02:01:41PM +0200, Martin Jakob wrote:
> > Anyway, your current port provides a good base to work on. There are
> > several other approaches to the "Tomcat launcher and run-time argument
> > passing" that have been suggested or implemented so far. I am not a true
> > user of Tomcat myself, so I can't really comment on their respective
> > ease of use, and viability. So I would be glad if all people concerned
> > by such issue could report on the various approaches so far.
> > 
> > IMHO, the point is that we need a separate port to implement this Tomcat
> > launcher so that we don't replicate the work in each Tomcat port.
> > Moreover, having such a separation (tomcat / tomcat-launcher) would
> > allow for several kinds of launcher to be part of the ports tree, in
> > case we would not agree on a particular one.
> 
> I agree. Splitting it in a generic port (jakarta-commons-daemon) and a
> "specialized" one, to start tomcat is a 
> 
> better solution. The tomcat-launcher port  (hm, maybe a suitable  name?) 
> would then only consist of the tomcat 
> 
> startscript for /usr/local/etc/rc.d
> 
> > I will test your patch and comment on it ASAP.
> 
> Thanks, i am looking forward to it. Any suggestions are very welcome!


More information about the freebsd-java mailing list