■■ Servlet/JSP(EJB含む) 質問スレ Part2 ■■
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
03/05/14 11:32ID:RETM9b3/前スレ
■■ Servlet/JSP(EJB含む) 質問スレ ■■
http://pc2.2ch.net/test/read.cgi/php/1023501812/l50
0052test
03/05/30 11:49ID:Bn0/gbDC0054nobodyさん
03/05/30 12:29ID:???JSPファイルの中にクラスは書けないのでしょうか?
005654
03/05/31 15:56ID:???Beanを変更するとTomcat再起動しなきゃいけないでしょ。
だから、Includeでうまくできないかなあと思って。
0057nobodyさん
03/05/31 21:24ID:???Beanを変更するとTomcat再起動しなきゃいけないでしょ。
Beanを変更するとTomcat再起動しなきゃいけないでしょ。
Beanを変更するとTomcat再起動しなきゃいけないでしょ。
0058nobodyさん
03/06/01 11:34ID:fpa7NJkxご存知の方いらしたら、教えてください。
0060nobodyさん
03/06/01 13:56ID:???0061nobodyさん
03/06/01 14:34ID:fpa7NJkxできますけど
servletならresonseからoutputStream取り出して
GZIPStreamでラップしてあげれば終わりです。
JSPの場合JSPWriterなんで、そのやり方じゃできないんですよ。
0062あぼーん
NGNG0064nobodyさん
03/06/01 16:39ID:fpa7NJkx<%...%>の外側に
<html>とか書けないもんで。
そうするとjspのメリットが損なわれるんです。
0065nobodyさん
03/06/01 16:51ID:???> <%...%>の外側に
> <html>とか書けないもんで。
なんで?書けるだろ。
あんたのいうJSPのメリットが何だかわからんが、
一般に言われるスクリプトレットの多用による画面デザインの
作成効率、メンテナンス効率の高さをメリットと考えるのなら、
JSP上でそんなことしようとするのがそもそもの間違い。
MVCって知っているか?
006665
03/06/01 16:53ID:???> 一般に言われるスクリプトレットの多用による画面デザインの
> 作成効率、メンテナンス効率の高さをメリットと考える
↓
一般に言われる画面デザインの
作成効率、メンテナンス効率の高さをメリットと考える
スクリプトレットを多用すると逆に効率落ちまつ。
どうしてもJSP上でやりたかったらカスタムタグ作ったら?
0067nobodyさん
03/06/01 17:01ID:fpa7NJkx設定かなんかでgzipエンコーディングするように
できるんですか?
0068nobodyさん
03/06/01 17:01ID:fpa7NJkx書いてもいいんですが、
ブラウザで表示できないのは明らかですよね?
そうでもない?
0069nobodyさん
03/06/01 17:09ID:???0070あぼーん
NGNG0071nobodyさん
03/06/01 17:13ID:???> <html>とか書けないもんで。
> そうするとjspのメリットが損なわれるんです。
あほ、html構文が使えるのがjspのメリットだろ
じゃなきゃ最初からサーブレットで処理しろよ
0072nobodyさん
03/06/01 17:17ID:fpa7NJkx部分的にgzip encodingで送ってもブラウザでは表示できません
って事は理解できますか?
だから、html構文でJSPを記述できなくなってしまいます。
そこで、何かしらの方法でJSPが出力するデータ全て
をgzipでエンコードしたいわけです。
サーブレットでやれば簡単にできますが、
>html構文が使えるのがjspのメリット
のメリットを使いたいわけです。
0073nobodyさん
03/06/01 17:19ID:QjqCOy4N半角英数なら何も問題なく登録できるのですが。これはどんな原因が考えられますか?
java.sql.SQLException: Syntax error or access violation こんなエラーがでてしまいます。
ちなみに同じinsert文をmysql側で直接発行するとちゃんと登録できます
0075nobodyさん
03/06/01 17:38ID:fpa7NJkx知ってますが
だから、どこかの設定で変えられるのかかなぁと。
ちなみに
MVCに従うなら、どこに手を入れるべきだと思います?
これの答えがめちゃくちゃなら、
MVCという言葉を知っているだけに過ぎないですよね。
>>73
文字数とかは?
0077nobodyさん
03/06/01 18:06ID:QjqCOy4N問題ないです。'あ'とかでやってますし。
詳細を書きます。書籍情報を登録するテーブルを勉強がてら作ってみたのですが、
Insert into book_table (name,sectioncd,author1,author2,price,impressions) values ('あああ','300','111','222',333,'444')
というSQLでSQLExceptionが発生し、さらに
Check the manual that corresponds to your MySQL server version for the right syntax to use near ''44' at line 1"
というメッセージがでました。 ''44' というのがとても気になるのですが何なのでしょう?
日本語使わなければ登録できてます。助言をお願いします
0078nobodyさん
03/06/01 18:54ID:???もしかして、
「あるファイルをZIP圧縮して、そのファイルをダウンロードさせる」
んじゃなくて、
2chみたいに、zip圧縮したHTMLをブラウザで表示させる、ってこと?
#仕組みは知らんのでうまく説明できんが
だったらMVCの観点でもJSPで処理できた方が良いやね。
でも漏れはやり方知らん。
0079nobodyさん
03/06/01 19:07ID:???もしそれをやるんだとしてもZIPの展開はModelの役割。
展開して出力ストリームかなんかにしてそれをBeanまたは
そのプロパティとしてスコープに格納するのはController。
JSPではそれを出力するだけだね。
もしこれらを全部JSPオンリーでやりたかったらそれこそ、
JSPのメリットを損なわないようにカスタムタグでも作れ。
0080nobodyさん
03/06/01 20:20ID:fpa7NJkx>2chみたいに、zip圧縮したHTMLをブラウザで表示させる、ってこと?
gzip-encodingと言ったら、それ以外はたぶんないので。
gzipで圧縮して送るだけですね。
ヘッダをみて、ブラウザが勝手に展開してくれるので。
そう意味では79に書かれてる事は、読み流しておきますね。
まあ、これでMVCとかそんなレベルの問題の話しをしているのでは
無い事を認識してくれればいいんですが。
あと、カスタムタグではできないと思いますけど。
海外のサイトでも問題になっていましたが、
解決方法がないようなので、きっとないのでしょう。
jsp-servlet変換を行うパーサーをいじれれば
簡単なんですが。
Tomcatについて調べるのは面倒ですし。
変換後のjspをキャッシュから持ってきて、書き換えるのが
手っ取りばやそうです。
0081nobodyさん
03/06/01 20:21ID:fpa7NJkx>jsp-servlet変換を行うパーサーをいじれれば
>簡単なんですが。
だから、どこかに設定すればできるようになってると思うんですよね。
あぁ、こっから書いておけば誤解もなかったのかな。
>>77
impressionは文字列を入れられるんですか?
0082nobodyさん
03/06/01 20:50ID:QjqCOy4N回答ありがとうございます。impressionはtext型、priceはint型,あとはvarchar型です
ところで、またおかしなことを発見しました.
SQL文をSystem.out.printlnで出しているのですが、
Insert into book_table (name,sectioncd,author1,author2,price,impressions) values ('ああ','300','いい','、「',1234,'、ヲ')
と出力されました。しかし、私がHTMLフォームから入力したのは
順に 'ああ','300','いい','あ',1234,'う'
と入力しているのです。'ああ'だとデバッグ文で化けないのに'あ'とか'う'の一文字だと化けてます。'ああ'の用に二文字以上だと
SQLExceptionでシンタクッスエラーがどうこう、となってしまいます
0083nobodyさん
03/06/01 20:56ID:???0084あぼーん
NGNG0085nobodyさん
03/06/01 22:04ID:QjqCOy4N文字列のエンコードというのは以下の方法でやっていますがあってますでしょうか?
String hoge = request.getParameter("hoge");
String hoge2 = new String(hoge.getBytes("EUC-JP"),"EUC-JP")
でいいんでしょうか?
MySQLのインストールの時にujisと指定したような気がするのですが、
定かではないです。確認する方法ってあるのでしょうか?
全然的はずれなこと書いていたらすいません
0086nobodyさん
03/06/01 22:16ID:fpa7NJkxいまいち、状況が把握できないな。
ソースコード全部アップしてくれたほうが
速く解決すると思うよ。
0087nobodyさん
03/06/01 22:54ID:QjqCOy4NConnection conn = null;
Statement stmt = null;
//jdbc_URL
String jdbc_URL = "";
//SQL文
String SQL ="";
SQL += "Insert into book_table (";
SQL += "name,sectioncd,author1,author2,price,impressions) ";
SQL += "values (";
SQL += "'" + name + "',";
SQL += "'" + sectioncd + "',";
SQL += "'" + author1 + "',";
SQL += "'" + author2 + "',";
SQL += price +",";
SQL += "'" + impressions + "')";
System.out.println("SQL:" + SQL);
try{
Class.forName("com.mysql.jdbc.Driver").newInstance();
}catch(Exception e){
e.printStackTrace();
}
jdbc_URL = "jdbc:mysql://hoge/geho?user=xxx&password=yyy";
jdbc_URL += "&UseUnicode=true&characterEncoding=EUC-JP";
0088nobodyさん
03/06/01 22:55ID:QjqCOy4Nconn = DriverManager.getConnection(jdbc_URL);
stmt = conn.createStatement();
}catch(Exception e){
e.printStackTrace();
}
try{
stmt.executeUpdate(SQL);
}catch(Exception e){
e.printStackTrace();
}
try{
stmt.close();
conn.close();
}catch(Exception e){
e.printStackTrace();
}
008985=87=88
03/06/01 22:56ID:QjqCOy4N0090あぼーん
NGNG009154
03/06/01 23:29ID:+EWj3hSAJSP + BeanでBeanを変更してもTomcatを再起動しなくてもいい方法教えてけれ。
Windows2000
Tomcat4.1.24 J2SDK1.4.1_02
Eclipse2.1 + Lombozでやってます。
0093nobodyさん
03/06/01 23:50ID:fpa7NJkx"jdbc:mysql://localhost/",
"root",
"");
関係ないけど、こういう書き方の方が便利かな。
やっぱわかんないや、ごめん。
JDBCドライバのバージョンを変えると上手く行くかも。
2.0.14を使ってるけど、動作確認済み。
009485=87=88
03/06/02 00:03ID:a+SCCf4Rそうですか。
でも親切にありがとうございました。
ちなみにJDBCはmysql-connector-java-3.0.6-stable-bin.jarっての使ってます
0095nobodyさん
03/06/02 00:29ID:???SQL文の最後の「;」がないだけじゃ?
>SQL += "Insert into book_table (";
>SQL += "name,sectioncd,author1,author2,price,impressions) ";
>SQL += "values (";
>SQL += "'" + name + "',";
>SQL += "'" + sectioncd + "',";
>SQL += "'" + author1 + "',";
>SQL += "'" + author2 + "',";
>SQL += price +",";
>SQL += "'" + impressions + "');";
↑これ
0098nobodyさん
03/06/02 00:45ID:Qfc3wwjK0101あぼーん
NGNG010295
03/06/02 01:09ID:???もっと勉強してきます
|Google| λ....
0103あぼーん
NGNG0104あぼーん
NGNG0105あぼーん
NGNG010654
03/06/02 10:11ID:???>92 何秒待ってもだめみたいです。
>97 コンソールって、Eclipseの下に表示されてるやつのこと?
>57 で煽られたから、解決方法があるのかと思ったのだけど。
解決できないのなら、なんで煽られたのか分からん。
0107あぼーん
NGNG0108nobodyさん
03/06/02 15:25ID:e7shElzUserver.xmlの <Context> に reloadable-"true" は付いてますか?
0109108
03/06/02 15:25ID:e7shElzU0110あぼーん
NGNG011154
03/06/02 16:24ID:???webapps\app.xmlにreloadble="true"で、できましたー。
めっちゃうれしい。煽られた甲斐があった。感動した。
0112nobodyさん
03/06/02 22:30ID:TdjUH3D0思いっきりこれ。
これ使うとなんか上手くいかなくて
2に下げたら上手く行ったんだよね。
何が上手く行かなかったのかは忘れてしまったんだけど。
0113nobodyさん
03/06/02 22:41ID:TdjUH3D0http://www.gimlay.org/~javafaq/S146.html
0114nobodyさん
03/06/03 00:37ID:vRisExb9えっと解決済みでつか?
Servlet API2.3/JSP1.2のApp鯖使えるならフィルタの仕組みを利用すればいいでしょ。
この本にズバリその方法が載ってるですよ。
http://www.amazon.co.jp/exec/obidos/ASIN/4797319895/ref%3Dpd_bxgy_img_2/249-9050084-3349952
0115JSP勉強中
03/06/03 11:25ID:VHn8sAXLただいま、DB接続のコネクションプールのところを
やっているのですが、なぜこんなことができるのか
仕組みがわかりません。
.jspは.javaから.classになって、いってみれば
一つの.jspは一つのプログラムとして単体で
動作しているのですよね?
なのになぜ、他の.jspが生成したコネクションプールクラスの
インスタンスを利用できるのでしょうか?
0116nobodyさん
03/06/03 11:32ID:???違います。JSP以前にJavaのお勉強をしてください。
0117JSP勉強中
03/06/03 11:38ID:VHn8sAXLJavaから勉強しなおします。
0118sage
03/06/03 17:45ID:???いい本ってないですかね?
0119108
03/06/03 20:56ID:t2Pee81Z「モア・サーブレット&JSP」ってのが包括的な内容でおすすめ。
0120あぼーん
NGNG0121nobodyさん
03/06/03 21:53ID:vRisExb9Strutsのことも頭の片隅におきながら勉強しとくと吉。
0122118
03/06/04 14:47ID:???>121 Struts は難しそうなので今のところはやっていませんが、早い段階からやったほうがいいのかな……。
0123nobodyさん
03/06/04 16:27ID:IoqPnd5uええ。なので最初は「頭の片隅」程度でいいかと。
Strutsなど上位のフレームワークの本格的な導入は、
Java自体に慣れて、かつPerl/CGIとの違いなど理解できてからでも遅くないす。
0124nobodyさん
03/06/04 20:44ID:???ボトムアップ式、トップダウン式のどちらがお好き?
洩れはトップダウン式が好きなんでまずStruts使ってみて
それでJavaでのサーバーサイドになれました。
以前はPerlやPHPでサーバーサイドプログラミングしてたんですけど、
一気にJavaの魅力にはまってしまいましたよ。
0125nobodyさん
03/06/04 21:12ID:AOhZDyVmオブジェクトオリエンティドっていう厚い壁が。
センスが無いと思うならデザパタの本を。
あると思えば、Javaの言語機能を覚えよう。
もちろん、中途半端なJavaの知識でもできなくはないけど
本来できる事の半分くらいしかできなかったりするかも。
クイックソートを知らずにバブルソートの遅さで断念みたいな
感じ。
Cでmallocとか使った事ないなら、Javaをマスターするのには
けっこう時間がかかるだろうな。
自称Cがわかってるはどこまでわかっているのか。
で、本題だけど
本はなんでもいいんじゃない?
0126あぼーん
NGNG0127あぼーん
NGNG0128nobodyさん
03/06/04 22:08ID:P8L/c8q40129nobodyさん
03/06/04 23:05ID:???0130あぼーん
NGNG0131あぼーん
NGNG0132nobodyさん
03/06/05 11:20ID:T+KV7SZK<%@ taglib uri="..." prefix="..." %>
と宣言してある場合、実行速度に影響はあるのでしょうか?
あるとしても、JSPがコンパイルされる最初の一回だけだったりしますか?
0133nobodyさん
03/06/05 13:45ID:+OpBxhSrそんなに影響は無いとは思うけど、
使わないのは宣言しない方が、よさげ。
インスタンスが作られてしまうので
0134118
03/06/06 10:12ID:???今のところフレームワークの必要性がいまひとつよくわかってないので (便利なのかなあ、程度)
それでは頭の片隅に置いておきます。どちらかというとボトムアップのほうが好きかも....
>125
C++ を通ってないので確かに OO は苦手です
8086のアセンブラから入ったので malloc とかはわかりますが、
近年 C 自体ずっと使ってません。
0135nobodyさん
03/06/06 14:41ID:wJtPhAktありがとうございます。
JSPを見て回って不要なものを消すことにします。
0136nobodyさん
03/06/06 14:50ID:rP8LAn8i0137あぼーん
NGNG0138nobodyさん
03/06/06 17:23ID:8BK7tk7MJSPのプルダウンについて、質問したいのですが・・・
時間の分を5分刻みでプルダウンの中に格納し、
ユーザーが選択できるようにしたいんですけど、
***になにを指定したらいいのかがわかりません。
イメージ的には、カウンターのjを指定したいのですが、
うまくいかず・・・。
ご存知のかたいましたら、お知恵をお貸しください。。。。
<select name="Time">
<option value="default"> //デフォルトの空白
<% for( int j = 0 ; j < 55 ; j = j+5 ){ %>
<option value="ji">*** ←ここをどう指定したらよい??
<% } %>
</select>
0139あぼーん
NGNG0140nobodyさん
03/06/06 23:34ID:???最悪だな
お前何を勉強してきたんだ・・・
よくある入門書なんかの「第一章・はじめてのJSP」みたいな
かなりはじめに書いてあるようなことなのに
0141nobodyさん
03/06/08 02:36ID:2oHTynA1それ以前に、<option value="ji">でいいのか?
HTML自体まずいんじゃない?何するつもりか知らないけど。
<option value="ji"><%=j%>
0142nobodyさん
03/06/08 11:57ID:???0143nobodyさん
03/06/08 12:53ID:???つまんねーネタに喜んで飛びつくなよ低脳
0144nobodyさん
03/06/08 14:25ID:???0146nobodyさん
03/06/08 14:52ID:???0147nobodyさん
03/06/08 18:36ID:OXw+LV+Y0148nobodyさん
03/06/08 18:37ID:hQzg5/td0151141
03/06/08 23:49ID:???タグを閉じるか閉じないかは好みだと思ったものでね。
指定した部分答えてるんだから、いいじゃないか。
個人的には開いたタグは閉じるし、属性もダブルクォーテーションで囲う。
onload()が利かない原因を探すのが大変だしな。
ところで質問。
JSPとBeanのみで、サーブレットや web.xml を使わずに
webアプリを構築しようとした場合、何がやばい?
ちなみにそのアプリは、他にフレームワークを使用しているところと
servlet、JSP,JavaBean で作っているところが共存しているので・・・
漠然と危機感を持ってはいるんだが、具体的にどうとは言えず
ちと困っているのだ。
0152nobodyさん
03/06/09 00:06ID:???> ところで質問。
技術的にはServletを使わないでアプリ作れるが、
拡張性、メンテナンス性が激しく低下する。
他人が書いたそんなコードは見たくもないな。
web.xmlいじらないのは微妙だな。
FilterやServletContextListnerは使わんでいいの?
■ このスレッドは過去ログ倉庫に格納されています