servletのプログラムが表示するHTML文書の
壁紙を設定したいのですが、よく分かりません。

c:/resin_home/webapps/myri/WEB-INF/classes の
中のservletのプログラム中で、
out.println("<body background=\"mypic/back.gif\">");
と出力しています。

mypicディレクトリはどこに置けばちゃんと表示されますか?

このQ&Aに関連する最新のQ&A

A 回答 (1件)

getServletContext().getRealPath("mypic/back.gif")



で、そのファイルの実際のパスが得られます。

この回答への補足

出力をした結果、c:/resin_home/webapps/myri/mypic/back.gif
が出ました。 そこで、myri/の下に mypicディレクトリを置きました。
しかし、バックは真っ白ですが…なんでか分かりますか????

補足日時:2002/01/07 14:10
    • good
    • 0
この回答へのお礼

どうもありがとうございました!明日早速やってみます

お礼日時:2002/01/07 01:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QTOMCATで\webapps\ROOTフォルダで自作のindex.jspを表示させるには。

いままで、TOMCATで\webapps\ROOT内に、
index.htmlをおき、トップページにしていましたが、
これを、index.jspに変えようと思いました。
しかし、index.jspは、もともと、TOMCAT宣伝用の
index.jspがあるので、これの名前を変えたのですが、
どうしても、index.jspでこの宣伝用のページ
が表示されてしまいます。
いままで使っていたので、なんとか現在の
ドキュメントルートでindex.jspを使いたいのですが、
どうしたらいいでしょうか。
(WEB-INF内のweb.xmlのservlet-mappingの設定が、
関係ありそうですが)。
お願いします。

Aベストアンサー

ROOT内のWEB-INF内にあるweb.xmlをエディタなどで開いてください。そして以下の部分を探してください。

<servlet-mapping>
<servlet-name>org.apache.jsp.index_jsp</servlet-name>
<url-pattern>index.jsp</url-pattern>
</servlet-mapping>

この部分をコメントアウトします。つまり、手前に<!--を、後に-->をつけて、

<!--
<servlet-mapping>
<servlet-name>org.apache.jsp.index_jsp</servlet-name>
<url-pattern>index.jsp</url-pattern>
</servlet-mapping>
-->

こうするわけですね。
これで、http://localhost:8080/でwebapps/ROOT/index.jspが表示されると思います。

QTomcatの「\WEB-INF\classes」内のクラスファイルが消えた。

サーブレットを勉強しています。Eclipseを使っています。

ある時、PCが固まり強制終了してしまったのですが、起動させると、\WEB-INF\classes内のクラスファイルが消えてしまっていました(!)。

Eclipseを使っているのですが、どうすればまたクラスファイルを生成することができるでしょうか?Eclipse上で、再度javaファイルを保存し直しても、生成されなません(当たり前?)。

よろしくお願いします。

Aベストアンサー

プロジェクトのリビルドで生成されませんか?

ちなみにオートビルドONにしてると
強制終了→Eclipse起動時にフルビルドされてたきがします。

QEclipse-Tomcat環境のWEB-INF/classes

EclipseでTomcatプラグイン(sysdeoのtomcatPluginV31)を使用してJSPのページを作成しています。
たとえば、
class A{
int a = 10;
}
といったクラスを作ってWEB-INF/classesにA.classを配置しても、JSP側から
<%
A a = new A();
%>
<html><body>
<%=a.a%>
</body></html>
といった使い方をした場合、シンボルを解釈できないといったエラーが出てしまいました。WEB-INF/classesにclassファイルを配置しただけでは自作クラスを使用することはできないのでしょうか
ご存知の方、お力をお貸しいただけないでしょうか
お願いします。

環境
J2SDK SE 1.4.2.12
eclipse3.1.2
Tomcat 5.0.28
sysdeoのtomcatPluginV31

Aベストアンサー

ん?? 単に、JSPから自作クラスを利用するだけなら、普通にできますよ。
packageの指定などはきちんとできてますか?
それとPageディレクティブでimportをしていますか?
例えば、jp.hoge.Aというクラスならば、ソースコードは

package jp.hoge;
public class A { ・・・・ }

という形で定義し、作成されたclassファイルは、

WEB-INF/classes/jp/hoge/A.class

というように配置する必要があります。
また、JSP側では

<%@page import="jp.hoge.A" %>

としてこのクラスをimportしておく必要があります。
 このimportするpageディレクティブを書き忘れるとクラスを認識しません。デフォルトパッケージでクラスを書いてimportしなかったりすると認識できないですよ。
そのあたりを再度確認してみてはいかがでしょう。

QServlet上でのClass#forName()について

こんにちは。三田と申します。

Class#forName()で取得したClassオブジェクトが、Servlet上とそうでない場合で結果が違っていました。

実際、行っている処理は、あるクラスのClassオブジェクトをClass#forName()で取得して、次にそのクラスのインスタンスを生成して、Class#isInstance()をしているだけです。

上記の処理を行った場合に、Servlet上ではfalseで
そうでない場合は、trueになるのです。

デバックしてみたところ、インスタンスを生成したときにServlet上では、Classオブジェクトの変数に値が入っていないのに対し、Servletを使用しない場合は、Classオブジェクトの変数に値が入っていました。

その違いは発見したのですが、なぜそうなるのかがわかりません。理由を知っている方がいらっしゃいましたら、ぜひご教授をお願いします。

以上、よろしくお願いします。

Aベストアンサー

> 実際、行っている処理は、あるクラスのClassオブジェクトをClass#forName()で取得して、次にそのクラスのインスタンスを生成して、Class#isInstance()をしているだけです。
> 上記の処理を行った場合に、Servlet上ではfalseで
そうでない場合は、trueになるのです。

私の環境ではServlet上でもtrueになりました。
何か他の原因ではないでしょうか?

QHTTPステータス 404 - /servlet/Testについて

はじめまして。Javaの初心者です。
どうしてもわからないことがあります。それは、
最初にJSPページでHTMLフォームにデータを入力して
<input type="submit"/>タグでサーブレットに送信し
て、サーブレットでHTMLフォームのデータ
を使用して処理を行わせてから再び最初のJSPページ
にリクエストを転送(forward)すると、サーブレット
での処理結果が表示されるのですが、そのあと再び
HTMLフォームにデータを入力して
<input type="submit"/>タグでサーブレットに送信す
ると、「HTTPステータス 404 -/servlet/Test」などと
表示され、サーブレットが利用可能でなくなります。
なぜなのでしょうか?どのようにしたら解決できるの
かどうか教えてください。お願いします。

Aベストアンサー

HTMLフォームからサーブレットにアクセスするには、URLを全て書くと、
http://ホスト名/アプリケーション名/サーブレット名
って感じでURLを指定しますね。(本当はポート番号とかもあるけど省略)
エラー内容で、"/servlet/Test"と出ているので、アプリケーション名の部分が指定されていないのではないでしょうか?
JSPから forward したときは、アプリケーションの内部での指定だったので、/servlet/Test でサーブレットに転送できたのだと思います。
HTMLのフォームから送信するときは、アプリケーション名も含めて、URLを
/アプリケーション名/servlet/Test
とするか、HTMLからの相対パスで指定すればいいと思います。
HTMLがアプリケーションのルートにあるのなら、
servet/Test
でアクセスできると思います。


おすすめ情報