質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Apache Tomcat

Apache TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。

Q&A

0回答

1580閲覧

Mayaa を Docker で起動しようとすると java.lang.ArrayIndexOutOfBoundsException: 20993 が出るのを直したい

ytyng

総合スコア24

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Apache Tomcat

Apache TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。

0グッド

0クリップ

投稿2020/12/31 03:11

編集2020/12/31 04:57

前提・実現したいこと

Java の Mayaa テンプレートエンジンの動作確認をしたいため、 Alpine linux 3.10 + Tomcat 7 の Docker イメージに war をインストールして起動を試みました。

http://127.0.0.1:8080/ をリクエストすると、Tomcat のデモトップページは表示できるので Java/Tomcat 自体は動いています。ですが、war をデプロイした http://127.0.0.1:8080/mayaa/ にリクエストすると、 HTTP ステータス 500 (java.lang.ArrayIndexOutOfBoundsException: 20993) となります。

この URL を、エラーなく表示させたいです。

Mayaa の war については、こちらの公式ドキュメントを元にインストールしました。

http://mayaa.seasar.org/documentation/install.html

環境

mac os Big Sur 11.1

Dockerfile

Dockerfile

1FROM alpine:3.10 2 3ENV TOMCAT_MAJOR=7 \ 4 TOMCAT_VERSION=7.0.69 \ 5 TOMCAT_HOME=/opt/tomcat \ 6 CATALINA_HOME=/opt/tomcat \ 7 CATALINA_OUT=/dev/null 8 9RUN mkdir -p /opt && \ 10 apk --no-cache add openjdk8-jre curl && \ 11 curl -jksSL -o /tmp/apache-tomcat.tar.gz http://archive.apache.org/dist/tomcat/tomcat-${TOMCAT_MAJOR}/v${TOMCAT_VERSION}/bin/apache-tomcat-${TOMCAT_VERSION}.tar.gz && \ 12 tar -C /opt -xvzf /tmp/apache-tomcat.tar.gz && \ 13 ln -s /opt/apache-tomcat-${TOMCAT_VERSION} ${TOMCAT_HOME} && \ 14 rm -rf /tmp/* /var/cache/apk/* 15 16RUN curl -jksSL -o ${TOMCAT_HOME}/webapps/mayaa.war http://mayaa.seasar.org/downloads/mayaa-getting-started-1.1.32.war 17 18EXPOSE 8080 19ENTRYPOINT [ "/opt/tomcat/bin/catalina.sh", "run" ]

起動スクリプト build-run.sh

build

1#!/usr/bin/env zsh 2 3set -eu 4 5cd "$(dirname $0)" || exit 6 7image_name=ytyng/mayaa-test 8container_name=mayaa-test 9 10docker build . --ssh default -t ${image_name} -f Dockerfile 11 12docker run \ 13 --rm -it \ 14 -p 8080:8080 \ 15 --name=${container_name} ${image_name} "$@"

発生している問題・エラーメッセージ

build-run.sh を実行した時に出るログ (イメージは既にキャッシュ済み)

[+] Building 0.1s (7/7) FINISHED => [internal] load build definition from Dockerfile 0.0s => => transferring dockerfile: 37B 0.0s ... 文字数オーバーとなったので省略 ... INFO: Deploying web application directory /opt/apache-tomcat-7.0.69/webapps/ROOT Dec 31, 2020 3:00:06 AM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deployment of web application directory /opt/apache-tomcat-7.0.69/webapps/ROOT has finished in 27 ms Dec 31, 2020 3:00:06 AM org.apache.coyote.AbstractProtocol start INFO: Starting ProtocolHandler ["http-bio-8080"] Dec 31, 2020 3:00:06 AM org.apache.coyote.AbstractProtocol start INFO: Starting ProtocolHandler ["ajp-bio-8009"] Dec 31, 2020 3:00:06 AM org.apache.catalina.startup.Catalina start INFO: Server startup in 1966 ms

ブラウザで http://127.0.0.1:8080/mayaa/ にリクエストした時に追加で出るログ

文字数オーバーで記載できなかったため gist に書きました
https://gist.github.com/ytyng/172dff5f443ef33fa5fd5a656796bb64

SEVERE: Exception while handling error, 20993 java.lang.ArrayIndexOutOfBoundsException: 20993 at org.mozilla.javascript.net.sf.retrotranslator.runtime.asm.ClassReader.readClass(ClassReader.java:1572) at org.mozilla.javascript.net.sf.retrotranslator.runtime.asm.ClassReader.accept(ClassReader.java:341) at org.mozilla.javascript.net.sf.retrotranslator.runtime.asm.ClassReader.accept(ClassReader.java:300) at org.mozilla.javascript.net.sf.retrotranslator.runtime.impl.ClassDescriptor.<init>(ClassDescriptor.java:66) ...文字数制限のため省略... at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:748)

イメージ説明

どうぞよろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問