• ベストアンサー

JSPについて

WINXP PRO  TOMCAT4.1.24 j2sdk1.4.1_06 です。 以下現在の時刻を出力するJSPを実行したのですが、 表示されるページがエラーが出るわけでもなく白紙で表示されます。 「Hello」と表示するような簡単なものは実行できるのですが、原因はどんなものが考えられますでしょうか? 何台かのマシンで試してみましたが同じ結果になっていまします。 <%@ page contentType="text/html; charset=euc-jp" %> <% // 内容: 時刻を表示する例 // 現在の時刻を取得 java.util.Date nowTime = new java.util.Date(); %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head><title>時刻を出力する例</title></head> <body> <p>-- 時刻を出力する例 --</p> <p> 現在の時刻は <strong><%= nowTime %></strong> です。 </p> </body> </html>

  • Java
  • 回答数6
  • ありがとう数10

質問者が選んだベストアンサー

  • ベストアンサー
  • sumou111
  • ベストアンサー率56% (50/89)
回答No.4

実際にDRAGONEMKさんのプログラムを実行してみましたが、やはり何も表示されませんでした。 ページが表示できない原因は、HTMLタグの一部が欠損していたため、タグが正常に閉じていないとブラウザが認識してしまったことのようです。私の場合は「</title>」の"<"が表示されていなかったため、<title>タグが正常に閉じていないとみなされてしまい、ページ全体を表示できなかったと考えられます。そこで、</title>の前に一つ空白を入れて「<title>時刻を出力する例(空白)</title>」とすることで、一応文字が表示されるようになりました。(激しく文字化けしていましたが・・・) DRAGONEMKさんもソースを表示して、HTMLに異常が発生していないかどうか確かめてみてはいかがでしょうか。 この現象の根本的な原因は、No.3の方が仰っているように、pageディレクティブのcharset指定が「euc-jp」になっているからであると考えられます。Windows上で開発・実行するのであれば「charset=Shift_JIS」もしくは「charset=Windows-31J」と指定すれば、正常に表示されるはずです。

DRAGONEMK
質問者

お礼

文字コードをShift-JISにしたらうまくいきました ありがとうございました。

その他の回答 (5)

回答No.6

こんにちは。 実際ソースを実行してみていないのですが、 <%@ page contentType="text/html; charset=euc-jp" %> の部分の「"text/html;」と「charset=euc-jp」に間にあるスペースを削除して <%@ page contentType="text/html;charset=euc-jp" %> というように書き換えてから実行してみては如何でしょうか?

DRAGONEMK
質問者

お礼

スペースを削除して実行してみたのですが、駄目でした。 文字コードの指定が間違っていたようです。 ありがとうございました。

回答No.5

ソースは本当に空白ですか?日本語が文字化けしていないですか? 要因はいくつかありますが、 Windows上でTOMCATを起動しているのならばcharsetはCP932あたりにしないと文字化けがおき、表示されないはずです。SJISかCP932、MS932などに変更してみてください。

DRAGONEMK
質問者

お礼

ご指摘の通り文字コード指定が間違っていたようでした。 Shift-JISをしていしたらうまく動きました。 ありがとうございました。

  • kakuto
  • ベストアンサー率25% (1/4)
回答No.3

1 行目に書いてある charset と JSP ファイルのエンコーディングが違うのではないでしょうか? もし違うようであればどちらかに合わせるといいかも知れません。

DRAGONEMK
質問者

お礼

なるほど文字コードですね、 確かにそれで解決しました。 ありがとうございました。

回答No.2

まず切り分けを行ってみてください。 表示された真っ白なページのソースはどうでしょうか? もし、まったくの空白ならば別の問題です。(たとえばExceptionで途中で終了しているために空白になる) それとも、nowDateの部分だけが抜けているのですか?

DRAGONEMK
質問者

お礼

ありがとうございました

DRAGONEMK
質問者

補足

まったくの白紙ページです。

  • Traja
  • ベストアンサー率19% (107/546)
回答No.1

TOMCATのコンソールには、何かしらメッセージは表示されてないのですか?

DRAGONEMK
質問者

お礼

ありがとうございました

DRAGONEMK
質問者

補足

コンソールにはそのとき特に何も表示されません。

