プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理 http://pc11.2ch.net/hp/
Webプログラミング http://pc11.2ch.net/php/
をご利用下さい。
よくある質問
・「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
(p)ttp://www.wikiroom.com/java/?path,classpath
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
・String に == は使うな。equals() を使え。※
質問時の心得
・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。
・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。
前スレ
★★Java質問・相談スレッド182★★
https://mevius.5ch.net/test/read.cgi/tech/1542595026/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
★★Java質問・相談スレッド183★★
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 7f9f-FhGp)
2020/05/06(水) 22:12:08.99ID:q8N1X/Ij0795デフォルトの名無しさん (ワッチョイ bf02-EJz/)
2021/04/22(木) 14:14:44.07ID:zJmwsByo0796デフォルトの名無しさん (ワッチョイ e2ad-On6t)
2021/04/23(金) 00:56:44.77ID:bQxdW3Mu0797デフォルトの名無しさん (ワッチョイ 9b5f-APZP)
2021/04/23(金) 23:47:49.67ID:4MPjFjnd0 >>796
いまでも32ビットのコンピュータやOSはたくさんあるだろうが。
いまでも32ビットのコンピュータやOSはたくさんあるだろうが。
798デフォルトの名無しさん (ワッチョイ 9b5f-APZP)
2021/04/23(金) 23:49:39.71ID:4MPjFjnd0 32ビット環境で動かすつもりなのに64ビット環境で作っているのはミスを誘引する。
799デフォルトの名無しさん (ワッチョイ b202-2k7y)
2021/04/24(土) 00:02:36.23ID:q4HOZCVi0800デフォルトの名無しさん (ワッチョイ 6e61-T6Cp)
2021/04/24(土) 07:19:54.01ID:jio/enjn0 細かい点としてlong/doubleの上下位ビットのスレッド分離問題はでてくるかもしれない。
もっとも、32bit版JVMでも分離するような実装が存在するかどうか知らんが、仕様上は何も規定されてなかったはずなので。
もっとも、32bit版JVMでも分離するような実装が存在するかどうか知らんが、仕様上は何も規定されてなかったはずなので。
801デフォルトの名無しさん (ワッチョイ 9b5f-APZP)
2021/04/25(日) 22:25:57.97ID:Cso9+uky0 >>799
緩い型を使っていたり、メモリのアドレスに依存しているものを使っていた場合、32ビット環境で動かすとやはり想定外のことが起きる。JavaのVM仕様の解釈によっても異なる。
緩い型を使っていたり、メモリのアドレスに依存しているものを使っていた場合、32ビット環境で動かすとやはり想定外のことが起きる。JavaのVM仕様の解釈によっても異なる。
802デフォルトの名無しさん (ワッチョイ 849c-UryE)
2021/04/25(日) 23:01:07.05ID:eJC3H6ar0 緩い型ってなに?
JNIならともかくJavaは型のサイズ明確に決まってるよ
intは32ビット、longは64ビットといった具合にね
型サイズまで処理系依存のC/C++とは違うのだよ
JNIならともかくJavaは型のサイズ明確に決まってるよ
intは32ビット、longは64ビットといった具合にね
型サイズまで処理系依存のC/C++とは違うのだよ
803デフォルトの名無しさん (ワッチョイ b202-2k7y)
2021/04/25(日) 23:03:35.92ID:1lzxcbvy0 >>801
なるほど
「緩い型」とか「メモリのアドレスに依存」というと、それはつまり何なのでしょう
JNIでCプログラムを呼び出す場合、の話なのでしょうかね
あとVM仕様の解釈の違いの差異というと、何があるのでしょう
なるほど
「緩い型」とか「メモリのアドレスに依存」というと、それはつまり何なのでしょう
JNIでCプログラムを呼び出す場合、の話なのでしょうかね
あとVM仕様の解釈の違いの差異というと、何があるのでしょう
804デフォルトの名無しさん (ワッチョイ 9b5f-APZP)
2021/04/26(月) 00:43:15.26ID:NgG9HQ7I0 JavaはJNIを必ず経由するわけではありません。
805デフォルトの名無しさん (ワッチョイ e2ad-On6t)
2021/04/29(木) 17:17:21.49ID:YN7Pg05+0 >>797
あるけど、それが何か?
あるけど、それが何か?
806デフォルトの名無しさん (ワッチョイ dfbf-BDeo)
2021/05/02(日) 15:43:57.36ID:0nb/oYf90 JavaGoldって紫本を読んで黒本を解いていく地道な勉強ルートしかないですか?
なかなかモチベがあがらないし過去問の正解率も思うように上がらないので
もっと手軽な動画講座とかないかなと思ってるんだけども
勉強のためなのでお金はある程度出せます
なかなかモチベがあがらないし過去問の正解率も思うように上がらないので
もっと手軽な動画講座とかないかなと思ってるんだけども
勉強のためなのでお金はある程度出せます
807デフォルトの名無しさん (ワッチョイ bf89-YF1U)
2021/05/02(日) 16:51:31.68ID:JuDAr5160 解答に金出せるの?
808デフォルトの名無しさん (ワッチョイ a75f-OedE)
2021/05/03(月) 14:23:25.78ID:1BUpMinW0 >>806
黒本解いて、間違えた問題の解説に書いてある理屈を、自分の言葉で別にまとめる。
再度、問題を解くときは、問題を忘れる程度に間隔を開ける。
連続で間違える問題は理解ができていないか、間違って理解している。
正解と不正解が混じる問題は、理解が不完全。
連続で正解する問題は、理解できている。
正解不正解にかかわらず、解説を読んで仕様の理解が重要。
あと再受験無料キャンペーンを利用して、初回を緊張せずに受ける。
落ちても、追加費用が掛からないのは、精神的にかなり楽。
試験に合格するだけならSilver取れてれば、追加の学習時間は100時間未満でも十分可能だと思う。
モチベーションの維持は個人で異なるので、試験を申し込んで締め切りを設定して、自分を追い込む。
自分はSE8Goldは上記のように学習して合格した。
動画で見てインプットだけしても、記憶に定着しづらい。
動画見る時間でアウトプットしたほうが、トータルの学習時間は短く済むと思う。
黒本解いて、間違えた問題の解説に書いてある理屈を、自分の言葉で別にまとめる。
再度、問題を解くときは、問題を忘れる程度に間隔を開ける。
連続で間違える問題は理解ができていないか、間違って理解している。
正解と不正解が混じる問題は、理解が不完全。
連続で正解する問題は、理解できている。
正解不正解にかかわらず、解説を読んで仕様の理解が重要。
あと再受験無料キャンペーンを利用して、初回を緊張せずに受ける。
落ちても、追加費用が掛からないのは、精神的にかなり楽。
試験に合格するだけならSilver取れてれば、追加の学習時間は100時間未満でも十分可能だと思う。
モチベーションの維持は個人で異なるので、試験を申し込んで締め切りを設定して、自分を追い込む。
自分はSE8Goldは上記のように学習して合格した。
動画で見てインプットだけしても、記憶に定着しづらい。
動画見る時間でアウトプットしたほうが、トータルの学習時間は短く済むと思う。
809デフォルトの名無しさん (ワッチョイ dfbf-BDeo)
2021/05/04(火) 13:02:18.53ID:vEIu1ksM0810デフォルトの名無しさん (ワッチョイ df55-Ew5U)
2021/05/05(水) 15:55:35.45ID:OPDNplcn0 IntelliJ と Eclipse はどちらがおすすめですか?
811デフォルトの名無しさん (ワッチョイ bf89-sT2V)
2021/05/05(水) 16:39:34.48ID:A8P/sHlN0 お好きなように
812デフォルトの名無しさん (ワッチョイ 879c-A/rE)
2021/05/05(水) 18:17:49.48ID:oo/oqlpM0 有料版を買うまたはWeb開発しないならIntelliJ IDEA
無料でWeb開発したいならEclipseで我慢
無料でWeb開発したいならEclipseで我慢
813デフォルトの名無しさん (ワッチョイ bf01-oCIO)
2021/05/05(水) 18:18:55.21ID:72Et34kw0814デフォルトの名無しさん (ワッチョイ df55-Ew5U)
2021/05/05(水) 18:30:30.28ID:OPDNplcn0 >>811-813
ありがとうございました。
IntelliJを使おうと思います。
Sedgewick & Wayne『Algorithms 4th Edition』の公式ページではIntelliJが推薦されていて、
今まで使ったことがあるのは、Eclipseだったので迷いました。
ありがとうございました。
IntelliJを使おうと思います。
Sedgewick & Wayne『Algorithms 4th Edition』の公式ページではIntelliJが推薦されていて、
今まで使ったことがあるのは、Eclipseだったので迷いました。
815デフォルトの名無しさん (ワッチョイ df55-Ew5U)
2021/05/06(木) 17:41:56.48ID:LXhEt+K60 https://algs4.cs.princeton.edu/code/edu/princeton/cs/algs4/Graph.java.html
「public Graph(In in)」というコンストラクターの中に以下の例外処理のコードがあります。
catch (NoSuchElementException e) {
throw new IllegalArgumentException("invalid input format in Graph constructor", e);
}
「NoSuchElementException」という例外をキャッチしていますが、この例外はどこで投げられるのでしょうか?
「public Graph(In in)」というコンストラクターの中に以下の例外処理のコードがあります。
catch (NoSuchElementException e) {
throw new IllegalArgumentException("invalid input format in Graph constructor", e);
}
「NoSuchElementException」という例外をキャッチしていますが、この例外はどこで投げられるのでしょうか?
816デフォルトの名無しさん (ワッチョイ df55-Ew5U)
2021/05/06(木) 17:43:34.60ID:LXhEt+K60 readInt()でしょうか?
817デフォルトの名無しさん (ワッチョイ bf01-oCIO)
2021/05/06(木) 17:53:09.17ID:yYgm2/Q50 >>815
In.readIntのソース見ればわかるよね、ここで聞かなくても
In.readIntのソース見ればわかるよね、ここで聞かなくても
818デフォルトの名無しさん (ワッチョイ dfad-sT2V)
2021/05/06(木) 21:33:38.71ID:ajjDZVcw0 え? IntelliJ?
Kotlin もよろしく。
Kotlin もよろしく。
819あかさたな (ワッチョイ 2301-IY8Z)
2021/05/07(金) 03:43:56.84ID:nGcb4RSK0 質問させていただきます。
「A=1を何倍ずつしていくと5回目に10000を超えるか」
という問いに対するプログラムを作りたいのですが、以下の様に書いたら「5」と表示されてしまい、上手く行きませんでした。
まず考え方としては、nの5乗が10000を超える時のnの値を出力する為に、for分の方ではiが1〜5までnのべき乗を繰り返すプログラムを作成し、それにwhile文で「Aが10000以下の条件」をつけ、nの値を+1ずつ増やして判定し続け、最終的にAが10000を超えた時点でのnを出力するプログラム書いたつもりです。
どこが間違っていて何を訂正すれば良いのかヒントやアドバイスなどをご教授いただければ幸いです。
お願いいたします。
public static void main(String[] args) {
int n=1 ;
int A=1;
while(A<=10000) {
for(int i=1;i<=5; i++) {
A=A*n;
}
n++;
}
System.out.println(n);
}}
「A=1を何倍ずつしていくと5回目に10000を超えるか」
という問いに対するプログラムを作りたいのですが、以下の様に書いたら「5」と表示されてしまい、上手く行きませんでした。
まず考え方としては、nの5乗が10000を超える時のnの値を出力する為に、for分の方ではiが1〜5までnのべき乗を繰り返すプログラムを作成し、それにwhile文で「Aが10000以下の条件」をつけ、nの値を+1ずつ増やして判定し続け、最終的にAが10000を超えた時点でのnを出力するプログラム書いたつもりです。
どこが間違っていて何を訂正すれば良いのかヒントやアドバイスなどをご教授いただければ幸いです。
お願いいたします。
public static void main(String[] args) {
int n=1 ;
int A=1;
while(A<=10000) {
for(int i=1;i<=5; i++) {
A=A*n;
}
n++;
}
System.out.println(n);
}}
820デフォルトの名無しさん (ワッチョイ 2a9f-/iTb)
2021/05/07(金) 07:39:26.53ID:pvRHeq5B0 2箇所間違ってる
デバッガの使い方がわからないならprintlnをたくさん挿入してnやAがどう変遷しているか画面に表示してみればいい
デバッガの使い方がわからないならprintlnをたくさん挿入してnやAがどう変遷しているか画面に表示してみればいい
821デフォルトの名無しさん (ワッチョイ 2601-8aL7)
2021/05/07(金) 10:32:04.38ID:WFduYGps0 test
822デフォルトの名無しさん (ワッチョイ 2601-8aL7)
2021/05/07(金) 11:28:15.63ID:WFduYGps0823デフォルトの名無しさん (ワッチョイ d35f-oySJ)
2021/05/13(木) 21:45:18.04ID:RydS++Y10 Java勉強しようと思うんだけど、とりあえずSilverやGoldの勉強したほうがいいですかね(実際に受けるかはともかく)
何か作るというのも考えたのですが、体系的な知識を積むのには向いてないかな、と思ったり。
言語はC#やPHP、VB.netなら業務で使ったことがあります。
何か作るというのも考えたのですが、体系的な知識を積むのには向いてないかな、と思ったり。
言語はC#やPHP、VB.netなら業務で使ったことがあります。
824デフォルトの名無しさん (ワッチョイ ea02-jjtP)
2021/05/13(木) 22:00:00.42ID:T5qlXmy/0 SilverやGoldは
当たり前だけどJavaの試験なので
実際には使わない機能や書き方も試験に出てくる
つまり実務とはちょっと方向性が違う
「体系的」というのが何を意味するのかに寄るけど
比較的新しいバージョンの機能の問題もでない
当たり前だけどJavaの試験なので
実際には使わない機能や書き方も試験に出てくる
つまり実務とはちょっと方向性が違う
「体系的」というのが何を意味するのかに寄るけど
比較的新しいバージョンの機能の問題もでない
825デフォルトの名無しさん (ワッチョイ d336-Ir/C)
2021/05/13(木) 22:41:33.30ID:AIJP2zOw0 OracleのJava資格の勉強は、我流で趣味プログラムを書いたり
仕事で誰かのコードを加工させられているだけでは身につかないような
Javaの細かい仕様や機能を浅く広く知識として身につくって感じだな
Java8以降に登場した新しい書き方、ラムダ式や関数型インターフェースなんて
下手にレガシーな現場に放り込まれるよりは
Goldの自習でもしてた方が手っ取り早く身につくんじゃないかという気はするし
仕事で誰かのコードを加工させられているだけでは身につかないような
Javaの細かい仕様や機能を浅く広く知識として身につくって感じだな
Java8以降に登場した新しい書き方、ラムダ式や関数型インターフェースなんて
下手にレガシーな現場に放り込まれるよりは
Goldの自習でもしてた方が手っ取り早く身につくんじゃないかという気はするし
826デフォルトの名無しさん (ワッチョイ d336-Ir/C)
2021/05/13(木) 23:00:50.01ID:AIJP2zOw0 資格はあくまで言語仕様と標準ライブラリの知識にとどまるから
どんなフレームワークが栄えているのぞやとか
Javaでよく使われるデザインパターンだとか
おすすめのIDEやウェブコンテナはなんぞやとか
lombokとかjunitみたいな便利ツールとか
Javaで必要ないろんな周辺知識が抜け落ちるみたいなところはある
どんなフレームワークが栄えているのぞやとか
Javaでよく使われるデザインパターンだとか
おすすめのIDEやウェブコンテナはなんぞやとか
lombokとかjunitみたいな便利ツールとか
Javaで必要ないろんな周辺知識が抜け落ちるみたいなところはある
827デフォルトの名無しさん (アウアウカー Sac3-TNhT)
2021/05/27(木) 11:38:44.78ID:FO5QR3uia ClassCastExceptionについて教えてください。
AのサブクラスBが定義されていて、
AインスタンスをBにキャストすると、実行時にこの例外が発生すると思うのですが、どういった仕組みなのでしょうか。
B b = (B) new A();
b.method();
一行目で、bに代入されるアドレス先のインスタンスの型をなぜみにいってるんでしょうか?多相性を考えたときに二行目ではなく一行目で例外が発生することに違和感を覚えます!
AのサブクラスBが定義されていて、
AインスタンスをBにキャストすると、実行時にこの例外が発生すると思うのですが、どういった仕組みなのでしょうか。
B b = (B) new A();
b.method();
一行目で、bに代入されるアドレス先のインスタンスの型をなぜみにいってるんでしょうか?多相性を考えたときに二行目ではなく一行目で例外が発生することに違和感を覚えます!
828デフォルトの名無しさん (ワッチョイ 979c-XjYx)
2021/05/27(木) 11:44:55.97ID:/NO+foY50 多態性の向きを勘違いしてるんじゃない?
子Bは親Aとして振る舞えるけど、親Aは子Bとして振る舞えないよ
子Bは親Aとして振る舞えるけど、親Aは子Bとして振る舞えないよ
829デフォルトの名無しさん (アウアウカー Sac3-TNhT)
2021/05/27(木) 12:01:09.85ID:FO5QR3uia830デフォルトの名無しさん (アウアウカー Sac3-TNhT)
2021/05/27(木) 12:05:29.55ID:FO5QR3uia >>828
それは理解してます。
変数bからしたら実体が何かというのはBという型情報だけ知ってればよくて、メッセージ送信先で問題があれば例外が発生すればいいのにと思いました。
すみません、ダウンキャストって多相性とはちょっと違いますね。
それは理解してます。
変数bからしたら実体が何かというのはBという型情報だけ知ってればよくて、メッセージ送信先で問題があれば例外が発生すればいいのにと思いました。
すみません、ダウンキャストって多相性とはちょっと違いますね。
831デフォルトの名無しさん (ワッチョイ abf0-lZiV)
2021/05/27(木) 12:21:34.62ID:oFAbMDh80 メソッド呼び出しとかするたびに毎回型チェック発生って効率悪いでしょ、動的型言語なら仕方ないけど。
832デフォルトの名無しさん (ワッチョイ 3761-lZiV)
2021/05/27(木) 12:30:11.17ID:pbmUYQ560 >>830
早め早めにエラーが出ることの有用性を全く理解できないなら、Java使うのやめた方がいいよ。
早め早めにエラーが出ることの有用性を全く理解できないなら、Java使うのやめた方がいいよ。
833デフォルトの名無しさん (テテンテンテン MMb6-miPe)
2021/05/27(木) 12:31:02.63ID:M5xlP+xdM ダックタイピングに慣れてる人なんだね
Javaのような強い静的型付け言語では早期に型を確定させる
これはミスの早期発見が主目的だと思う
Javaのような強い静的型付け言語では早期に型を確定させる
これはミスの早期発見が主目的だと思う
834デフォルトの名無しさん (ワッチョイ 7601-L4y7)
2021/05/27(木) 12:39:07.12ID:2WTxyTqA0 代入時にエラーになるとしても実行しないと型の違いによるエラーがわからないのがつらいよね
ダウンキャストは禁止するべきだと思う、Javaはもっとハードボイルドになって欲しい
ダウンキャストは禁止するべきだと思う、Javaはもっとハードボイルドになって欲しい
835デフォルトの名無しさん (アウアウカー Sac3-TNhT)
2021/05/27(木) 12:55:02.44ID:rDD7tIjXa >>832
そもそも多相性の話とは違うという誤りがあったけど、この質問自体に有用性が理解できないって話はしてないだろ、文盲バカか?
もとになっているオブジェクト指向のモデルと、それを実現する言語設計の関係の話で、何を考えそのようにしているのか、どうバランスをとってるのかって話だろ。
みんなは有用性からそうしてるって教えてくれているけど、お前のは質が違うぞ。
日本語読めない人はプログラミングやめたほうがいいよ。
そもそも多相性の話とは違うという誤りがあったけど、この質問自体に有用性が理解できないって話はしてないだろ、文盲バカか?
もとになっているオブジェクト指向のモデルと、それを実現する言語設計の関係の話で、何を考えそのようにしているのか、どうバランスをとってるのかって話だろ。
みんなは有用性からそうしてるって教えてくれているけど、お前のは質が違うぞ。
日本語読めない人はプログラミングやめたほうがいいよ。
836デフォルトの名無しさん (ワッチョイ 979c-XjYx)
2021/05/27(木) 13:14:04.17ID:/NO+foY50837デフォルトの名無しさん (アウアウカー Sac3-TNhT)
2021/05/27(木) 13:23:10.93ID:rDD7tIjXa >>836
振る舞えないのでキャストできないということは、承知の上で、例外が発生する時機の疑問でした。
でも、例外はメッセージを受ける側で発生するので、無理なキャスト命令がきたら例外を発生するのは当たり前でした。
自分のアホな質問でした!という結論です。ごめんなさい。
振る舞えないのでキャストできないということは、承知の上で、例外が発生する時機の疑問でした。
でも、例外はメッセージを受ける側で発生するので、無理なキャスト命令がきたら例外を発生するのは当たり前でした。
自分のアホな質問でした!という結論です。ごめんなさい。
838デフォルトの名無しさん (アウアウカー Sac3-TNhT)
2021/05/27(木) 13:27:59.87ID:rDD7tIjXa >>837
すみません、結論が違ってました!
振る舞えないのにメッセージを送ったら壊れるので、送られる前のキャスト時に例外が発生するのは当たり前って話でした!
とにかくアホな質問をしました。ごめんなさい。
すみません、結論が違ってました!
振る舞えないのにメッセージを送ったら壊れるので、送られる前のキャスト時に例外が発生するのは当たり前って話でした!
とにかくアホな質問をしました。ごめんなさい。
839デフォルトの名無しさん (アウアウカー Sac3-TNhT)
2021/05/27(木) 13:32:09.53ID:rDD7tIjXa すみません、先に例外を出さないといけないことはわかったのですが、
参照型のキャストは実際にはなにが行われているのか仕組みを誰か教えていただけないでしょうか。
参照型のキャストは実際にはなにが行われているのか仕組みを誰か教えていただけないでしょうか。
840デフォルトの名無しさん (テテンテンテン MMb6-02LC)
2021/05/27(木) 13:35:30.92ID:PvZCRO+rM841デフォルトの名無しさん (アウアウカー Sac3-TNhT)
2021/05/27(木) 13:53:31.68ID:rDD7tIjXa842デフォルトの名無しさん (スップ Sdf3-Fqqn)
2021/05/31(月) 13:51:39.18ID:24tmjC+hd struts2.3からstruts2.5にバージョンアップ(jar交換)したところ、Tomcat起動時に以下のエラーが発生しました。
何のエラーなんでしょうか?
org.apache.catalina.core.StandardContext filterStart
重大:フィルタ[struts2]の起動中の例外です
java.lang.RuntimeException: Unable to load bean org.apache.struts2.views.velocity.VelocityManager(org.apache.struts2.osgi.VelocityBundleResourceLoader) - [unknown location] - Class: com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector
File:ContainerImpl.java
Method: inject
何のエラーなんでしょうか?
org.apache.catalina.core.StandardContext filterStart
重大:フィルタ[struts2]の起動中の例外です
java.lang.RuntimeException: Unable to load bean org.apache.struts2.views.velocity.VelocityManager(org.apache.struts2.osgi.VelocityBundleResourceLoader) - [unknown location] - Class: com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector
File:ContainerImpl.java
Method: inject
843デフォルトの名無しさん (ワッチョイ db01-iznn)
2021/05/31(月) 14:15:21.43ID:AP3os+rN0844842 (スップ Sdf3-Fqqn)
2021/05/31(月) 14:42:02.51ID:24tmjC+hd845842 (スップ Sdf3-Fqqn)
2021/06/02(水) 09:55:50.74ID:iAyvCfe5d エラー内容はVelocityManagerが場所がわからず、ロードできないという事でしょうか?
org.apache.catalina.core.StandardContext filterStart
重大:フィルタ[struts2]の起動中の例外です
java.lang.RuntimeException: Unable to load bean org.apache.struts2.views.velocity.VelocityManager(org.apache.struts2.osgi.VelocityBundleResourceLoader) - [unknown location] - Class: com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector
File:ContainerImpl.java
Method: inject
org.apache.catalina.core.StandardContext filterStart
重大:フィルタ[struts2]の起動中の例外です
java.lang.RuntimeException: Unable to load bean org.apache.struts2.views.velocity.VelocityManager(org.apache.struts2.osgi.VelocityBundleResourceLoader) - [unknown location] - Class: com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector
File:ContainerImpl.java
Method: inject
846デフォルトの名無しさん (ワッチョイ db01-iznn)
2021/06/02(水) 10:17:54.25ID:SnBKv6wO0 それっぽいけど何が原因かわからない
スタックトレース出てない?
スタックトレース出てない?
847842 (スップ Sdf3-Fqqn)
2021/06/02(水) 10:49:09.77ID:iAyvCfe5d >>846
文字制限で一部ですが。
14:54:13.365 [localhost-startStop-1] ERROR org.apache.struts2.dispatcher.Dispatcher - Dispatcher initialization failed
java.lang.RuntimeException:java.lang.RuntimeException: Unable to load bean org.apache.struts2.views.velocity.VelocityManager (org.apache.struts2.osgi.VelocityBundleResourceLoader) - [unknown location]
at com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:286) ~[struts2-core-2.5.26.jar:2.5.26]
:
at org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:73) [struts2-core-2.5.26.jar:2.5.26]
at org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:61) [struts2-core-2.5.26.jar:2.5.26]
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:285) [catalina.jar:8.5.28]
:
atjava.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_161]
atjava.lang.Thread.run(Unknown Source) [?:1.8.0_161]
文字制限で一部ですが。
14:54:13.365 [localhost-startStop-1] ERROR org.apache.struts2.dispatcher.Dispatcher - Dispatcher initialization failed
java.lang.RuntimeException:java.lang.RuntimeException: Unable to load bean org.apache.struts2.views.velocity.VelocityManager (org.apache.struts2.osgi.VelocityBundleResourceLoader) - [unknown location]
at com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:286) ~[struts2-core-2.5.26.jar:2.5.26]
:
at org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:73) [struts2-core-2.5.26.jar:2.5.26]
at org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:61) [struts2-core-2.5.26.jar:2.5.26]
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:285) [catalina.jar:8.5.28]
:
atjava.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_161]
atjava.lang.Thread.run(Unknown Source) [?:1.8.0_161]
848842 (スップ Sdf3-Fqqn)
2021/06/02(水) 10:51:23.65ID:iAyvCfe5d 文字化けは全角スペースです。
849デフォルトの名無しさん (ワッチョイ db01-iznn)
2021/06/02(水) 11:18:32.23ID:SnBKv6wO0850デフォルトの名無しさん (ワッチョイ db01-iznn)
2021/06/02(水) 11:20:14.41ID:SnBKv6wO0 RuntimeExceptionは本当の原因をCaused byでラッピングしてて
真相はCaused byを見ないとわからないことが多々あるんです
真相はCaused byを見ないとわからないことが多々あるんです
851842 (スップ Sdf3-Fqqn)
2021/06/02(水) 11:43:21.03ID:iAyvCfe5d こちらにtomcatのスタックトレース貼りました。
https://friendpaste.com/4WJcmS8xE0UFiZsmnb5k1y
やった事は今まで2.3.34で動いていたstruts2を以下のようにに変更したのですが。
https://qiita.com/alpha_pz/items/e273faff1cc8b4a1dc7f
https://friendpaste.com/4WJcmS8xE0UFiZsmnb5k1y
やった事は今まで2.3.34で動いていたstruts2を以下のようにに変更したのですが。
https://qiita.com/alpha_pz/items/e273faff1cc8b4a1dc7f
852デフォルトの名無しさん (ワッチョイ db01-iznn)
2021/06/02(水) 12:17:10.30ID:SnBKv6wO0 struts.xmlのDTDの修正は行っている?
https://cwiki.apache.org/confluence/display/WW/Struts+2.3+to+2.5+migration
https://cwiki.apache.org/confluence/display/WW/Struts+2.3+to+2.5+migration
854デフォルトの名無しさん (ワッチョイ db63-3RHv)
2021/06/23(水) 05:43:52.22ID:928PjIhZ0 なんで世のリファクタツールは
returnを複数持つ関数をインライン展開できませんか
ラベルつきブレークにしてください
returnを複数持つ関数をインライン展開できませんか
ラベルつきブレークにしてください
855デフォルトの名無しさん (ワッチョイ 3689-19dE)
2021/06/23(水) 10:13:37.57ID:eD/Z9DBS0 了解アルヨ
856デフォルトの名無しさん (ワッチョイ 0f2c-W41i)
2021/06/26(土) 19:02:39.09ID:J1x7Bras0 スレッドセーフでない…別のスレッドで…仮に…同じクラスを…読み書きした場合…
どうなるの?…プリミティブのint、long、doubleは…以前の値、新しい値、混ざった値…
になるのは解ってるけど…クラスだったらどうなる?
どうなるの?…プリミティブのint、long、doubleは…以前の値、新しい値、混ざった値…
になるのは解ってるけど…クラスだったらどうなる?
857デフォルトの名無しさん (ワッチョイ ff89-wfqF)
2021/06/26(土) 19:45:46.94ID:qOgWSbaY0 なんでクラスはうまくいくと考える?
858デフォルトの名無しさん (ワッチョイ 3f63-Ibo0)
2021/06/26(土) 23:24:55.68ID:qcQ4GstL0 クラスポインタをすげ変えてる間にスレッドが衝突したりはするまい
859デフォルトの名無しさん (ワッチョイ 4f9c-eHno)
2021/06/27(日) 03:14:10.84ID:nwZ7YrBt0 ふつうはクラスをアンロードしたりはしない
クラスをアンロードしないなら複数スレッドから触っても問題ない
クラスではなくインスタンスの参照を保持するオブジェクト変数のことであれば、volatile 付けるか synchronize 等で同時実行制御すれば安全になる
クラスをアンロードしないなら複数スレッドから触っても問題ない
クラスではなくインスタンスの参照を保持するオブジェクト変数のことであれば、volatile 付けるか synchronize 等で同時実行制御すれば安全になる
860デフォルトの名無しさん (ワッチョイ 4f9c-eHno)
2021/06/27(日) 03:15:28.81ID:nwZ7YrBt0 オブジェクト変数という言い方はおかしいか
オブジェクト型フィールドかな
オブジェクト型フィールドかな
861デフォルトの名無しさん (テテンテンテン MM4f-LEZG)
2021/06/27(日) 09:13:25.86ID:KGPlQ6fHM >>856
intと参照への代入は古い値か新しい値のどちらかになる
つまりアトミックではある
longとdoubleなら混ざった値になることもある
ただ、同じクラスを書き換えるって言い方が怪しいな
クラスやインスタンスのメンバの値を書き換える場合の振る舞いはそのメンバの型に依存する
intと参照への代入は古い値か新しい値のどちらかになる
つまりアトミックではある
longとdoubleなら混ざった値になることもある
ただ、同じクラスを書き換えるって言い方が怪しいな
クラスやインスタンスのメンバの値を書き換える場合の振る舞いはそのメンバの型に依存する
862デフォルトの名無しさん (ワッチョイ 4f61-hdpQ)
2021/06/27(日) 09:17:18.87ID:nIt5B8/A0 volatileはその名が示す通り、排他制御のためのものではない。
863デフォルトの名無しさん (テテンテンテン MM4f-LEZG)
2021/06/27(日) 09:30:30.94ID:KGPlQ6fHM ?
volatileが排他制御のためのものである、なんて言ってる人いないよね
volatileが排他制御のためのものである、なんて言ってる人いないよね
864デフォルトの名無しさん (ワッチョイ 4f9c-eHno)
2021/06/27(日) 10:37:59.39ID:nwZ7YrBt0865デフォルトの名無しさん (ワッチョイ 4f9c-eHno)
2021/06/27(日) 10:47:07.09ID:nwZ7YrBt0 volatile の仕様変更について詳しく知りたかったら JSR-133 で検索してね
866デフォルトの名無しさん (ブーイモ MM0f-GPmn)
2021/06/27(日) 10:50:51.68ID:YvNAf89MM Javaのオブジェクト参照って64bit環境だと64bitなんだっけ
↓こういうの書くときはvolatile付けたほうがいいのかな?
if (sobj == null) sobj = new Obj();
return sobj;
↓こういうの書くときはvolatile付けたほうがいいのかな?
if (sobj == null) sobj = new Obj();
return sobj;
867デフォルトの名無しさん (ブーイモ MM0f-GPmn)
2021/06/27(日) 11:03:43.42ID:YvNAf89MM C#だと参照型、bool、byte、、、intはアトミックって仕様として決まってるけどJavaはどうなのかな
868デフォルトの名無しさん (ワッチョイ 0f01-E44K)
2021/06/27(日) 11:08:05.85ID:Yo52n4oO0 >>863
volatileの仕様がどうであれ排他制御目的ならsynchronize使っとけってことだろたぶん
volatileの仕様がどうであれ排他制御目的ならsynchronize使っとけってことだろたぶん
869デフォルトの名無しさん (ワッチョイ 3f01-0Hhk)
2021/06/27(日) 11:38:41.54ID:115i7XI20 >クラスではなくインスタンスの参照を保持するオブジェクト変数のことであれば、volatile 付けるか synchronize 等で同時実行制御すれば安全になる
この書き方がいろいろ微妙だからでしょ
変数への読み書きがatomicかどうかで言えば
参照はvolatileつけなくても常にatomic
primitiveはlong, doubleを除いてatomic
long, doubleはvolatileをつければatomic
この書き方がいろいろ微妙だからでしょ
変数への読み書きがatomicかどうかで言えば
参照はvolatileつけなくても常にatomic
primitiveはlong, doubleを除いてatomic
long, doubleはvolatileをつければatomic
870デフォルトの名無しさん (テテンテンテン MM4f-LEZG)
2021/06/27(日) 11:44:59.23ID:zVK842NzM871デフォルトの名無しさん (テテンテンテン MM4f-LEZG)
2021/06/27(日) 11:46:19.34ID:zVK842NzM872デフォルトの名無しさん (テテンテンテン MM4f-LEZG)
2021/06/27(日) 11:54:20.25ID:zVK842NzM873デフォルトの名無しさん (ワッチョイ 3f01-0Hhk)
2021/06/27(日) 16:11:30.15ID:115i7XI20 >>872
何をもってスレッドセーフと言うかという前提の違いなのかな
volatile付ければ安全って書いてるから
ほぼ同時にスレッド1でwriteしてスレッド2でreadした時に
実際に実行された順序通りの結果が保証されてなければ
writeやreadはスレッドセーフじゃないって考え方でしょ?
オレは順序の保証がなくてもアトミックならreadやwrite自身はスレッドセーフって考え方
順序が問題になるような使い方してるならvolatile付けるだけじゃ駄目だしね
何をもってスレッドセーフと言うかという前提の違いなのかな
volatile付ければ安全って書いてるから
ほぼ同時にスレッド1でwriteしてスレッド2でreadした時に
実際に実行された順序通りの結果が保証されてなければ
writeやreadはスレッドセーフじゃないって考え方でしょ?
オレは順序の保証がなくてもアトミックならreadやwrite自身はスレッドセーフって考え方
順序が問題になるような使い方してるならvolatile付けるだけじゃ駄目だしね
874デフォルトの名無しさん (テテンテンテン MM4f-LEZG)
2021/06/27(日) 16:48:02.42ID:FgMNC6o4M >>873
「volatileが排他制御のためのものである、なんて言ってる人いないよね」ってのが俺の発言だよ
反論するなら暗に名に「言ってる人がいるかどうか」がポイントであって、各人が安全をどう捉えるかの違いなんてどうでもええがな
反論ではなく皆さん気を付けましょうねという話ならわかる
「volatileが排他制御のためのものである、なんて言ってる人いないよね」ってのが俺の発言だよ
反論するなら暗に名に「言ってる人がいるかどうか」がポイントであって、各人が安全をどう捉えるかの違いなんてどうでもええがな
反論ではなく皆さん気を付けましょうねという話ならわかる
875デフォルトの名無しさん (テテンテンテン MM4f-LEZG)
2021/06/27(日) 16:50:58.94ID:FgMNC6o4M >>873
そもそもID:nwZ7YrBt0の発言は明らかに参照の更新がatmicであることを理解した上での一歩進んだ可視性の話を付け加えて安全と言及してるんだから何れにしても釈迦に説法
そもそもID:nwZ7YrBt0の発言は明らかに参照の更新がatmicであることを理解した上での一歩進んだ可視性の話を付け加えて安全と言及してるんだから何れにしても釈迦に説法
876デフォルトの名無しさん (ワッチョイ 3f01-0Hhk)
2021/06/27(日) 17:18:56.98ID:115i7XI20 「volatileを付けると安全になる」
これが微妙なんよ
volatileをスレッドセーフティを提供する手段として考えてるのが超微妙
排他制御云々書いた人の考えはわからないけど
volatile付ければ安全て言われるとそりゃないわってなる
これが微妙なんよ
volatileをスレッドセーフティを提供する手段として考えてるのが超微妙
排他制御云々書いた人の考えはわからないけど
volatile付ければ安全て言われるとそりゃないわってなる
>>876
C/C++ では volatile なんて全く当てにぜずに、例えば posix-thread を使う(し C++11 lator では p-thread が取り込まれてしまった)のですが、Java ではまだ volatile を当てにするコードが生き残っているのですか?
C/C++ では volatile なんて全く当てにぜずに、例えば posix-thread を使う(し C++11 lator では p-thread が取り込まれてしまった)のですが、Java ではまだ volatile を当てにするコードが生き残っているのですか?
878デフォルトの名無しさん (テテンテンテン MM4f-LEZG)
2021/06/27(日) 17:44:55.74ID:FgMNC6o4M volatile付けるだけで安全なんて発言ないよ
その解釈には無理がある
文脈を理解できない人にまでいちいち配慮してらんないよ
スレ民の個々のスキルなんてマチマチなんだからvolatileをうまく使えるかどうかは本人次第
スレッドセーフティを語る上で可視性を軽視している方が微妙だと思う
その解釈には無理がある
文脈を理解できない人にまでいちいち配慮してらんないよ
スレ民の個々のスキルなんてマチマチなんだからvolatileをうまく使えるかどうかは本人次第
スレッドセーフティを語る上で可視性を軽視している方が微妙だと思う
879デフォルトの名無しさん (ワッチョイ 0f2c-m5uv)
2021/06/27(日) 18:54:32.76ID:2/k3XUCT0 プリミティブの振舞いは知ってるんだけど…Stringを同時に…読み書きすると…どうなりますか?
結局…スレッドセーフにするんだけど…今まで…なんで動いてたのかって…事で…
結局…スレッドセーフにするんだけど…今まで…なんで動いてたのかって…事で…
880デフォルトの名無しさん (ワッチョイ 0f2c-m5uv)
2021/06/27(日) 19:22:39.09ID:2/k3XUCT0 全ての参照割り当ては…アトミックと…言っているが…本当なんでしょうか?
https://stackoverflow.com/questions/7421558/is-string-s-foobar-atomic
Stringなので…クラスポインタ…書き換える所で…でっていう事で…
クラッシュしなかったら…間違っててもいいんだよ
とりあえず…運が良かっただけだろうね…直しとくわ…
https://stackoverflow.com/questions/7421558/is-string-s-foobar-atomic
Stringなので…クラスポインタ…書き換える所で…でっていう事で…
クラッシュしなかったら…間違っててもいいんだよ
とりあえず…運が良かっただけだろうね…直しとくわ…
881デフォルトの名無しさん (ブーイモ MM53-eHno)
2021/06/27(日) 19:32:14.10ID:Kcllj5ZjM >>876
排他制御をコードブロック(複数ステートメント)にのみ使うものだと思ってるのかな?そこが認識が一致しない原因かもしれない
複数ステートメントだったらsynchronized等を使って排他制御する
これはあなたの言う通り、間違ってないです
でも単一ステートメントでフィールドの読み取り・書き込みをする場合は?
これもlongやdoubleの場合は排他制御が必要になる
もちろん複数ステートメントの場合と同じくsynchronized使ってもいいんだけど、この場合はvolatileでも代用できる
上位32ビットの書き込みと下位32ビットの書き込みの間に他スレッドからの読み取りがおこなわれないことが保証されるのだからこれも立派な排他制御ですよ
排他制御をコードブロック(複数ステートメント)にのみ使うものだと思ってるのかな?そこが認識が一致しない原因かもしれない
複数ステートメントだったらsynchronized等を使って排他制御する
これはあなたの言う通り、間違ってないです
でも単一ステートメントでフィールドの読み取り・書き込みをする場合は?
これもlongやdoubleの場合は排他制御が必要になる
もちろん複数ステートメントの場合と同じくsynchronized使ってもいいんだけど、この場合はvolatileでも代用できる
上位32ビットの書き込みと下位32ビットの書き込みの間に他スレッドからの読み取りがおこなわれないことが保証されるのだからこれも立派な排他制御ですよ
882デフォルトの名無しさん (ワッチョイ 0f2c-m5uv)
2021/06/27(日) 20:05:58.60ID:tkVDl+qA0 volatile を付けて、仮想アセンブラを見てみれば?
どういう仮想命令に変換されているか
どういう仮想命令に変換されているか
883デフォルトの名無しさん (ワッチョイ 0f2c-m5uv)
2021/06/27(日) 20:12:36.74ID:2/k3XUCT0 結局…動いてたのは…アトミックだったからだろう…直すか直さないか…しとくわ…
ありがとう…
ありがとう…
884デフォルトの名無しさん (ワッチョイ ff89-wfqF)
2021/06/27(日) 20:17:48.74ID:xerWA0240 素人に恐いものはない
885デフォルトの名無しさん (ワッチョイ 4ffd-wfqF)
2021/06/30(水) 18:50:01.91ID:SrJcnOwy0 Java Silverって黒問さえ出来れば同じような問題が出るのでしょうか
受験者の方のご意見いただけたらと思います。
受験者の方のご意見いただけたらと思います。
886デフォルトの名無しさん (ブーイモ MM0f-1C7k)
2021/06/30(水) 19:30:31.78ID:QIg09vqWM >>882
JVMの中間コードは元よりも少しだけ機械が処理しやすい形に変換されたソースコードに過ぎず、実際のマシンの動作と対応するものではない
そんなものを見たところで何の証拠にもならん
お前の好きなルビ糞のVMだって一緒だ
巣に帰れ
JVMの中間コードは元よりも少しだけ機械が処理しやすい形に変換されたソースコードに過ぎず、実際のマシンの動作と対応するものではない
そんなものを見たところで何の証拠にもならん
お前の好きなルビ糞のVMだって一緒だ
巣に帰れ
887デフォルトの名無しさん (ワッチョイ ff01-V8Fg)
2021/06/30(水) 21:37:57.25ID:Hi9reO8F0888デフォルトの名無しさん (ワッチョイ ff89-wfqF)
2021/06/30(水) 21:50:02.41ID:lfrgx5MM0 質問者が回答者を選ぶ、なぜか腹が立つ
889デフォルトの名無しさん (オッペケ Sra3-Ure3)
2021/06/30(水) 22:43:14.72ID:DQSwdxmSr 同じですか、ありがとうございました。
890デフォルトの名無しさん (ワッチョイ 0dfd-a+1V)
2021/07/12(月) 13:43:04.09ID:dUo50+T10 Javaの勉強始めたところですが、メソッドのソースって何処を見れば掲載されていますか?
equalsメソッドをAPIドキュメントで見ても、
サマリーやパラメーターや条件は記載さているのですが、
以下のソースはどこ見ればわかるのでしょうか?
public boolean equals(Object obj) {
return (this == obj);
}
equalsメソッドをAPIドキュメントで見ても、
サマリーやパラメーターや条件は記載さているのですが、
以下のソースはどこ見ればわかるのでしょうか?
public boolean equals(Object obj) {
return (this == obj);
}
891デフォルトの名無しさん (ワッチョイ 1b89-0sKs)
2021/07/12(月) 13:44:40.62ID:YE0/YpnC0 初心者がメソッドのソース見る必要があるの?
892デフォルトの名無しさん (ワッチョイ 0dfd-a+1V)
2021/07/12(月) 14:23:03.18ID:dUo50+T10 現時点では必要はないかと思いますが
ご参考に、どのようなところを調べれば分かるのでしょうか?
ご教示いただけたら幸いです。
ご参考に、どのようなところを調べれば分かるのでしょうか?
ご教示いただけたら幸いです。
893デフォルトの名無しさん (ワッチョイ cbbb-gQEU)
2021/07/12(月) 14:56:37.86ID:iPT4JJtm0 https://github.com/openjdk/jdk
oracle jdkとは差分があるかもしれんけどここ見れば
oracle jdkとは差分があるかもしれんけどここ見れば
894デフォルトの名無しさん (ワッチョイ ad9c-mQSs)
2021/07/12(月) 15:01:08.80ID:rKHfv/e/0 いまのJDK配布物にはsrc.zip同梱されてないんだっけ?
IDEにもよるけどsrc.zipアタッチしておけばメソッド名クリックで中身を潜っていけるのでおすすめ
IDEにもよるけどsrc.zipアタッチしておけばメソッド名クリックで中身を潜っていけるのでおすすめ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- たぬかなの“結婚隠し”に「弱者男性ビジネス」の声…本人が異例の対応「支払いの履歴持ってきてくれたら返金するから連絡してや」 [muffin★]
- 舛添要一「日本は亡国への道をひた走り」「相対的国力は中国が増大し日本が低下している」 [冬月記者★]
- 【物価高対策】「おこめ券を配布しません」大阪府交野の市長が明言「経費率が高い」「今高い米をムリして…」 [1ゲットロボ★]
- 従来の健康保険証、12月1日に期限切れ マイナ利用率は37% [蚤の市★]
- 【地方】「もうヤメとけ、また移住者様が帰っちゃうぞ」田舎の「いじめ体質」★3 [七波羅探題★]
- 落ち度はゼレンスキー氏に 内政混乱、市民怒り [蚤の市★]
- 【DAZN】フォーミュラGP【F1 2 3 SF P】Lap1813
- 【フジテレビ】2025 FORMULA 1【NEXT】Lap606
- 【フジテレビ】2025 FORMULA 1【NEXT】Lap607
- 【U-NEXT】プレミアリーグ総合 ★37
- 巨専】 ★3
- こいせん 全レス転載禁止
- マジでAI規制汁
- Vのパンツミテーナちゃん可愛すぎて胸がくるしい…
- お布団に入ったよー
- 確認用
- 今のチェンソーマンってエヴァ終盤に似てるよな
- TBS山本恵里伽アナ「今の日本社会は世界平和や反戦など当たり前のことを言えない空気になっている」これもう新しい戦前だろ高市 [931948549]
