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

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

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

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

Q&A

1回答

2330閲覧

Axis1.4とJDK1.8の組み合わせで発生するConcurrentModificationExceptionを回避したい

退会済みユーザー

退会済みユーザー

総合スコア0

Java

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

0グッド

0クリップ

投稿2021/11/24 10:03

編集2021/11/25 00:29

環境・前提条件

Webサービスが稼働しているサーバーの老朽更新を実施しました。
実行環境を以下の通り変更しています。
また、WebサービスにAxis1.4を利用しています。

変更前変更後
Windows Server 2008 R2Windows Server 2019
JDK 1.8.0_45Amazon Corretto 1.8.0_292
Tomcat5.5Tomcat 9.0
PostgreSQL 8PostgreSQL 12

発生しているエラー

クライアントからWebサービスの処理をcallすると、java.util.ConcurrentModificationExceptionが発生します。
※すみません。ログの掲載ができません。

実現したいこと

調べたところ、JDK1.8とAxis1.4の組み合わせでConcurrentModificationExceptionが発生することが分かりました。
対応工数を抑えるため、以下のサイトを参考にAxis1.4.1を利用するか、Axis1.4をパッチするかで検討したいと考えています。

【参考】
https://ja.pays-tarusate.org/571989-axis-client-1-4-with-XCUBQS
https://stackoverflow.com/questions/52218759/axis-client-1-4-with-jdk-8-gives-org-apache-axis-axisfault-java-util-concurrent

お伺いしたいのは以下2点です。

  • Axis1.4.1はどちらから取得できますでしょうか。
  • 参考サイトの方法で解決するものでしょうか。

他案など、検証しているサイトや過去実績がありましたら、情報をご提供頂けますと幸いです。

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

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

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

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

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

guest

回答1

0

はじめまして。
初めての投稿です。

同じ問題を抱えておりまして、問題が解決できましたので投稿させていただきます。

質問の文章中にご参考にされていたサイトで対処が可能です。
対応した内容は、以下の通りです。

1)apacheのリポジトリtagsからaxis1.4のソースを入手

2)パッチが当たったソースを入手
こちらも、apachekのりぽじとりから、trunk/axis-rt-coreのソースを入手
(対象ファイルは、/org/apache/axis/description/JavaServiceDesc.javaでしたよね。)

3)コンパイル環境を準備
jre1.4、ant1.6
当方は、古いEclipse(3.5)を準備し、ant1.6は別途ダウンロード
新規にJavaプロジェクトを作成し、axis1.4ソースを取り込む
パッチの当たったソースを上書き
(EclipseのJavaプロジェクトは、ライブラリが不足しているのでエラーあり)
(antでビルドできればよいので無視しています)

4)コンパイルJDK1.8でコンパイル可能な修正を加える
コンパイルはjdk1.4で実施するが、念のため、、、今後の為。。。ということで。
(対象ファイルは、/org/apache/axis/i18n/ProjectResourceBundle.javaですね。)
j2ee-1.4.jarもlibの下に追加しています。
(j2ee-1.4.jarも別途ダウンロードしています)
こちらは、お好みで対応です。

5)ダイナミックなSSL接続をしたかったので別途関連ファイルを追加
こちらは、お好みで対応です。

6)Eclipseにてbuild.xmlをAntビルド実行
antビルドの設定で、jreをjre1.4、antホームをant1.6の展開パスに設定
/build/lib/axis.jarが作成されます。

7)実行環境で動作確認
java8のプロセスが動作する常駐プログラムで、作成したaxis1.4ライブラリを投入し動作確認。
アクセスが集中してもエラーが発生しないことが確認できました。

という感じで対処してみました。
ご参考になればと思います。

投稿2022/04/14 07:50

iroiro_acount

総合スコア4

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

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

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

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問