関連するQ&A

  • Java正規表現-"ある文字列"を含まない文字列

    Javaの正規表現で、HTMLタグ以外の文字列を抽出しようとしています。 HTMLタグはの正規表現は"(</?.*>)"のように表しました。これの否定をしたいのですが、方法を教えて下さい。HTMLタグ以外にヒットさせたいです。 一応、現段階のソースを載せます。 import java.util.ArrayList; import java.util.regex.Matcher; import java.util.regex.Pattern; public class HTMLInnerGetter { public static void main(String[] args){ String regex = "(</?.*>)"; String target = "<html><head><title>title</title></head><body><h1>head1<br><p>pragraph</p></body></html>"; ArrayList<String> innerHTMLs = new ArrayList<String>(); Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(target); while(matcher.find()){ innerHTMLs.add(matcher.group(1)); } System.out.println(innerHTMLs); } } 出力結果 [<html><head><title>title</title></head><body><h1>head1<br><p>pragraph</p></body></html>] ※否定できなかったので、HTMLタグがヒットしています。

    • ベストアンサー
    • Java
  • jspファイルが作れません

    現在、jspを勉強なのですが、jspファイルが作れません。 メモ帳にコードを打ちこんだあと、拡張子に「.jsp」を つけて保存するのですが、テキストファイルのままになって しまいます。(教本に付属CDがあり、サンプルでは「jspファイル」 とちゃんと表示されています) ちなみに、サーブレットやHTMLファイルを作成して、トムキャット で実行することはできています。 jspファイルを作るには何か特別なソフトがいるのでしょうか? ネットをいろいろ検索してみましたが、糸口がつかめず困っています。 このような説明でうまく伝わるか不安ですが、どなたかわかる方がいらっしゃいましたら 教えていただけるとうれしいです。 よろしくお願いいたします。 メモ帳でSample1.jsp作成時のコード内容↓ <%@ page cotentType="text/html; charset=Shift_JIS" %> <%@ page import="java.util.*" %> <html> <head> <title>サンプル</title> </head> <body> <center> <img src="car.gif"><br /> <h2>ようこそ</h2> <hr /> 今<%= new Date() %>です。<br /> お選びください。<br /> <br /> <a href="car1.html">乗用車</a><br /> <a href="car2.html">トラック</a><br /> <a href="car3.html">オープンカー</a><br /> </center> </body> </html>

    • ベストアンサー
    • Java
  • HTMLのネスト

    HTMLのネストというのは可能なものでしょうか? (例) <html> <head></head> <body> <p>aaa</p> <html> <head></head> <body> <p>bbb</p> </body> </html> </body> </html> 可能かどうか?ということと、実際にこのようなやり方はすることがあるものかどうか? ということを教えてほしいです。 #私自信はNGという答えを出しましたが、IEだと表示できてしまうので・・・・・経験覆い方にお尋ねしてみようと思い投稿しました。

    • ベストアンサー
    • HTML
  • JSPでの文字化け

    こんにちは。 今JAVAを勉強中でJSPファイルを作成しています。 test.jsp <%@ page language="java" contentType="text/html; charset=Windows-31J" pageEncoding="Windows-31J"%> <HTML> <HEAD><TITLE>文字表示テスト</TITLE></HEAD> <BODY> <% String text = request.getParameter("text"); if (text != null) { if (!text.equals("")) { out.println("画面からの文字<BR>"); out.println(text); } } %> <FORM NAME="testForm" METHOD="post" ACTION="test.jsp"> <TEXTAREA NAME="text"></TEXTAREA> <INPUT TYPE="submit" VALUE="送信"> </FORM> </BODY> </HTML> Windowsで上のプログラムを実行すると問題なく表示されますが Linuxサーバで実行すると???となってしまいます。

    • ベストアンサー
    • Java
  • SSIでスクリプトが実行できない

    SSIでHDDの温度を表示するスクリプトを実行しようとしましたが、上手くいきません。SSI自体は正常に動作しています。(試しに、他のスクリプトを実行させたら、正常に作動しました。) 問題は、コマンドラインからスクリプトを実行させると正しく動作するのに、作成したshtmlを実行すると動作しないのです。 以下に、正しく表示されないスクリプトとshtml、正しく動作したスクリプトとshtmlを表示します。 1.正しく表示されないスクリプト、shtml(HDD温度表示) [スクリプト] #!/bin/sh hddtemp /dev/hda | awk '{print $4}' ※コマンドラインからの実行結果 39 [shtml] <html> <head><title>HDDTEMP実験</title></head> <body> 現在のHDD温度<br> <!--#exec cmd="./hddtemp.sh"--> </body> </html> ※実行結果 現在のHDD温度 2.正常に動作したスクリプト、shtml [スクリプト] #!/bin/bash /bin/date ※コマンドラインからの実行結果 Sun May 22 18:11:21 JST 2005 [shtml] <html> <head><title>SSI使用例</title></head> <body> 現在時刻を表示します<br> <!--#exec cmd="./date.sh"--> </body> </html> ※実行結果 現在時刻を表示します Sun May 22 18:09:56 JST 2005 Apacheは1.3.33です。 どうぞよろしくお願いします。

    • ベストアンサー
    • HTML
  • Jspで文字化けするのです

    がどうしたらいいでしょうか? Java1.6.0_13&Tomcat6.0.18をEclipse3.42で動かしています。 以下のJSPを実行してみると文字化けします。 よろしくお願いします。 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="/WEB-INF/tld/struts-bean.tld" prefix="bean"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Java JakartaStruts</title> </head> <body> <bean:include id="page2" href="http://www.google.co.jp/" /> <%=page2%> </body> </html>

    • ベストアンサー
    • Java
  • jsp実行時にダウンロードダイアログが表示される

    こんにちは 昨日に引き続き質問させてください。 以下のコードのJSPを実行すると ファイルのダウンロードダイアログが 表示されてしまいます。 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=25429&forum=12&8 に似たような質問があったのですが 解決していないようです。 ここにいらっしゃる方ならご存知かと思い質問しました。 ご回答よろしくお願いします。 ===================================================== <%@page contentType="text/html ; charset=Windows-31J"%> <HTML> <HEAD> </HEAD> <BODY> <% String test="test"; %> <%=test%> </BODY> </HTML>

  • ブラウザのサイズ取得がXHTMLにするとうまくいか

    http://www.tagindex.com/javascript/user/area.html に ブラウザのサイズ取得のサンプルが載ってます。 <html> <head> <title>TAG index Webサイト</title> </head> <body> <script type="text/javascript"> <!-- if(document.all){ // IE用 document.write('<p>横のサイズ:<strong>' + document.body.clientWidth + '</strong><br>'); document.write('縦のサイズ:<strong>' + document.body.clientHeight + '</strong></p>'); } else{ document.write('<p>横のサイズ:<strong>' + innerWidth + '</strong><br>'); document.write('縦のサイズ:<strong>' + innerHeight + '</strong></p>'); } // --> </script> </body> </html> です。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> にすると、IE8で高さが小さな値しかでません。 しかし、紹介したページはただの<html>でないのに、 正しい値が出力されています。 何が足りないのでしょうか。 <p>・・・</p> を2スクロール分入れたら、今度が大きすぎる値が出力されてしまいました。 困っております。どうか助けてください。お願いします。

  • index.htmlの代わりにサーブレットを実行

    localhost:8080でindex.htmlを表示する代わりにServlet.classを実行したいのですがtomcat5の設定を教えてください。ちなみにlocalhost:8080/servletで実行するところまでは、本に載ってたので分かってます。 public class Servlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { res.setContentType("text/html"); PrintWriter out = res.getWriter(); out.println("<HTML>"); out.println("<BODY>"); out.println(new java.util.Date()); out.println("</BODY>"); out.println("</HTML>"); } }

    • ベストアンサー
    • Java
  • JSPが表示できない

    サーブレットからJSPに表示させようとしているのですがJSPの中にJAVAソース を加えると表示できなく画面が真っ白になり、加えなければ表示できます。 原因がなぜなのかわからなく困惑中です。ソースは以下の通りです。 アドバイスお願いします。 <%@ page contentType="text/html;charset=Shift_JIS"                               import= "java.sql.*" %> <jsp:useBean id="Bean" class="Servlet"scope="session" /> <html> <head><title>表示画面</title></head> <body> // BeanファイルでデータをSQL文によって取り出しrs変数に格納し // getNameCDメソッドによってデータを取り出す。BeanファイルではSQL文 実行確認済み <% ResultSet rs = Bean.getNamaCD(); %> <%  while(rs.next()){ out.println(rs.getString(1)); // 名前のコードを取り出し表示させる。 } %> </body> </html>

専門家に質問してみよう