-1

I tried to setup apache jackrabbit-standalone-2.20.5.jar on a ubuntu:latest docker image with

apt install default-jdk

openjdk version "11.0.15" 2022-04-19
OpenJDK Runtime Environment (build 11.0.15+10-Ubuntu-0ubuntu0.22.04.1)
OpenJDK 64-Bit Server VM (build 11.0.15+10-Ubuntu-0ubuntu0.22.04.1, mixed mode, sharing)

and

java -jar jackrabbit-standalone-2.20.5.jar

Welcome to Apache Jackrabbit!
-------------------------------
Using repository directory jackrabbit
Writing log messages to jackrabbit/log
Starting the server...
Apache Jackrabbit is now running at http://localhost:8080/

But I get an 500 "Server Error" - what is the problem?

Problem accessing /. Reason:

Server Error

Caused by:

org.apache.jasper.JasperException: PWC6033: Error in Javac compilation for JSP

PWC6199: Generated servlet error: package org.apache.jasper.runtime does not exist

PWC6199: Generated servlet error: package org.apache.jasper.runtime does not exist

PWC6199: Generated servlet error: cannot find symbol symbol: class JspFactory location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: package org.glassfish.jsp.api does not exist

PWC6199: Generated servlet error: cannot find symbol symbol: class HttpServletRequest location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: cannot find symbol symbol: class HttpServletResponse location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: cannot find symbol symbol: class ServletException location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: package javax.servlet does not exist

PWC6199: Generated servlet error: package javax.servlet.http does not exist

PWC6199: Generated servlet error: package javax.servlet.jsp does not exist

PWC6199: Generated servlet error: cannot find symbol symbol: variable JspFactory location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: cannot find symbol symbol: class PageContext location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: cannot find symbol symbol: class HttpSession location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: cannot find symbol symbol: class ServletContext location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: cannot find symbol symbol: class ServletConfig location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: cannot find symbol symbol: class JspWriter location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: cannot find symbol symbol: class JspWriter location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: cannot find symbol symbol: class PageContext location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: package org.glassfish.jsp.api does not exist

PWC6197: An error occurred at line: 16 in the jsp file: /index.jsp PWC6199: Generated servlet error: package org.apache.jackrabbit.j2ee does not exist

PWC6199: Generated servlet error: cannot find symbol symbol: class SkipPageException location: class org.apache.jsp.index_jsp

PWC6199: Generated servlet error: cannot find symbol symbol: class ServletException location: class org.apache.jsp.index_jsp

at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:129)  at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:299)  at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:392)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:453)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:625)  at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)  at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377)
at  rg.eclipse.jetty.jsp.JettyJspServlet.service(JettyJspServlet.java:102)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at  org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:811)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:586)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:142)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:594)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:222)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1126)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:514)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:184)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1060)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:140)
at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:191)
at org.eclipse.jetty.server.Dispatcher.forward(Dispatcher.java:72)
at org.eclipse.jetty.servlet.DefaultServlet.doGet(DefaultServlet.java:587)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:811)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:586)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:142)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:576)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:222)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1126)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:514)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:184)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1060)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:140)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:96)
at org.eclipse.jetty.server.handler.RequestLogHandler.handle(RequestLogHandler.java:94)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:96)
at org.eclipse.jetty.server.Server.handle(Server.java:498)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:258)
at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
at java.base/java.lang.Thread.run(Thread.java:829)

BTW: jackrabbit-standalone-2.18.0.jar brings up

HTTP ERROR: 503

Problem accessing /. Reason:

    Service Unavailable

Powered by Jetty://

I only managed to setup 2.17 with debian10 and openjdk-8-jdk

1 Answers1

0

After dealing lots of hours with the problem I found now a solution that works:

docker run -it -p 8080:8080 --name my-jackrabbit ubuntu:16.04 bash

Then following these guide to install tomcat 8: https://www.liquidweb.com/kb/install-apache-tomcat-8-ubuntu-16-04/ (but with an current version)

apt update && apt install wget
mkdir /opt/tomcat && cd /opt/tomcat
wget https://dlcdn.apache.org/tomcat/tomcat-8/v8.5.81/bin/apache-tomcat-8.5.81.tar.gz
tar xvzf apache-tomcat-8.5.81.tar.gz
apt-get install default-jdk

then do the following

cd /opt/tomcat/apache-tomcat-8.5.81/lib
wget https://repo1.maven.org/maven2/javax/jcr/jcr/2.0/jcr-2.0.jar
cd /opt

after that

apt install vim
vim ~/.bashrc

=> go to end and add:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
export CATALINA_HOME=/opt/tomcat/apache-tomcat-8.5.81

after that do

. ~/.bashrc
$CATALINA_HOME/bin/startup.sh

If you got a 200 on http://localhost:8080 and the tomcat default page go on

rm -rf /opt/tomcat/apache-tomcat-8.5.81/webapps/ROOT/*
wget http://archive.apache.org/dist/jackrabbit/2.20.5/jackrabbit-webapp-2.20.5.war
apt update && apt install unzip
unzip jackrabbit-webapp-2.20.5.war -d /opt/tomcat/apache-tomcat-8.5.81/webapps/ROOT/
cd $CATALINA_HOME/bin/ && ./catalina.sh stop && ./catalina.sh start && cd -

Now jackrabbit is greeting you with a warm welcome on http://localhost:8080/