[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends:00152] Re: Generated servlet error



横山です。徳さま、御丁寧な解説ありがとうございます。

> 後者の方法としては、たとえばhogeパッケージに含めるとすると、
> 1.まずProductListBeansクラスのソースの先頭に「package hoge;」と一行追加し、コンパイルする。
いきなり1でつまずいてしまいました。ProductListBeans.javaに「package test;」を追加しました。
私がちゃんと説明していかなかったのもあるのですが、このProductListBeans.javaは
同一ディレクトリにあるKanjiConvクラスを参照しています。
(参照という表現があってるのかわかりませんが
ProductListBeansのソースにKanjiConvクラスがあります。)

下記がコンパイルしたときのエラー内容です。
ここから------------------------------------------
ProductListBeans.java:47: cannot resolve symbol

symbol  : variable KanjiConv
location: class test.ProductListBeans
    category = KanjiConv.ConvJStr(category);
               ^
1 error
ここまで---------------------------------------------

ここでKanjiConv.javaにも「package test;」を追記して、ProductListBeans.java
をコンパイルしましたが、結果は上記と同じでした。
今の私には、上記のエラーを解決する術がわからず、教えて君と
なってしまっていますが、何卒御指導よろしくお願いします。

#本件、元々は某書籍を読みながらやっているとのことでしたが、
#WEBアプリケーションのデプロイについては記載されていないのでしょうか?
#もし、記載が無いのであれば、それはあまりお勧めできない書籍ということ
#になってしまいますが。。。
#もう一度、書籍を読み返してみることをお勧めします。
書籍を読む限りWEB-INF/classesについてはあまりふれていません。
build.shを実行したらwebapps以下にウェブアプリが自動的に作成されて
WEB-INFOとclassesが作成されている絵はあります。
そういえば書籍のとおりやってうまくいかなかった点が他にもありました。
書籍ではbuild.shというスクリプトを実行するようになっており
私もこれにならって行いましたが下記のエラーが出ました。
ここから---------------------------------------------------------------------------
Exception in thread "main" java.lang.ClassNotFoundException: org.apache.tools.ant.Main
   at 0x4017224b: java.lang.Throwable.Throwable(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x4016885b: java.lang.Exception.Exception(java.lang.String) (/usr/lib/libg
cj.so.2)
   at 0x40167c70: java.lang.ClassNotFoundException.ClassNotFoundException(java.l
ang.String) (/usr/lib/libgcj.so.2)
   at 0x401da5c5: java.net.URLClassLoader.findClass(java.lang.String) (/usr/lib/
libgcj.so.2)
   at 0x40157c80: gnu.gcj.runtime.VMClassLoader.findClass(java.lang.String) (/us
r/lib/libgcj.so.2)
   at 0x401673ba: java.lang.ClassLoader.loadClass(java.lang.String, boolean) (/u
sr/lib/libgcj.so.2)
   at 0x401581e2: _Jv_FindClass(_Jv_Utf8Const, java.lang.ClassLoader) (/usr/lib/
libgcj.so.2)
   at 0x40155124: java.lang.Class.forName(java.lang.String, boolean, java.lang.C
lassLoader) (/usr/lib/libgcj.so.2)
   at 0x401551d6: java.lang.Class.forName(java.lang.String) (/usr/lib/libgcj.so.
2)
   at 0x40153703: gnu.gcj.runtime.FirstThread.run() (/usr/lib/libgcj.so.2)
   at 0x4015db63: java.lang.Thread.run_(java.lang.Object) (/usr/lib/libgcj.so.2)
   at 0x402386a4: ?? (??:0)
   at 0x403def76: GC_start_routine (/usr/lib/libgcjgc.so.1)
   at 0x403f70ba: ?? (??:0)
   at 0x4050bd6a: __clone (/lib/libc.so.6)
debian:/usr/local/tomcat4/webapps/sect8# ./build.sh 
Exception in thread "main" java.lang.ClassNotFoundException: org.apache.tools.ant.Main
   at 0x4017224b: java.lang.Throwable.Throwable(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x4016885b: java.lang.Exception.Exception(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x40167c70: java.lang.ClassNotFoundException.ClassNotFoundException(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x401da5c5: java.net.URLClassLoader.findClass(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x40157c80: gnu.gcj.runtime.VMClassLoader.findClass(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x401673ba: java.lang.ClassLoader.loadClass(java.lang.String, boolean) (/usr/lib/libgcj.so.2)
   at 0x401581e2: _Jv_FindClass(_Jv_Utf8Const, java.lang.ClassLoader) (/usr/lib/libgcj.so.2)
   at 0x40155124: java.lang.Class.forName(java.lang.String, boolean, java.lang.ClassLoader) (/usr/lib/libgcj.so.2)
   at 0x401551d6: java.lang.Class.forName(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x40153703: gnu.gcj.runtime.FirstThread.run() (/usr/lib/libgcj.so.2)
   at 0x4015db63: java.lang.Thread.run_(java.lang.Object) (/usr/lib/libgcj.so.2)
   at 0x402386a4: ?? (??:0)
   at 0x403def76: GC_start_routine (/usr/lib/libgcjgc.so.1)
   at 0x403f70ba: ?? (??:0)
   at 0x4050bd6a: __clone (/lib/libc.so.6)
debian:/usr/local/tomcat4/webapps/sect8# ./build.sh 
Exception in thread "main" java.lang.ClassNotFoundException: org.apache.tools.ant.Main
   at 0x4017224b: java.lang.Throwable.Throwable(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x4016885b: java.lang.Exception.Exception(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x40167c70: java.lang.ClassNotFoundException.ClassNotFoundException(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x401da5c5: java.net.URLClassLoader.findClass(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x40157c80: gnu.gcj.runtime.VMClassLoader.findClass(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x401673ba: java.lang.ClassLoader.loadClass(java.lang.String, boolean) (/usr/lib/libgcj.so.2)
   at 0x401581e2: _Jv_FindClass(_Jv_Utf8Const, java.lang.ClassLoader) (/usr/lib/libgcj.so.2)
   at 0x40155124: java.lang.Class.forName(java.lang.String, boolean, java.lang.ClassLoader) (/usr/lib/libgcj.so.2)
   at 0x401551d6: java.lang.Class.forName(java.lang.String) (/usr/lib/libgcj.so.2)
   at 0x40153703: gnu.gcj.runtime.FirstThread.run() (/usr/lib/libgcj.so.2)
   at 0x4015db63: java.lang.Thread.run_(java.lang.Object) (/usr/lib/libgcj.so.2)
   at 0x402386a4: ?? (??:0)
   at 0x403def76: GC_start_routine (/usr/lib/libgcjgc.so.1)
   at 0x403f70ba: ?? (??:0)
   at 0x4050bd6a: __clone (/lib/libc.so.6)
ここまで ----------------------------------------------------------------------------------------
エラーを解決するスキルが現在ないので読み飛ばしていました。
他の添付してあるウェブアプリがとりあえずブラウザ上から確認できたので
buildを行うという作業を完全に忘れておりました。
話が少々ずれますが、
書籍はANTのインストールをしていませんが、私はANTをインストールして
$ ant
を実行するとBUILD SUCCESSFULにはなります。しかし、今回のwebapps以下においた
書籍添付アプリはどれもBuildすることを忘れていたためBuildせずに行っております。
ちなみ今まで問題となっているウェブアプリをantしてから行っても結果は同じでした。

非常に長くなってしまいましたが、どうかよろしくお願いします。