Hello,

I've started packaging a few (some very old) java packages required for vnu 
and its dependencies.

xp + servlet api 2.2 -> jigsaw -> css-validator -> validator.nu

Questions:

=== [servlet api 2.2]  src:jakarta-servletapi-2.2 ? ===

The only sources I have found that support servlet API 2.2 is the one shipped 
in tomcat3 [1]. At that time, the produced jar war labelled "servlet.jar" 
Given that in the meantime there haven been newer versions of that API and 
multiple servlet-api jars in the archive (especially servlet-api-3.1.jar, 
servlet-api.jar, jakarta-servlet-api.jar...):
    - what name should I use for the source package? I'm using "src:jakarta-
servletapi-2.2" for now.
    - what name should I use for the binary package? I'm using 
"bin:libjakarta-servletapi-2.2-java" for now. But maybe libservlet-api-2.2-
java would be better?
    - what filename should I use for the jar? Although default name is 
servlet.api, I renamed it to "jakarta-servletapi-2.2-servlet.jar" for now 
which then becomes suffixed by version. But I wonder if I shouldn't use 
servlet-api-2.2.jar (without link to servlet-api.jar) or just servlet.jar.
    - should it also be made availabe through maven repo like the artifacts at 
[2] ? It seems it was requested in [3]. In that case, how does one do this for 
a non 'maven-ized' package?

[1] https://archive.apache.org/dist/tomcat/tomcat-3/src/
[2] https://mvnrepository.com/artifact/javax.servlet/servlet-api/2.2
[3] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=902530

=== |jigsaw] src:jigsaw ===

Package produces 3 jars. One of them is used in other packages (and published 
on maven), others are internal (and not on maven). Should I have 1 binary 
package for each like this (or just put all 3 in the 1st one like I'm doing 
presently)?

- libjigsaw-java (/usr/share/java/jigsaw.jar)
- jigsaw-jigadmin-java (/usr/share/jigsaw/classes/jigadmin.jar or rename to 
jigsaw-jigadmin.jar)
- jigsaw-jigedit-java (/usr/share/jigsaw/classes/jigedit.jar or rename to 
jigsaw-jigedit.jar ?)

At the moment I ship all 3 in bin:jigsaw-java and install to
    /usr/share/jigsaw/classes/jigsaw.jar
    /usr/share/jigsaw/classes/jigadmin.jar
    /usr/share/jigsaw/classes/jigedit.jar

The other binary packages would be:
- bin:jigsaw (the main package)
- bin:jigsaw-doc (the javadoc for libjigsaw-java)
- bin:jigsaw-jni (contain native libary)

As per the server configuration files (the "Jigsaw" dir of orig.tar), I wonder 
if it is worth to install them. I have no interest in them because I only need 
the jar (which contains required classes) and I don't know if someone would 
really want to run this old and unmaintained (no update since 2007) http 
server on Debian nowadays. Presently I'm installing them (to /usr/share/
jigsaw/Jigsaw), but leave the configuration and the final steps of 
installation to the user. I see two alternatives:
 1. Just ship the preconfigured "Jigsaw/" dir in a compressed form to /usr/
share/jigsaw/Jigsaw.tar.xz and let the user manage it themself and suggest 
unpacking it to their desired location be it /var/lib/jigsaw, /srv/jigsaw and 
setup the server on that base.
 2. Ship the preconfigured "Jigsaw/" dir uncompressed in bin:jigsaw-[server-] 
example under /usr/share/jigsaw/[server-]example. The user can then make a 
copy, and remove the example package.
What are your thoughts?

=== [css-validator] src:css-validator ===

Upstram permits to build jar and war.

It can be invoked by command line, and is also a webapp (usable in jigsaw, but 
also tomcat9/jetty9 (support for the **javax.servlet** package/api is 
required).

For the **jar**, given that on the one hand it is an application, and on the 
other hand that it is used as a dependency for vnu, should it go to /usr/
share/java/css-validator.jar or to /usr/share/css-validator/css-validator.jar 
(which is my present choice)? Shipped in bin:libcss-validator-java or bin:css-
validator (present choice)?

How would you ship the **war** or **webapp**? At the moment I'm doing like 
this: 
- bin:css-validator-war (/usr/share/css-validator/css-validator.war, having an 
empty WEB-INF/lib)
- bin:css-validator-webapp (war extracted into /usr/share/css-validator/css-
validator/, where I have symbolic links to the jar deps in /usr/share/css-
validator/css-validator/WEB-INF/lib). The user then has to add that dir to 
tomcat(9) which will dereference the link, or copy the content by 
dereferencing the links to jetty(9). Both approaches work.

URLs to the repositories:

https://salsa.debian.org/bastif/xp
https://salsa.debian.org/bastif/jakarta-servletapi-2.2
https://salsa.debian.org/bastif/jigsaw
https://salsa.debian.org/bastif/css-validator

Please keep me in copy of your reply since I'm not subscribed to the list.

Regards
Fab



Reply via email to