今だけ人気マンガ100円レンタル特集♪

windows2000+Tomcat 4.1です。
index.htmからのサンプルは見ることが出来るのですが・・・
試しに自分で作ったものをテストしてみたところ次のような
エラーがブラウザにでます。
Tomcatの設定が悪いのでしょうか?(Tomcatの再起動はしました)
よろしくお願いします。

<エラー>
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception

org.apache.jasper.JasperException: /jsp/test.jsp(0,38) jsp.error.attribute.noequal
at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:94)
at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:417)
at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:126)
                   ・・・以下省略

<ソース>
<%@ page language ="java" contentType "text/html;charset=Shift_JIS" %>
<HTML>
<HEAD>
<TITLE>テスト<TITLE>
</HEAD>
<BODY>



</BODY>
</HTML>

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

A 回答 (1件)

>org.apache.jasper.JasperException: /jsp/test.jsp(0,38) jsp.error.attribute.noequal


ですから"test.jspの0行目38文字目のアトリビュートにイコールが有りません"ですね。

<%@ page language ="java" contentType="text/html;charset=Shift_JIS" %>
ですね。
contentTypeのアトリビュートの後ろにイコールが必要だと思います。

ちょっと気になりましたが
<TITLE>テスト</TITLE>
TITLEタグの終了タグの/も抜けています。
    • good
    • 0
この回答へのお礼

ありがとうございます
自分では何回も確認したつもりだったのですが・・・
タグにもミスが・・・

お礼日時:2002/11/06 17:38

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人が検索しているワード

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

Q「httpステータス404」というエラーが出ます。

「httpステータス404」というエラーが出ます。

java初心者です、宜しくお願い致します。
EclipseでServletを書いてやりましたが、以下のようなエラーが出ます、
原因はなんでしょうか、宜しくお願い致します。
「httpステータス404-/Servlet%E7%B7%B4%E7%BF%92/ ServOutput」

Aベストアンサー

Not Found
という意味です。
そのファイルが無い。あるいはリンクが間違っています。
詳しくは参考URLをみてください。

参考URL:http://ja.wikipedia.org/wiki/HTTP_404

QHTTPステータス404表示されてしまう

環境:Eclipce3.2、Tomcat5.5.2、JDK1.5.0_11を使用。

○サーブレットプログラム
package dispatch;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class ForwardServlet2 extends HttpServlet
{
private static final long serialVersionUID = 1L;

public void doGet(HttpServletRequest request ,
HttpServletResponse response)
throws ServletException , IOException
{
PrintWriter out = response.getWriter();
out.println("Hello by Eclipse");
}
}

○web.xmlの内容は以下の通り
<web-app>
<!-- JSPC servlet mappings start -->
<servlet>
<servlet-name>ForwardServlet2</servlet-name>
<servlet-class>dispatch.ForwardServlet2</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>ForwardServlet2</servlet-name>
<url-pattern>/ForwardServlet2</url-pattern>
</servlet-mapping>
<!-- JSPC servlet mappings end -->
</web-app>

アクセスはhttp://localhost:8080/basic/dispatch/ForwardServlet2

アクセスすると、

type ステータスレポート
メッセージ /basic/dispatch/ForwardServlet2
説明 The requested resource (/basic/dispatch/ForwardServlet2) is not available.

が表示されてしまいます。
何度も最初から作り直しては、見直しをしましたが
エラーになる原因をつかむことができない状態です。
間違い、不足している箇所がありましたら、ご指摘の程お願い致します。

環境:Eclipce3.2、Tomcat5.5.2、JDK1.5.0_11を使用。

○サーブレットプログラム
package dispatch;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class ForwardServlet2 extends HttpServlet
{
private static final long serialVersionUID = 1L;

public void doGet(HttpServletRequest request ,
HttpServletResponse response)
throws ServletException , IOException
{
PrintWriter out = response.getWriter();
out.println("Hello by Eclipse");...続きを読む

Aベストアンサー

 まず考えられる可能性は、
http://localhost:8080/basic/ForwardServlet2
でアクセスすると見えるかも知れないという事かな。

パッケージdispatchはあくまでJava側の話であって、コンテキストパスからの相対URLには何の関係もない。ここで、コンテキストパスとは/basicの事だ。もちろん、コンテキストパスが/basic/dispatchである可能性もあるが、それはあなたにしか分からない。TomcatのどこにそのWebアプリケーションをデプロイしたかが問題だ。

web.xmlの中では、servletタグによってフルクラス名(dispatch.ForwardServlet2)にForwardServlet2という名前をつけ、servlet-mappingタグによって名前をつけたForwardServlet2を/ForwardServlet2という「コンテキストパスからの相対パス」でアクセスできるようにしているんだ。だから、そのEclipseのプロジェクトにindex.jspを置いてみて、それが
http://localhost:8080/basic/inde.jsp
でアクセスできるのであれば、サーブレットには
http://localhost:8080/basic/ForwardServlet2
でアクセスする事になる。

説明が不足している箇所は、Tomcatのどこ(どんなコンテキストパス名)に君が作ったWebアプリをデプロイしているか、だな。URLが間違っている、という場合は、質問を受けている人がURLを構成できるだけの情報をあげんといけん。

 まず考えられる可能性は、
http://localhost:8080/basic/ForwardServlet2
でアクセスすると見えるかも知れないという事かな。

パッケージdispatchはあくまでJava側の話であって、コンテキストパスからの相対URLには何の関係もない。ここで、コンテキストパスとは/basicの事だ。もちろん、コンテキストパスが/basic/dispatchである可能性もあるが、それはあなたにしか分からない。TomcatのどこにそのWebアプリケーションをデプロイしたかが問題だ。

web.xmlの中では、servletタグによってフルクラス名(di...続きを読む

Qjspのプログラムについて

jspファイルで
データベースの中のテーブルの中身をCSVファイルに出力するプログラムを教えてください。

delete文で中身を消すプログラムは書けたのですが、これはできません。
conn = null;
st=null;

conn=DriverManager.getConnection("jdbc:mysql://localhost/データベース名?" +
"user=ユーザー名&password=パスワード&useUnicode=true&characterEncoding=utf8");

st=conn.createStatement();

StringBuffer buf = new StringBuffer();
buf.append("delete from where id="+id);
st.executeUpdate(buf.toString());

これで削除はできました。
なのでbuf.appendの中身を
buf.append("SELECT from テーブル名 INTO OUTFILE "c:/data" ");
これに書き換えればできると思ったのですができません。

よろしくお願いします。

jspファイルで
データベースの中のテーブルの中身をCSVファイルに出力するプログラムを教えてください。

delete文で中身を消すプログラムは書けたのですが、これはできません。
conn = null;
st=null;

conn=DriverManager.getConnection("jdbc:mysql://localhost/データベース名?" +
"user=ユーザー名&password=パスワード&useUnicode=true&characterEncoding=utf8");

st=conn.createStatement();

StringBuffer buf = new StringBuffer();
buf.append("delete from where id="+id);
st.executeUpdate(buf.toS...続きを読む

Aベストアンサー

こんにちは。

buf.append("SELECT * from テーブル名 INTO OUTFILE \"c:/data\"");

こうではないですか?
"文字列"の中で「"」を使うのであればエスケープが必要です。

QJava-jspの画面入力値保持について

画面にテキスト、ラジオボタン、リストボックス とボタンがあります。
ボタンを押すと、JAVAで処理を行い、jspのviewで表示します。

1.テキスト、ラジオボタン、リストボックスなどに値が入力、設定されている状態で
ボタンを押して処理後にテキスト、ラジオボタン、リストボックスの値が
変わらないようにしたいのですが、
その場合、たとえば、入力、設定値をセッションになどに格納しておき
jspの所で、セッションから値を設定すると言うような方法になるのでしょうか?

2.ボタン押して処理後、ラジオボタン、リストボックスの選択値も
  変えないようにしたいのですが、
  これはどのように実現するのが、適切なのでしょうか?


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

Aベストアンサー

ボタンというのはフォームのサブミットボタンのことですよ?
つまり、画面遷移が起きることを前提とすると(元の同じ画面に戻るのも含みます)

テキスト、ラジオボタン、リストボックスの状態を「要求パラメータ」として
送信し、それを次画面に反映するというのが最も一般的な方法です。

フレームワーク struts のアクションフォーム&JSPカスタムタグを使うと比較的楽に
そういう画面が作れますが、多くのフレームワークでも大差ありません。
簡単な画面なら素のサーブレート+JSPでも十分作れます。

セッションでもできますが、 セッションはログイン情報などの保持など、
限定された範囲で使うのが普通です。また、結局セッションに最新の
テキスト、ラジオボタン、リストボックスの状態を送るには、「要求パラメータ」
を送信する必要があります。

AJAXを使うという方法もあります。この場合、ボタンは AJAX 処理だけを行い
画面遷移を起こさないので、サーバ側で画面のテキスト、ラジオボタン、
リストボックスの状態をもつ必要はありません。

Qフォーム上で押されたボタンによってサーブレットの処理を変えたい

Urizakaです。
さて、さっそく質問です。
JSPの同一フォーム上に「登録」「修正」「削除」のボタンを置き、その押された
ボタンによってサーブレット内での処理が切り替わる(具体的には、違う
SQL文を実行し、違うJSPページをgetRequestDispatcherメソッドで生成
する)ようにしたいのですが、どのようにすればよいのでしょうか?
もちろんそれぞれの処理に対して別々のサーブレットを作り、javaScript
でそれぞれのサーブレットへ飛ぶように制御するという処理も考えたことは
考えたのですが、できれば一つのサーブレットで済ませたいと考えたもので
…宜しくお願いします。

Aベストアンサー

お恥ずかしい限りです。
前述の例、動くわけがありませんね(汗)

2つめの例、書きなおします。

---------------------------------------------------

■JSPのフォーム

<form name=MyForm action="<<サーブレットのURL>>" method=post>
<input type=button name=MyClick value=登録 onClick="func('Toroku');">
<input type=button name=MyClick value=修正 onClick="func('Shusei');">
<input type=button name=MyClick value=削除 onClick="func('Sakujo');">
<input type=hidden name=MySubmit>
</form>

<script language="JavaScript">
function func(MyCommand){
document.MyForm.MySubmit.value=MyCommand;
document.MyForm.submit();
}
</script>

■Servletでの処理
// リクエストの取得
String MyAction = req.getParameter("MySubmit");

// 処理の実行
if (MyAction.equals("Toroku")){...}
if (MyAction.equals("Shusei")){...}
if (MyAction.equals("Sakujo")){...}



---------------------------------------------------

こんな感じでどうでしょうか。
ちなみにこうやって書いておくと、フォームのボタンからじゃなくても
アンカーをクリックすることで同じ効果が出せそうな……

<a href="JavaScript:func('Toroku')">登録</a>

あ、でもまたボロが出そうなのでこの辺で(^_^;)

お恥ずかしい限りです。
前述の例、動くわけがありませんね(汗)

2つめの例、書きなおします。

---------------------------------------------------

■JSPのフォーム

<form name=MyForm action="<<サーブレットのURL>>" method=post>
<input type=button name=MyClick value=登録 onClick="func('Toroku');">
<input type=button name=MyClick value=修正 onClick="func('Shusei');">
<input type=button name=MyClick value=削除 onClick="func('Sakujo');">
<input type=hidden name=M...続きを読む

QJSPでリンクを利用してパラメータを次画面に渡す方法について。

一覧表示されているデータのNOをクリックすると、二つのパラメータでデータベースへアクセスし、該当データの詳細画面に遷移する、というプログラムを作っています。

データベースへアクセスする際に必要なIDは2つで、仮にID_A、ID_Bとします。
リンク部分のソースは

---------------------------------------------------------------------
<a href = "update_form.jsp?ID_A=<%= rs.getString("ID_A") %>">番号</a>
<input type="hidden" name="ID_B" value="<%= rs.getString("ID_Bcat_id") %>">
---------------------------------------------------------------------

としておりますが、次画面へ遷移すると、ID_Bの値はnullとなってしまうために、正常にデータの取得ができません。

二つのパラメータを使用する場合のパラメータを渡す方法を教えて頂きたいと思います。よろしくお願いします。

一覧表示されているデータのNOをクリックすると、二つのパラメータでデータベースへアクセスし、該当データの詳細画面に遷移する、というプログラムを作っています。

データベースへアクセスする際に必要なIDは2つで、仮にID_A、ID_Bとします。
リンク部分のソースは

---------------------------------------------------------------------
<a href = "update_form.jsp?ID_A=<%= rs.getString("ID_A") %>">番号</a>
<input type="hidden" name="ID_B" value="<%= rs.getString("ID_Bcat_id") %>">...続きを読む

Aベストアンサー

<a href = "update_form.jsp?ID_A=<%= rs.getString("ID_A") %>&ID_B=<%= rs.getString("ID_Bcat_id") %>">番号</a>

としてID_Bを&で繋げればMethod="get"で送れますね。
inputタグで送る場合はformタグでactionアトリビュートに飛ぶjspを指定してsubmitボタンかJavaScriptでsubmitさせなければならないと思います。

QJSPの処理の途中で、JavaScriptの処理をしたい

プログラムをJSPで記述している(<% %>タグ)のですが、
JavaScriptのalertやconfirmなどのポップアップするダイアログを
表示したいのです。それは可能なのでしょうか?

Aベストアンサー

No.2の回答に対する回答(変な日本語ですが)です。

JSPとJavaScriptの処理の行われる順番について考えていないと
エラーになることがありますよ。
大まかな流れは、
 JSPのソースをサーバ側で解釈、実行する(HTMLのソースを吐き出す)
  ↓
 クライアントに生成したソースを送信する
  ↓
 クライアント側のブラウザがソースを解釈する
  ↓
 ソースの中のJavaScriptを、ソースの上のほうから順次実行する
  ↓
 同時に、通常の表示(HTMLの解釈)も実行される

 と、こういう流れですので、例えば、JavaScriptで値を入力し、
JSPでその値を使おうとすると、エラーとなります。

 具体的にやりたいこと(やろうとしていること)を書いていただいたほうが
適切に回答できますが、上記が今考えられるエラーの原因です。

Qeclipseとtomcatで404エラー

-----------------------------------
Windows7 Ultimate

eclipse Indigo
tomcat 5.5
-----------------------------------

eclipseとtomcatを使用して、JSPを動かそうとしています。
eclipseとtomcatとJDKはC:\pleiadesの下に配置しています。そしてワークスペースは
C:\workspace\Testとして登録しています。(ちなみに動的Webプロジェクトで作成しています)

既存のJSPファイルをeclipse上で右クリックして、サーバーで実行とすると、eclipseの画面上にきちんと表示されるのですが、その後、そこで動いていたtomcatを終了させて、eclipseの上部にあるtomcatのアイコンをクリックし、その後、通常のブラウザで表示させようとすると404エラーが出てしまいます。(http://localhost:8080/Test/test.jsp)

そもそも右クリック→実行の際に起動するtomcatとeclipse上部にアイコンで存在するtomcatはどう違うのでしょうか?

そしてどうすれば、上部のtomcat起動からブラウザで直接JSPを呼び出すことが出来るのでしょうか?

申し訳ありませんが、ご教授お願い致します。

-----------------------------------
Windows7 Ultimate

eclipse Indigo
tomcat 5.5
-----------------------------------

eclipseとtomcatを使用して、JSPを動かそうとしています。
eclipseとtomcatとJDKはC:\pleiadesの下に配置しています。そしてワークスペースは
C:\workspace\Testとして登録しています。(ちなみに動的Webプロジェクトで作成しています)

既存のJSPファイルをeclipse上で右クリックして、サーバーで実行とすると、eclipseの画面上にきちんと表示されるのですが、その後、そこで動いてい...続きを読む

Aベストアンサー

EclipseからTomcatを起動した場合、プロジェクトに生成されたWebアプリケーションのディレクトリをTomcatの公開ディレクトリに強制的に変更しています。普通に起動すると、プロジェクトのディレクトリはTomcatの公開ディレクトリにはなっていませんから表示は出来ません。

通常、Eclipseで作成したWebアプリケーションは、WARファイル(Webアーカイブ)として書き出し、それをデプロイします。Eclipseの「エクスポート」メニューでWARファイルを作成し、そのファイルをTomcatの「webapp」フォルダに入れてください。これで公開できるはずです。

QEclipseでのJDBCドライバについて

Eclipse3.1でデータベース(mysql)にアクセスするプログラムを作ったのですが下記のエラーが出ます。

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

これはJDBCドライバのセットアップがうまく出来ていないからなのでしょうか?
またEclipseでは、~.jarというファイルをプロジェクトのWEB-INFのlibフォルダに入れれば使える印象があるのですが、参考書(EclipseのではなくJAVAなどの)などにあるようにTomcatのインストールフォルダ以下common/libに入れて環境変数を変更しないといけないのでしょうか?

ご存知の方教えてください、よろしくお願いします。

Aベストアンサー

WEB-INF以下に入れると実行はできるのですが、エクリプスが.javaファイルをコンパイルすることができません。projectの一覧を右クリックしてpropertyを選択し、ダイアログ右側からJava Build Pathを選択し、タグからLibrariesを選び、Add JARsボタンをおして.jarファイルを登録して下さい。
たぶんこれでコンパイルできるはずです。

Qボタンを横に並べて表示させる方法

<input type="button"> ←このボタンを、並べて表示させるにはどうしたら良いでしょうか? (tableは使わない方法で) よろしくお願いいたします

Aベストアンサー

ソースをください。

inputはインライン要素なので改行は入らないです。


人気Q&Aランキング