◆JSP◆
板違い --------------- 完 --------------- >2 じゃぁ、どこで立てろと? あなたは、きっとPerl板で最初に PHPスレを立てた人間にも そのようなフォローを付けたんでしょうね。 phpだけじゃ、寒いからな。いいかげん。 要は、Server-SIDE Script 板という扱いだな。 Java は、プログラム板 JavaScript は、Web製作板 JavaApplet は、用途でWeB製作版かプログラム版 Servlet は、CGI/Perl版 JSP は、ココってわけだ。 間違い --------------- 完 --------------- JSP と PHP は、争い合うものではなく、共存するものだ。 Perl と PHP が 小規模向、中規模向 と使い分けられるように、 JSP は、大規模用に位置するものになる。 カウンタ程度で、JSPを使うのは飛行機でコンビニにいくようなものだ。 掲示板もやはり Perl。データベースを使ったものになると、PHP。 大規模なソリューションになると、JSPが良いだろう。 PHP命は、別にかまわないけど、 ドライバ一本で ゴルフするみたいなもんだね。 (てめぇはプロゴルファー猿か!) ゲームをさっさと終わらせて、金をたんまり頂くには、 パター、アイアン、ドライバー を使い分けようぜ。 >>6 それをいうなら、「9Iだけを持って」でしょ? ドライバーはJSP。高くて飛距離もでるが、小回りはきかない。 Japanese Sex Peopleの略。 意味は自分で考えな >14 eRuby って何? って、これか! http://www.kahori.com/ruby/earrings/ サーバ・サイド・スクリプトだから、俺的にOKよ。 別に煽りでもなんでもないけど、eRubyに何か語ることって あります? >>17 無いかなぁ。 「サーバ・サイド」ってとこに特有なアレコレで、共通な話はあるかもと 思ったんだけど.. それはそうと、JSPって、コンパイルされたクラスはJVMの中にずっと残るの? もしそうなら、遅いのは最初の人だけで後の人はスイスイのような気がする。 JVMに残らないまでも、クラスがストレージに残ってて再コンパイルの必要が ないなら、ほんとーーーーに遅いのは最初だけのような気がするんだけど。 >>18 何のサイトかなと思ったらフロムAなのね・・・気付かなかった。 画像とこっちの回線のせいで軽くは感じなかったけどjsp使ってるね。 あの規模ならJava使うものなのか。 もし>>6 氏が書かれたように小中規模=PHP,Perl 大規模=サーバサイドJava とすればその境界線はどんな感じになるのかな? 迷った方おられます? >>19 >それはそうと、JSPって、コンパイルされたクラスはJVMの中にずっと残るの? コンパイルされ、.classファイルが実体として残ります。 >もしそうなら、遅いのは最初の人だけで後の人はスイスイのような気がする。 その通り。 最初があまりにも遅いので、事前にアクセスしてコンパイルしておく、 というテクニックもあります。 >>21 それってネタじゃなくて本当なんすか? 最初からコンパイルしろよ〜って思っちゃうんですが。 >>22 え、どのへんがネタだと思いました? 全部本当です。 FreeBSD ってJSP使えないのか? TOMCATしか知らないけど FreeBSD版が無いみたいなんだけど。 あれ? でも、ここで使われている Java2 ってβですよね? Linuxエミュレーションでやってるのかな。 ネイティブが出るまで、JServ で我慢しようと思うのだが。 サーバサイドJavaのサンプルコードを出来るだけたくさん見て 勉強したいんだけど、そういうのが集まってるサイトを知らない? http://sourceforge.net まずはここ。 日本語サイトがあれば尚ありがたいのですが。 >>22 JSP の場合、書く人がプログラマーとは限らないから、アクセスされたときに 自動的にコンパイルされるようになっているんじゃないの? プログラマーなら HTTP 経由で呼び出すコードなんて簡単に書けるでしょ? 月光仮面おじさん登場!!! ホームページを作ったものの、まったくアクセスが上がらな くて悩んでいる人のためにお役に立ちましょう。 効率よく宣伝できる共有宣伝掲示板を18個設置しました。 全部宣伝して回ればなんと1,000以上の掲示板にカキコしたこ とになり即、効果が期待できます。さらに共有掲示板の隠し リンクを発見してそれらも全部宣伝して回ると計2,000以上の 掲示板にカキコしたことになり、さらにアクセスアップを期 待できます。もう、今日からアクセスが無くて悩むことは無 いです。今すぐここからアタックアタック!! http://home9.highway.ne.jp/cym10262/ eruby ってカレントディレクトリ(?)が 「ブラウザに参照されるファイルと同じディレクトリ」 じゃなくて嫌。chdir かけなくちゃいけなくて面倒だわ。 php から流れてきた人は違和感あるだろう。 そんな人いないか。(藁 マジでJSPやってる人って少ないわけ? それともどっかよその板にいるの? 今JSP勉強してるんだけど必死こいて一通り使えるようになった頃に 「JSP? クソだ逝ってよし!」なんて事にならないかと不安になってきたよ。 >>35 JSP 使う人ってもともと Java 使いだから、ここよりプログラム技術板とか 情報システム板に多いと思うよ。 もとが PHP で Perl と統合されたという経緯を考えると、ここはレンタルサーバや ホスティング・ハウジングの利用者が多いと思う。で、JSP をサポートしている業者が 少ないことを考えると、この板の JSP 人口が少ない理由になると思う。 JSP に関して言えば、表示用 Bean を書く手間がどうにかならないかと思う。 get<HOGEHOGE> は引数なしで、set<HOGEHOGE> は引数一つという制限は結構きつい。 引数 3 つの処理をやらせようと思うと、 setHOGE1(foo) setHOGE2(bar) setHOGE3(baz) getHOGE() --> 実行 という風にしないといけないのは面倒(setHOGE3 で実行という手もあるが、どの 順番で呼ばれるか分からないからそれは危険だと思う)。 三井住友銀行の オンライン・バンキングの申込みに、JSP が使われた。 あと、LooksMart の検索にも使われている。 jsp を使っている大手サイトで、もりage >38 三井住友が、クソ重いのは、JSPだから? それとも、開発が悪いの? 銀行系が重いのは、高度なセキュリティで守られているからです。 >>44 俺を無視するなよヴォケ 重いと感じる状況かページを、具体的に示せカス >>31 WebLogicは立ち上げ時orコマンドラインでJSPコンパイラを 事前に起動できます。 ティンコ >>44 俺を無視するなよヴォケ 重いと感じる状況かページを、具体的に示せカス -------------------------------------------------------------- 略してチンカス >>46 WebLogic6.0は、Linuxだと英語版しかなくってヤな感じ。 WebSphere使ってる人いる? ほんとだLinuxは日本語版まだでてないのか まだ5.1使ってます sp3ぐらいになったら6.0もいいかな 仕事ではJSP/Servletを使っているんですが、個人ではPHPを使ってます。 個人でもTomcatを使えばJSP/Servletは使えるんだけど、やっぱりPHPの既存のAPIの豊富さはいいよね。 仕事だとWebからバックエンドまでJavaで統一できる意味は 大きいけど、#PHPのプログラマなんて確保できないし 個人であえてJSP使うメリットって少ないかも でも、JSPはタグ自分で書けば何でもできるんだしさー、 みんなJSP使おうよー >>51 コード効率の問題で、別にオブジェクトなんて使わなくていーよ、 って人はやっぱりPHPの方が早くて楽チン。 でも、ちょっとスケーラブルなものにしようと思ったらJSPとか Servletになっちゃうよね。。 ZendとかがPHPを使えるWebLogic的なアプ鯖を出してくれれば いいんだけど。。。 PHPで某ショッピングページを作った事が ありまして、今回 JSPを覚えろと上司に言われて 覚えてるんですが 何でこんなに難しいんでしょうか?? さっぱりわかりません。 ・・phpの方が100倍簡単なような 気がします。 javaマスターにとっては JSPは楽勝だぜへへん!って 感じなんでしょうか? 本当に鬱です。 覚えられる気がしません。 はぁ。 >>53 上司に「てめぇが覚えろよヴォケ!」って言ってごらん。 覚えなくて良くなるかもよ。 >>53 JSP ってどの範囲まで? 単に .jsp にスクリプトを書く範囲なら PHP とそんなに違わないような 気もするけど?(まあどちらかっていうと ASP 感覚だが) Servlet との連携とか Taglib とか JspBean の作成とかまで含まれるなら Java での開発経験がある程度ないときついね。 PHP の代わりに JSP ってあたりから考えると前者かなあ。だとしたら Servlet とか Bean の作成とかいった部分はすべて無視してやればいい。 今日はじめてここに来たんですけど、JSPの話題ってこのスレッドだけ? もしかしてサーブレット+JSPって流行ってないの? まじかよー >>48 WebSphere 使ってる。3.5.2 からは JSP エンジンが Tomcat と同じ jasper に入れ替わっててビビった。 つーか、JSPって将来性あるん?ASPと比べてどーよ? 無駄なものなら覚えなくていいやというわけには(仕事でやるので) いかないんだけど、余裕があったら他のこと覚えようかと思って。 >>59 おいおい、マジかよ。そんな質問してるから2chは厨房バッカって 言われるんだよ。ちょっとは業界動向を調べろよ みんな「やってみたいな。」と思う気持ちは大きいですが、実際それで システムを構築してるかといえばまだまだまだまだ×10です。 雑誌やWebでブームになってる間は、普及してないと思って間違い無いです。 誰も話題にしなくなってきた頃が普及した(もしくは消滅した)目安です。 >>59 >>61 大規模(≠Windows)新規案件はすでにJSP一色だけどなー。 このスレみてると、2chに出入りしている人の業界カースト におけるポジションがよくわかるネ。 >>63 ちょっと安心した。 勉強続けていいのね。 >>63 そーだね。一年ほど前のバイト先では、JSPの案件は本当に多かった。 今ではもっと増えている事であろう。 で、今現在のバイト先では、「とある企業の Webシステムを『C++』で組んでくれ」と 云われたが……。はぁ。今更 C++っすか……。Javaでやってくれよ……。 >>63 俺のところもそう。UNIX 系の新規はすべて Servlet+JSP。 ASP と比べて云々よりもミッションクリティカルな業務をする サーバに Windows という選択肢は無い。オイラ銀行/金融/保険部隊。 JSPに興味があるです。 JAVA PRESS Vol.18 でJSPの特集をやっていたので読んでみた。 JSPで掲示板を作ろう、という内容だったけどなんだか胡散臭い。 >> ひとつのページはひとつのビュー。再利用のためにJSPをパーツ分割 >> などすると、それはもうビューとは言えなくなるのでお薦めしない。 って本当? JSP+Servlet+BeanでのMVCって、何がモデルでなにがビューなの? >>67 M=Beans, V=JSP, C=Servlet だが、それほど厳密に MVC が 適用できるわけではないよ。Model に変更があっても View へ通知 が行われるわけじゃないし。それから、俺は JSP をパーツ分割して <jsp:include /> や <%@ include %> したほうが良い状況も多々 あると思う。JAVA PRESS って専業のライターが書いてるわけじゃ ないからね (丸の内さんとか一部除いて)、個人的な趣味が入るよ。 だいたい俺みたいな実装屋も書いてるし (笑)。 JAVA PRESS は糞ですな。 JavaWorld はまとも。 JAVA PRESS 執筆者に 2chラー がいるのか。。。 とあるシステムをカスタマイズしたがほとんどのページが 意味もなく?3分割されてて大変だった。 再利用は良いけど、パーツ分割みたいな関数指向はやめてくれ。 仕変が大変なだけだ。このシステムが腐ってるだけか。 >>69 最近の Java World は新着情報と広告だけに成り下がった。 >>70 意味もなく3分割って、もしかして全ページ必ずヘッダ、ボディ、フッタの構成になっているってこと? あと「関数指向」ってなんかワクワクする言葉だね。 この情報ならここに沢山あるよ 変なURLに見えるけど内容は確か。 ttp://members.tripod.co.jp/casinoA1/ Resinってどうっすか? Tomcatの3倍早いがうたい文句らしいですけど。 このページって何ですか? すごく役立つことが沢山かいてあるのですが、 皆に嫌がられているようで意味が分かりません。 とろあえずブラクラではないようです。 ttp://members.tripod.co.jp/casinoA1/ >>77 この書きこみやってる奴って罵迦ですか? すごく糞なことを沢山かいてあるのですが、 皆に嫌がられているようで意味が分かりません。 とろあえずブラクラ以上の糞のようです。 >>79 おれは 2 番目がお勧めだな。そのうち HTML にして公開しようと 思って温めてたネタがほとんど書いてあった (泣 おいらも2番目を買った。一番堅そうな印象を受けたから。 ホントに一番いいかは分からん。 拡張タグライブラリって (・∀・) オモシロイ!! ありがとうございます。 明日会社帰りにでも探してみます。 ↑ワラタ ヲイラもミッションクリチカルな案件(ギンコ・ショーケン)で 相次いで新バージョンリリースされつつある webAPPsvr(weblogic,websphere,Jrun,BorlandApp,ora9i) ネタを求めてきてようやくここ見つけたのだが・・・トホホ 86のほうへ逝きます。 Cocoon入れたからJSPやるかなぁ… PHPの方が好きなんだけど >>88 仕事じゃないなら無理してJSP使う必要ないと思うが。 そうっすよね>>89 いやぁなんかJServいれた(Cocoonのため)のに、PHPも入れるって なんか変かなぁなんて弱気になっちゃってたっす >>38 ,39,40 超亀レス あれは今まで蔵鯖やってたC屋とVB屋が作ったんで フレームワークとアプリ設計、開発スキルが悪すぎ。 ハードウェア構成上は贅沢すぎるくらい十分なキャパシティ。 あの構成でここまで遅く出来るかと逆に折れはびびった。 WAS4.01でWebアプリ作ってまっす。 JSPが途中で切れてコケます。 でもプロキシ通して同じJSPを表示させると切れません。 なにか考えられることってありますか? >>97 それだけの情報で答えることは何もありません。 どーも。 ネタじゃないんですけどねえ・・・ 不思議だ・・・ アゲついでにおまいらにしつもんしるので、こたえれや。 秀和からでてる 「はじめてのJSP&サーブレットプログラミング」( ISBN4-7980-0312-3 ) だいたい終わった。 ごく簡単なJPS( Hello JSP world に毛が生えた程度 )は作れるようになった。 もっとJSPやサーブレットのプログラミング技術を上達させたいんだが、 なにか適当な参考書はないか? サンプル多いのがいい。 ……その本を読んでも 「ごく簡単なJSP(Hello JSP world に毛が生えた程度)」 しか作れないって暗にその本を貶してるのか? >>102 > 暗にその本を貶してるのか? ちゃうわ!ちゃんとタイトルよめ〜! 「はじめての」だぞ、「はじめての」! イキナリ高度な内容に踏み込むわけないだろ〜? #JSP・サーブレットを始めてみる!のには良書だと思う。 で、次は「中級編」ってな感じのを探してるんだけど、なんかない? いや「はじめての」だろうが、もちっとマシなモンを…。 俺の想像する生えた毛の長さと、君の言ってる毛の長さが違うのか? ぶっちゃけ JSPの利点ってどんなとこ? いやとりあえず興味はあるんだけどさ。 こういうのは人それぞれだろうが、とりあえずPHPと比較して書く。 ・PHPと同じくHTMLにコードを埋め込むタイプの記述方式なので、今までPHPやってきた人には楽。 ・なので生産性もPHPと同レベル。但し型については厳格なのでPHP使いは注意が必要。(その分潜在バグは発生しにくくなる) ・速度についてはキャッシュを使わないPHPよりは明らかに早い(なぜならコンパイルされたJavaクラスとなって実行されるから)。但し初回起動時のみとてつもなく遅い。(JSPをJavaクラスにコンパイルする必要がある為) ・実行するマシン自体にかなりのパワーが必要(JavaVM自体が重いから)なので、非力なマシンで実行すると逆にPHPより遅くなる。(これはハード的な問題ともいえるけど) ・ちなみにPHPと同じくコンパイルは不要。(指定ディレクトリにJSPを置くだけでJSPプロセッサが勝手にコンパイルしてくれる) といったところか。 あとPHPと一番違うのが、JSPは拡張性が非常に高いというところ。 最初はとりあえずJSPで作っておいて、パフォーマンスやスケーラビリティが必要な部分はServletやJavaBeansでどんどん拡張していくことができる。 PHPの場合、なかなかそういう拡張性がないから(CのライブラリやCOMを呼び出したりはできるけど動作としては最適化されてはいない)、これはJSPのほうが優れていると思う。 補足。 PHPは結局は「スクリプト言語」であるのに対して、JSPは(記述上は簡単になっているけど)Javaという「高級プログラム言語」であるというのは大きな違いかな? Javaで可能なことはすべてJSPでも可能であるということ。 PHPの場合、少しでも専門外のことをしようと思うと、どうしてもCなどの外部のプログラム言語の力を借りることになる。結局そこでは違う言語を使ってプログラムしなきゃならない。 JSPの場合、専門外のことをしようと思ったら、JavaBeansというJavaプログラムを作ってそれを呼ぶようにすれば、Javaだけでほとんどのことが実現できる。 110殿 ご解説ありがとうございます。 案ずるより産むが易し、とりあえず無料で試せるんだからやってみます。 しかしネット上での日本語ドキュメント量がさみすぃ。 なんでjsp、サーブレットは apacheにperlやphpのように 標準で組み込まないの? サーバーで動かすには apacheとTOMCATの2つをインストールさせないといけないのが面倒 だし TOMCAT自体サーバーのセキュリティーに不安を感じる >>111 PHPは「高級プログラム言語」ではないのでつか? 110殿 苦〜。型があるんすね。だと速いだけちゅうことか・・・。 大規模プロジェクトはJSPってことか?残念(T.T)。 まあ試してみます。ありがとう。 それとカスタムタグいいよね。 DB周りのカスタムタグを作っておくと後で開発がすごく楽になるし♪ >>114 「高級プログラム言語」と「スクリプト言語」の明確な定義があるわけではないので、あくまでも個人的なセンスだけど、PHPは「型がない」、「インタプリタである」という観点では「スクリプト言語」だと思う。 PHPとよく比較されるASP技術(VBScript)はPHPと似た特徴をもっているけど、あれはあくまでもVBScriptという「スクリプト言語」であって、Visual Basicという「高級プログラム言語」のサブセットだからね。 少なくともPHPとJSPを言語仕様だけで比較した場合は、同じ観点では語れないと思うよ。 ちなみに、JSPは「Javaのサブセット」ではないのでお間違えなく。JSPはJSPプロセッサによって完全なPure Javaコードに翻訳されるよ。 JSPやる場合の弱点(?)は、PHPやPerlだったらApache入れるだけで速攻動かすことができるけど、JSPの場合はApacheにJ2SEにServletエンジン(Tomcat)を入れる必要があり、環境構築に時間がかかるということ。 またJSP=Javaである以上、Javaの基本的な技術(CLASSPATHの設定、例外発生時にデバッグ方法等)はやはり抑えておく必要がある。JavaBeansとかやるならなおさら。 JSPスレでいうのもなんだが、趣味でWebサイト作るとか、簡単な社内システムを作るといった程度であれば俺はJSPよりはPHPをお勧めする。 ただ手に職をつけたいとか、そこそこ本格的なサイト(お金が絡むもの)を作りたいというのであればJSPを習得したほうがいいと思うよ。 自分のプログラマとしてのプロフィールに「J2EEによるWebサイト構築経験有」って書くことでDQN相手にハクをつけることができるし(w あくまでも俺個人の意見なので、他の識者の反論キボンヌ yahoo.com がPHPを使うようになるようですが、 このスレを見る限りJSPのほうがふさわしいと思います。 なぜ?PHPが選ばれJSPが選ばれないのでしょうか? PHPのマルチバイトの関数って便利だとおもうけどどうよ? 半角カナの処理とか >>119 特定企業の戦略に縛られたくなかったんだろ。 Javaの仕様は結局は大手ベンダ(IBMやSun)の支配下にあるからね。 Yahooは今までを見ても明らかなように、自分たちで技術仕様を好きなようにカスタマイズしたいんだろう。 サーバもFreeBSDだし、開発言語も今までは独自言語中心だったし。(そうでないのもあったが) だからオープンソースのPHPを採用したんだと思うよ。 あと、Javaはどちらかというと業務トランザクション付きのRDB連携とかに強いイメージがあるけど、 Yahooのように大量のコンテンツをさばくわりには業務トランザクションがほとんど存在しないという Webサイトには正直向かないと思う。 なので、 >このスレを見る限りJSPのほうがふさわしいと思います。 とは俺は思わない。 >>121 ありがとう。すごくよくわかりました。 大規模サイトだとJSPがふさわしいと思ったので。 PHPでも大丈夫なんですね。 Java系は、金融機関(ネットバンクとかネット証券とか)のような決済を伴うWebサイトのほうが主流だね。 PHPとは適材適所で棲み分けができていると思うよ。 >>124 まぁ適材適所だろうね。 いわゆる企業向けサイト(B2B・・・死語?)ではJSPが主流。 JSPはエンタープライズ拡張が容易であることが売りだから。 必要性があるかどうかは自分が何をするかで決まると思うよ。個人用サイトを開く程度なら必要なし。 掲示板サイト作るのにJSPを使う理由はない。 思うに、PHPと思い切り競合するのはPerl/CGIじゃないかな? 板違い。みんな軍事板逝けよ。 なんでこんなトコで次期戦闘機の話題やってんの? >>126 今年の最低気温を-20℃も更新しますた JSPで出来なくてサーブレットならできる事ってあるの? >>126 あの〜、あなたの言ってるのは、JSF:Joint Strike Fightern のことでわ? ここで話されてるのは、JSP:Java Server Pages なんですけど。 もしかして、もれ、釣られてる? ところで、 >>106 に照会されてた本を2冊買ったよ〜。 10日でおぼえるJSP/サーブレット入門教室 と JSPハンドブック Linuxホストもってるんで、これでJSP技術を磨くぜぇ!と思ったら、 データ-ベースはMySQL? ちょっとまて、もれのLinuxにはもうPostgreSQLが入って、使ってるんだ よぉ!止められないんだよぉ! http://pc.2ch.net/test/read.cgi/php/989341364/ にも書いたけど、PostgreSQLとMySQLをひとつのLinuxホストに同居させて 大丈夫なものでしょうかね? MySQL使うのはじめてなんで‥‥‥‥ JSPのあるボタンが押されたときに、JSPの表示はそのままで、セッションタイムアウトの 変更処理(session.setMaxInactiveInterval(int);)を行いたいのです。 以下のようなJSPのボタンクリックのイベントからstrutsのアクションを起動したいのです。 strutsのアクションの中では、セッションタイムアウトの変更処理を行います。 ただし、起動した時にこのJSPは表示したままにしたいのです。 そのようなことは可能でしょうか? 御存知のかたいらっしゃれば、どうかよろしくお願いします。 <%@ page language="java" contentType="text/html; charset=Shift_JIS" %> <html> <head> <title> </title> <SCRIPT LANGUAGE='JavaScript'> function test1() { // strutsのアクションを起動したい } </SCRIPT> </head> <body> <html:form action="/hoge"> <html:submit property="submit" value="ログイン"> </html:submit> <html:button property="actionstart" value="アクション起動" onclick="test1();"> </html:button> </html:form> </body> </html> なぁ、ものすごく初心者なこと聞いていい? JSPって、実行してるユーザーって、「誰」になるのかな? 実は、MySQLを、JDBCで呼び出すと、エラーになるんだわ。 「org.gjt.mm.mysql.Driver がみつかねーよ」って怒ってるように読めるんだ けど( 英語苦手なんで、じっくりは読んでない )、コンソールからJDBCで呼 ぶと、正常に接続できるんだよね。 で、はたと思ったのが、コンソール起動するユーザーにCLASSPATHを 設定してるんだから、もしかしたら「JSPを実行しているユーザ」にも、 この設定がいるんじゃないか?って思った。 でも‥‥‥‥‥誰?そのユーザー。 頼みますだ。もしかしたらすごいFAQなのかもしらんけど、ぐぐっても 出てこないんだよ〜 助けると思って、お願い。 >>134 APサーバを起動したユーザ。 Winならシステム環境変数にCLASSPATH切ってあるなら誰であろうと関係ない。 てゆうかCLASSPATHは普通、起動shellまたはbatの中で切るもんじゃないのか? 実行するユーザによってCLASSPATHが変わるなんて有り得ないぞ。 追加。 org.gjt.mm.mysql.Driverはどこに置いてる? Webアプリ作る場合って、普通はCLASSPATHを切ったりはしないよ。 (非WebアプリでJavaアプリ作ってた人がはまりがちな罠だけど) J2EE仕様で定められたしかるべきディレクトリに配置すればCLASSPATHを切らなくても自動的に読み込んでくれる。 Webアプリレベルのスコープであれば、${HogeApp}/WEB-INF/libの下にJARを丸ごと放り込め。 APサーバ全体のスコープであれば、例えばTomcatなら%CATALINE_HOME%/common/libの下にJARを置くべし。 環境変数としてのCLASSPATHからはDriverへのパスを削っておけ。 >>135 あ、ゴメン。環境書いてないわ。 OSは、Linuxです。RedHat。 Apache+Tomcatの組み合わせ。 org.gjt.mm.mysql.Driverは、$JAVA_HOME/jre/lib/exp に置いてある #もう退勤したから、うろ覚えのPATH。 >>137 あ、書き忘れ。 ちなみに、Tomcat起動したのは、rootなんです。 でもrootにも、上のCLASSPATH切った――はずなんだけどなぁ 明日、出勤したら、もっかい見てみます。 > $JAVA_HOME/jre/lib/exp ここじゃなくて、APサーバまたはJ2EEアプリ既定の場所(>>136 で書いた)に置くべし。 HogeHoge/WEB-INF/libというのがよく分からなかったら、%CATALINA_HOME%/common/libの下。 この下に配置してあるJARはTomcatが責任を持って起動時に読み込んでくれる。CLASSPATHの追加は不要。 JARじゃなくてclassを直接置きたいならlibじゃなくてclassesにパッケージ体系を展開しる。 > でもrootにも、上のCLASSPATH切った――はずなんだけどなぁ うろ覚えだが、Tomcatは%JAVA_HOME%のjre/libを読み込まない(または無効化する)かもしれない。 それ以前に、J2EEアプリではCLASSPATHをいじらないのが基本。 もし1台のAPサーバにそれぞれ異なるCLASSPATHを要求する複数のWebアプリが乗った時のこと考えてみ? WebアプリAのためにCLASSPATHをいじったらWebアプリBが起動しなくなった・・・なんてことになりかねない。 それを防ぐ為にJ2EEではCLASSPATHを使用しないでもライブラリが読み込めるような手段を提供している。 WARはその解決策。 まずは今までのCLASSPATH指向を捨て去ることだな。 >>114 >>117 古い話でゴメン、誰も言ってなかったので。 >PHPは「高級プログラム言語」ではないのでつか? >PHPは「型がない」、「インタプリタである」という観点では「スクリプト言語」だと思う。 ちなみにJSPも、中に書かれるSciptletの部分はスクリプト(=手書き)だと思う。 そしてPHP(=Perl)に書かれるコード部分もスクリプト。 ただし、どちらも言語としては当然「高級言語」の範疇。そして「高級言語」の意味は、 Native(いわゆる魔神語)から離れて、できるだけ人間が理解できる形になっているかが、 ポイント。 さらに言うと、Javaもインタプリタ(=中間言語インタプリタ)です。 間違えないように。 ついでに言うと、JSP(に限らないけど)でまともに開発したかったら、MVC(=Model , View , Controller)の 考え方をきちんと理解するといい。 「よくわかんないけど、仕事でやる事になった」んなら、とりあえずStrutsでも導入して 作業分担明確にすると、良くわかるよ...って、これは逆の話。 > Javaもインタプリタ(=中間言語インタプリタ) ではCLRで動作する.NETはあなたにとってはすべてインタプリタですね(w >>139 できた! 最初、ぜんぜん動作が変わらないんでおかしいな?と思ったんだけど Tomcatの再起動が必要なんだね(藁) これで先に進める〜 #でも、あとは来年か‥‥‥‥ >>141 >ではCLRで動作する.NETはあなたにとってはすべてインタプリタですね(w それは(共通ランタイムを鬼みたいに固めた)ライブラリを使用したネイティブ。 ..ていうかそこまでやると、ある意味インタプリタかも..(w でJavaは「俺にとっては」じゃなくて、実際、インタプリタ。 まさか、Javaのバイトコードって、そのまま実行されるとか思ってないよね? (注・インタプリタ=翻訳家の意味。つまりネイティブで実行できないものを、 代行して実行する何かが存在している、って事。この場合、VMがそれ。) あ、あと 「JSPは起動時のみ遅い」ってあったけど、これは本当。 ただし、「事前コンパイル」を行えばそれも無い。 ていうか「最初の起動が遅いくらい気にするなよ」って思うのが、開発側の 心情。 横槍かつスレ違いだが、 > それは(共通ランタイムを鬼みたいに固めた)ライブラリを使用したネイティブ。 .NETがネイティブのわけないって。PEだってMS自身がいってるだろーが。 .NETアセンブリは拡張子がDLLやEXEになってるだけで、中身はただのバイトコードって知ってる? でなきゃildasmで中身をあんなに簡単に見れるわきゃない。 > (注・インタプリタ=翻訳家の意味。つまりネイティブで実行できないものを、 > 代行して実行する何かが存在している、って事。この場合、VMがそれ。) まさにPEとCLRの関係じゃねーか。 訂正。 >中身はただのバイトコード ↓ >中身はただの中間言語(MSIL) >>145 >>146 .NETって、そうだったのか。俺、情報遅すぎ。 訂正サンクス。 っていうか、.NETってとことんJavaと同じなのね...。 最近、勉強はじめました。手始めに、カレンダーなんか作ってみました。 ちゃんと動くので、第2版ではもっとカレンダーらしくしたいと思ってます。 <%@ page contentType="text/html; charset=EUC-JP" import="java.util.*,java.text.*" %> <html> <head> <title>カレンダー</title> </head> <body> <% Calendar cal1=Calendar.getInstance(); Calendar cal2=Calendar.getInstance(); int h=1; cal2.set(cal1.get(Calendar.YEAR),cal1.get(Calendar.MONTH),h,0,0,0); out.println("<table border=\"1\">"); out.println(" <CAPTION>" + cal2.get(Calendar.YEAR)+"年"+ (cal2.get(Calendar.MONTH)+1)+"月カレンダー</CAPTION>"); out.println("<tr>"); for(int i=1;i<8;i++){ if(i>=cal2.get(Calendar.DAY_OF_WEEK)){ cal2.set(cal1.get(Calendar.YEAR),cal1.get(Calendar.MONTH),h,0,0,0); out.println("<td>"+cal2.get(Calendar.DATE)+"</td>"); h++; } else { out.println("<td></td>"); } } out.println("</tr>"); for(int i=1;i<5;i++){ out.println("<tr>"); for(int j=1;j<8;j++){ cal2.set(cal1.get(Calendar.YEAR),cal1.get(Calendar.MONTH),h,0,0,0); out.println("<td>"+cal2.get(Calendar.DATE)+"</td>"); h++; } out.println("</tr>"); } %> <table> </body> </html> >>148-149 149の、 out.println("<td>"+cal2.get(Calendar.DATE)+"</td>"); を、 if (cal2.get(Calendar.MONTH) != cal1.get(Calendar.MONTH)) { out.println("<td> </td>"); }else{ out.println("<td>"+cal2.get(Calendar.DATE)+"</td>"); } にしたほうがもっと良かったかもしれん。 >>154 strutsは糞なので使ってない。 フォーム多様するようなシステムだとちょっと便利だけどな。 >>155 では、ほかのフレームワークを使っているのですか? うちの会社ではフレームワークは自作してる。 小規模開発ならstrutsで十分かもしれんが、 大規模開発だとstrutsじゃ物足りな過ぎるし一々複雑になりすぎるから。 >>157 うーむ、そうですか。 J2EEはどうなんでしょ? mySmartUpload誰か教えてたも。 WEB検索したけど、日本語のページがないぽ。 うちんところはstruts使ってるなぁ。 案件によるんだが、これはこれで手軽で便利。 jspで、ローカルのデータを読み込むことって可能ですかね? >>162 サーバのローカルディスク上に存在するファイルを読むことは可能 (プロセスのパーミッションに許可があれば)。ブラウザで閲覧している 人のローカルディスクを読むことは不可能。そういう場合は <INPUT TYPE="FILE"> でファイル送ってもらえ。 小中規模なのに JSP/Servlet を選択するのはアホ? 自宅鯖で Servlet/JSP -- EJB -- DB やってますが何か? っていうか、規模で選択するのもちょっと違う。開発・運用する人たちの 慣れやその鯖の使われ様なども考慮にいれてちょ。 >>164 そうでもない。165さん激どう。以前JSP/Servletでやったことのある 経験者が今回はたまたま小中規模なんて場合には、以前のリソースが使いまわせたり するからむしろ理想的ですね。 Jakarta Tomcatのように無償の処理系もあるし、PHP or ASP or JSPは どれも似たり寄ったりでは? >>166 まあそうなんだけど、JSP/Servletも使えるしperlも使える奴が同じ人数いるとして 小規模でJSP/Servlet選択したらアホだと思う。 ━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━― 以前はperlとかPHPを使って仕事をしていたんだが最近はどの企業もjspに走っている傾向がある それはそれでいいのだがいかんせんjspにはtomcatの問題がいろいろあっていまいち使いにくい なのでそろそろphpに移行したい今日この頃でやんす サーブレットコンテナはTomcatだけとでも思っているんだろうな。173は。 サーバサイドJavaはJSPだけだとでも思っているんだろうな、173は。 結局のところ、Javaについて行けなかったんだろうな、173は。 仕事で作ったjspのシステムを改良して使いたいんだけどいいレンタルサーバーないかなー レンタルサーバーはほとんどjspをサポートしとらんのよ なのでサポートがしっかりしているレンタルサーバーを探しています だれかおせーて 体験談キボーン 26才人妻です。ダンナがかまってくれないので、いつも一人でオナってます。 でも、けっこうオカズに困るんですよね。そんな時見つけたのがYUIS!! 安いし、安心して買えるしなかなかいいですよ!いつもバイブ物買ってます! http://www.dvd-yuis.com/ >174 じゃあ君はtomcatの問題をすべて知っているのかね? tomcatひとつとっても問題がいっぱいあるのに知った風な口を聞くな うざいからとっととどっかいけ このウンコマン >>173 悪いことは言わん。PHPで済むのならPHPにしておけ。 PHPで済むシステムをわざわざJavaで実装することはない。 >173-177 2ちゃんではろくな人間がいねぇ 普通に聞いたのにこれじゃあいみねぇ こんなスレ立ててる前に本でもよんで勉強しろ >>177 =179 グチる前に勉強したら? あと普通はApacheと連携させて使うが、それだけでも問題はずいぶん解決することは知ってるよな ああ、はいはい、perlとPHPしかできないヤシはそっち行ってれば? 構造化プログラミングとやらでせいぜいスパゲッティ書いてなよ >>177 みたいのがむりやりJava使って作ったシステムが 使い物にならなくて機能拡張もパフォーマンスアップもままならなく、 結局全面リニューアルという案件が最近多いのはこのためか。 マジでPHP的な作り方止めて欲しい。 Javaやるんならオブジェクト指向のお勉強してからにしてね。(はぁと) perlやPHP経験者ってMVC理解してないヤシ多いよな。 フレームワーク使っててもJSPの中にロジック書く書く。 何のためにリクエストプロセッサ別に分けてんだよと小一時間 じゃああんたら給料はいいんかい? そんだけ大口聞いてんだからたいそうもらってんだよなぁ? それともしったかか? どっちかはっきりせんかーーーい そりゃperlやPHPなんかに比べりゃ悪いわけが無い罠 ましてや電波じゃないし。 >>184 スマソ。J2EE関連の本も書くし雑誌の記事も書くし講演もやってるが 給料はそんなに良くない。PerlやPHPしかできないエンジニアよりは 貰っているとは思うが。 それより給料の高低の問題にすり替えている時点で問題把握能力低すぎ。 社会的には給料で判断されるのが世の常じゃない? いくら技術があっても評価されないんじゃ意味ないし つうか世の中金もらって何ぼだし いいもの作って何ぼだし 技術があるのが基本だけど ちなみに俺は年収800万ちょい >>187 大企業に何年もいるだけであがる給料の高低に何の意味があるんだか。 使えない管理職より吸収早い若手のほうが技術力があることはいくらだってある。 ヴァカか?こいつ? いいなぁ、800万か…漏れ、500万ぐらい。。負け組か。。 ∧_∧ ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。 =〔~∪ ̄ ̄〕 = ◎――◎ 山崎渉 >188 馬鹿はてめえダヨー 俺ッチは別に大企業じゃねえんダヨー 実力で勝ち取った金額なんダヨー わかったらとっととどっかいけ このウンコマンがぁ ペッ >>197 いいねぇ、これだけ低レベルでそんな金額もらえて。うらやますぃ。 すれたいがJSPになってるけど、Tomcat担当のスレはここで良いですかいの? 洩れは趣味で自宅鯖にTomcat入れてみて、JSPの入門書買って来てコード入れたら動いてラッキー!なんで、いろいろコード動かしてみたですよ。 でも、Apacheの方にmod_vhost_alias入れて、バーチャルホスト試してみよ〜としたら、JSP使えなくなっちゃったですよ。 今は、JSPを動かしてみる時と、mod_vhost_aliasを動かしてみる時で、httpd.confを書き直して、Apache再起動しているですよ。 鯖を公開している訳でないし、趣味だし、ま、いっかなとか思った事もあるですけど、やっぱ正しくない対応だと思うですよ。 で、Tomcatって、mod_vhost_aliasのバーチャルホストに対応させる事ってできるですか? ApacheMLで同じような質問あったですけど、誰も回答してないし、ぐぐっても見付からないんで、もしかしたらできないですか? あ、なんといま>>199 じゃん。 200ゲットしとこ swingからjsp呼び出すって、いってる香具師がいるんだけど こいつは、分かってるのかな? それとも、よく分かってないのかな。 portをhttpで叩けばいいんだから、呼び出すのは不可能じゃない。 でも、よくわかってないんだとおもうな。 javaはおとなしくアプレットだけ作ってろ!! いろんな分野に首つっこむから No1になれないんだよ WEB界のNo1言語はPHPで決まり!! >>WEB界のNo1言語はPHPで決まり!! 何を基準に?俺もPHPは好きだがお世辞にもNo1とはいえない。 開発するシステムによって言語も見合ったものに変えるのが◎ >>swingからjsp呼び出すって、いってる香具師がいるんだけど 確かにうける。呼び出すってかたぶんIE立ち上げてるだけじゃないの(笑) 普通、JSPからServlet(Beans) 仕様設計ががっちりできてればJAVA系 仕様設計があやふや(打ち合わせしながら決めてく場合)はPHPじゃない? でもWeb系って短納期開発が結構多いから自然とPHPとかになりがち。。。 JSPとかが大規模開発に多いのはこういう理由もあるのかな? 大規模だと仕様がっちりいくからね。 大規模開発の仕様って特定の言語を意識して書かれてないものなのだが >>208 設計の中の方式検討フェーズで、 要件から最適な言語を決めるって感じでしょ。 客先から言語を指定されていたりすることもあるけどね。 【ゴールデンレス】 このレスを見た人はコピペでもいいので 10分以内に3つのスレへ貼り付けてください。 そうすれば14日後好きな人から告白されるわ宝くじは当たるわ 出世しまくるわ体の悪い所全部治るわでえらい事です 管理、運用者はTomcatを使ってWEBをめちゃくちゃにして 自分しか分からなくするのが一番良い 会社を見下すのだ >>213 所詮会社だからな 引き継ぎ雇うなら俺に持ってコイって感じで金取る技 >>212 Tomcatだけでそんなにぐちゃぐちゃになりますか? ApacheでCGIとか使った方がかなりぐちゃぐちゃになるような気がします Kent Webとかネットサーフレスキューに対抗して、 アクセスカウンタ、掲示板、チャットなどの各種ツールを JSP + Servlet + 自作Javaユーティリティクラスなどで作ろうという 猛者はおらんかね? いくらでもある カウンタも掲示板もチャットもblogもある >>217 そのサイトのURLか名前キーワードキボンヌ 漏れはJSPの書籍しか知らないんだす。 掲示板とチャットとうpロダなら見たことはあるが JSPバリバリだったなぁ >>219 有償のフレームワークかよ。 ネットサーフレスキューやKent WebのCGI/perlスクリプトのように無償配布されているものを探しているんだが…。 >>221 そのサイトのURLを是非とも教えてくだせえ。 もっともカウンタや掲示板のユーティリティクラスなんか無意味な気がするけどね。 >>222 まず、なぜそういったもんが欲しいのか? ソースを見て勉強するためだというのなら、忠告がある。 JSPのみで処理してるperlモドキソースなんか、見るだけ無駄だし 掲示板やチャット程度なら、入門書のサンプルとして必ず載っているレベル。 うpロダの場合、俺の見たサイトのは独自実装してたっぽいけど、今ならcommonsで数十行で実装できる。また、やはりJSPがスパゲッティ。 そうか。それなら、 JSP + Servlet + EJB ; JDBC + Struts or JSFで作られたサンプルソースとかあったらええなあ。 >>225 EJB使ったwebアプリなんか配布すると思うか? Strutsはまだわかるが C 言語を使用して次のプログラムを作成しなさい。入力として、正の浮動小数点の値が次のように与えられているとします。 float a[]={1.5, 3.3, 6.7, 0.2, 2.9, -1}; 但し、この -1 はデータの終りを意味している特別な値です。この時、与えられた数の平均値を計算して出力するプログラムを作成しなさい。 また、プログラム中の配列変数 a の定義を次に取り替え(それ以外の部分は変更せずに)、同じく正しく計算できることを確かめなさい。 float a[]={3.3, 6.7, 0.2, 2.9, -1}; これ誰か至急教えて欲しいよ〜>w< C 言語を使用して次のプログラムを作成しなさい。入力として、正の浮動小数点の値が次のように与えられているとします。 float a[]={1.5, 3.3, 6.7, 0.2, 2.9, -1}; 但し、この -1 はデータの終りを意味している特別な値です。この時、与えられた数の平均値を計算して出力するプログラムを作成しなさい。 また、プログラム中の配列変数 a の定義を次に取り替え(それ以外の部分は変更せずに)、同じく正しく計算できることを確かめなさい。 float a[]={3.3, 6.7, 0.2, 2.9, -1}; これ誰か至急教えて欲しいよ〜>w< >>227 このスレはC言語スレじゃない。 C言語のスレはこちらの板で探せ。 プログラム http://pc5.2ch.net/tech/ >>231 マルチでスレ立てまでしてる香具師だから無視でいいと思われ >>216 ==>>218 ==>>222 >>226 J2EEのライセンス問題に引っかかることをいっている? JBoss対応なら問題ないかと思うのだが、どうなんですかい? Apache StrutsにJakarta Commonsか。 掲示板フレームワークとかってのがJakartaには充実しているのかな? Jakarta JetSpeedのようなポータルサイト支援とか(今試しているのだが)。 >>224 おれにはちょっとした目的があってネットサーフレスキューとかKentWebにあるようなPerlもの、 レッツPHPにあるようなPHPスクリプトを Javaで再現したものが無いものかと探していたのだよ。 MYSQLかFirebirdなどのデータベースを使用することを前提としても良い。 WeblogやWikiなどと連携できればなおよいのだが。 とにかくポータルサイトみたいなものを作ってみたくてさ。 JSPにおきかえるだけでは確かに汚いと思う。 そこでStrutsやJSF, MVCアーキテクチャーを考慮してJ2EEパターンでどうにかできないかなと考えている。 J2EEパターンはまだ勉強していないので今はどうともいえないのですが。 そして拡張性を高めフレームワークとなっていればなおええかなあと思ったりする。 あと、http://tackysroom.com/ のような昇進機能付きというお遊びな掲示板に改造することもできる フレームワークが欲しかったりする。 最終的にはそれらをX3D, Java3Dなどと併用してVirtual Realityに応用できないかと考えている。 >>233 HelloWorldしないうちから欲張りすぎでツよ。 >>234 基本的にかかないよ。最終仕上げはとくに。 >>235 Helloworldは10年前にN88Basicでやった。 basicとJavaはまったく別物だ。 大体10年前にN88basicって、当時すでに時代遅れだ。 Cold FusionでJSP使ってる奴、いますか? JSP(Orion Application Server)で作られたサイトなんですが、簡単な集計表を 作成・表示するだけなのに劇重だそうです。 たぶん、きっと、作り方に問題があるんですよね? ${hoge.text}に含まれる改行を<br>タグに置換したいのですが、うまくいきません。 どうやればいいでしょうか? ${fn:replace(hoge.text,"\\n","<br>")} >>244 ${fn:replace(hoge.text," ","<br>")} >>245 確かにそれでうまくいったのですが、それは正当な方法ですか? しらない。それで動く。他に記述方法はない。 っていうか、正当ってどういうこと? 理想的かどうかということであれば、式言語のなかでこういう処理すること自体があまりお勧めではないということにも。 JSTLでEL式そのものを表示したいときは どのようにエスケープしてやるのでしょうか? >>205 C言語がNo.1 javaやC++は複雑で嫌 C言語でC++やJavaとおなじことやるほうが複雑でいや。 CオンリーでWebアプリなんか作ってられるか。 ネットワークとの親和性も低いし、セキュリティにも弱いし オブジェクト指向じゃないし 糞すぎる JSPからリンク文字列をクリックしたときに自作クラスを呼べるようにしたいのですが、 何か方法はないのでしょうか? ---------JAVAソース--------- package test.ExeOpen; import java.io.IOException; public class ExeOpenClass{ public static String OpenPro(){ try{ Runtime myRuntime = Runtime.getRuntime(); myRuntime.exec ("c:/test.exe"); }catch( IOException e){ e.printStackTrace(); } } } JSP側から <a>タグでクラスにリンクしたいと思っています。 <a href = " ??? " >リンク</a> ???への指定文字がわかりません ご教授お願いします >>256 JSPのこともJavaのことをよくわかってないな。 まずJSPのことを勉強しろ。 aタグでリンクできるものはまたべつものだ。 exeファイルをリンクしてユーザに実行させたいなら<a>タグに直接書け。 あとはサーバ側、ユーザのブラウザ側のMIMEタイプの設定次第だ。 それとも、exeファイルをServletを使ってどうしたいのか? 質問です。 [送り側JSP] <dt><label for="rcomment">コメント</label></dt> <dd><textarea name="rcomment" id="rcomment" cols="55" rows="10"><%=rsgetid.getString("pcomment")%></textarea></dd> [受け取り側JSP] String comment=request.getParameter("rcomment").replaceAll("\n","<BR>").replaceAll(" "," ").replaceAll("\t"," "); として、送り側のテキストエリアに入力されているデータを受け取ろうとしているのですが、 なぜか値がnullになってしまいます。 TEXTAREAの初期値をなしにすると commentには値が入るのですが、request〜のほうを<%=%>で表示させてもnullが出てしまいます。 送り側では、rsgeid.getStringの値は正常に取得できていて、HTMLの出力としても <textarea>内容</textarea>と出力されています。 環境 Tomcat4.1.31 J2SDK1.4.12 が実行環境なのですが、対処法などはありますでしょうか。 と思ったらnull出なくなってるし・・・ 名前の指定ミスだったのかな。。 とりあえず解決しました。 ageてまでするほどのことでもなく申し訳ない。 送り側を更新していなくて古いHTMLを表示していた、とか。 質問させてください。Tomcat5.5.17で正常に表示したJSPを4.1.27でも 表示できるようにしようとしたのですがどうしても文字化けしてしまいます。 保存エンコードをUTFやシフトJIS変えても、ソース内のエンコード宣言変えても だめでした。ブラウザ側でエンコード変えても化けてしまうようです。 IEとFireFoxで確認したのですが化けてしまうようです。 JSPから変換されたJAVAコードを見るとその時点で既に化けているようです。 ソースのどこがまずいのか、またどこをどうすれば解決できるか教えていただけないでしょうか? ◇元の表示:ほえほえほえbar ◇16進ダンプ(EUC-JP):A4 DB A4 A8 A4 DB A4 A8 A4 DB A4 A8 62 61 72 ◇化けた16進ダンプ:C2 A4 C3 9B C2 A4 C2 A8 C2 A4 C3 9B C2 A4 C2 A8 C2 A4 C3 9B C2 A4 C2 A8 62 61 72 ◇問題のソース <?xml version="1.0" encoding="EUC-JP"?> <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" ; version="2.0"> <jsp:directive.page language="java" contentType="text/html; charset=EUC-JP" pageEncoding="EUC-JP" /> <jsp:useBean id="SimpleMessageBean" class="wts.common.SimpleMessageBean" scope="request" /> <jsp:text><![CDATA[<?xml version="1.0" encoding="EUC-JP"?>]]></jsp:text> <jsp:text> <![CDATA[<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" ;>]]> </jsp:text> <html version="-//W3C//DTD XHTML 1.1//EN" xml:lang="ja-JP" xmlns="http://www.w3.org/1999/xhtml" ;> <head> <link href="/ex/include/style.css" rel="StyleSheet" /> <link href="/ex/" rel="Start" /> <title>ほげ</title> </head> <body> <p> ほえほえほえbar </p> </body> </html> </jsp:root> >>261-262 Tomcat4.xではJSP2.0に対応していないよ。 JSPのソースコード全体とweb.xmlをJSP1.2対応に全面的に書き直す必要がある。 >>263 SOREDA!!!1! ・・・と思ったがバージョン表記以外書き換える場所がないような気がする。 EL式とか使ってないし、1.2でも確かXML Syntaxは使えるはずだし。 (と言うかXML Syntaxが駄目なら文字化けどころかエラー吐いてくるかと) ちなみにバージョン表記書き換えてweb.xmlもTomcat4.1.27のサンプル パクってみたけど文字化けは一向に直らない・・・orz >保存エンコードをUTFやシフトJIS変えても、 >>262 のコードだったらソースの保存文字エンコーディングはEUC-JPであるべきでは? pageEncoding="EUC-JP" とか、<?xml version="1.0" encoding="EUC-JP"?> とか。 >>265 それもあわせて変えてみましたが駄目でした。あえて違う設定にもしてみたものの 若干化け方が変わっただけでちゃんと日本語が表示される気配がありません。 どうもPureなJavaコードに変換される時点でもう化けているようです。 ちなみに普通のHTMLをTomcat上に置いて見た所ちゃんと日本語表示できました。 >>266 >どうもPureなJavaコードに変換される時点でもう化けているようです。 ええと、一つの可能性だけど・・・ もしかしたら、Eclipse + Tomcat Launcher Pluginという環境? OSは?「PureなJavaコード」を確認しているエディタは? >>266 Eclipseは持ってますがあんまりに重たいので使用していません。 Tomcatは完全なスタンドアロンで動作させてます。 5.5.17と4.1.27が共存してますが今は4.1.27のみ起動しています。 OSはWindowsXP、エディタはEmEditorを使っています。 化け方に関しては>>261 のとおりです。 自己レス。結局原因不明でしたが何故かJavaBeansから吐き出す日本語データが 文字化けしてないので全部プロパティファイルに突っ込んでtaglib作って対応できました。 //それにしてもJSP1.2だとjsp:elementも使えないのね…客先の鯖じゃなければ //JSPの方を合わすんじゃなくて鯖の方をTomcat5.5に更新してたよorz jspで文字を点滅させることってできますか? htmlのblinkタグみたいに。 >>270 意味不明。 htmlのblinkタグ使えばいいじゃない。 >>270 はJSPをJavaScriptか何かと同じような ものとしか認識してないんじゃないのか? データベースの列の合計値を拾って表示するのってどうやるの? DBはMYSQL使ってます >>274 select sum(bar) from foo OS : WinXP ・apache2.2 (PHPも入ってる) ・resin3.1.0 で、jspな開発環境作ろうとしてるんですが、リクエストがすべてresinに流れてしまいます。 そのせいで、*.phpを resin のPHPが処理しようとしてしまいます。 apacheの方のPHPで *.php は処理し、 *.jsp は resin で…という設定がわかりません…orz といいますか、*.jspのみresinに処理させる事はできるんでしょうか? # apache.confへの追加 ------------------- LoadModule caucho_module "C:/resin/win32/apache-2.2/mod_caucho.dll" <IfModule mod_caucho.c> ResinConfigServer localhost 6800 CauchoStatus yes </IfModule> ------------------- # resin.confの変更 ------------------- <!-- <http address="*" port="8080"/> --> <web-app id="/" root-directory="d:/www"/> ------------------- くらいしかしてませんので、もっと細かく設定しなければならないんでしょうね… resinの細かい設定ページがみつけられないし、resinの開発元サイトもいつのまにか404になってるし どうぞよろしくお願いいたします。 自己解決しました。 単純に app-default.xmlで、無効にしておけばよかったようです。 スレ汚しすみませんでした。 Windows-31Jでエンコードしたページってマックから見ると化けるんですか? ブラウザが対応してたら化けないよ。 もちろんMacにない文字使ってたら化ける可能性はある。 IANA文字エンコーディングに対応していないブラウザなんてあったら糞だけどなw 携帯電話からJSPページを見たいのですが、どのようにJSPプログラムを 書けばよいのか教えてください。 よろしくお願いします。 シフトJIS使っとけばいいんじゃね? あとは通常通り携帯で見れるHTML吐けばいいと思う。 JSPでExcelファイルに値を書き込むにはどのように記述するのか どなたか教えてください 世間じゃ誤解が広まってるみたいだけど、"Windows-31J" って IE6 でも対応してないから。 ちゃんと表示できるのは自動認識の末 Shift_JIS 扱いになってるだけ。 MS932はWindows-31Jのアリアスだろい. TOMCATいれたらkasperkyが怒り狂ったんだが 仕事で使うことになりました。 Javaは苦手なんで、非常に不安ですが、>293を見て笑えたのでほっとしました。 質問です。 javaサーバーサイド(Servlet,JSP)までで、 mysqlデータベースをからめ、Eclipseで構築、 またはViで構築したいのですが、いい本ありますか? 私はCENT OSでサーバーを作っているので、その中に 組み入れたいのですが..... 板違いならここに聞けばいいよって教えてください。 よろしくお願いします。 まずは環境を作りたいです。 Eclipse開発手順は、javaでHelloworldってサイト見れば解るかな。 後、Tomcatプラグイン入れたらプロジェクト構築で幸せになれるかも。(tomcatの場合) 書籍は、2版が発行されたばかりの DBマガジンから出た「一番わかるJSP/Servlet」 それでも解らないなら SE必修シリーズ 基礎からのサーブレット/JSP がお勧めかと。 この2冊で覚えた俺。 後はJavaの知識とKIAIとネットで乗り越えればいい。 Javaソースが基本的にそのまま使えるからDB使うにしても Servletから接続すればいいだけ。 後、解らないことあればこの板でいいよ。 DBマガジンから出た「一番わかるJSP/Servlet」 これアマゾンにのっていますか? でてこないんですが、タイトルあってますか? ありました。 ジュンク堂に聞きました。 まだ本は見てないのですが、linuxに 対応していますか? Javaのプログラミングは基本、ライトワンス(一度書けば動作する)だよ。 MySQL、DBにしてもSQL文は変わらないし、使用するJDBCドライバも変わらず。 本に書いてあるソースコードが対応か聞いているのでであれば、 もちろん対応しています。 LinuxでEclipseを動作させたいならEclipseのスレのテンプレを読むなりすればOK。 本に書いていなくてもそれ見れば解る。 linuxでMySQL環境の方法など載ってますか?って言うなら Linux板っていう適切な場所あるんでそっちで調べると良いよ。 MySQLの設定はデータベース板かLinux板できちんと聞いて。 悪いことは言わないし、教えてくれるスレあるよ。 後、開発について対応と言うなら、 LinuxでもEclipseなんてWindowsとほとんど同感覚に使える。 WindowsなどでプログラミングしたものをLinuxサーバにUPして動作させる方法 取れるし。 要するに、サーブレットのソースコードじゃなく CENT OSでMySQLを導入したサーバ構築方法が知りたいだけ? なら、Linux板行ってサーバ構築勉強しておいで。 MySQL動くJSPサンプルなら「JavaでHelloWorld」ってサイトにあるので それで動くかテストしましょう。 その後、ソースコード弄る段階になってからまたおいでー JSPのHTMLとJavaのまぜこぜのコードは読みにくい… インデントもうまく認識してくれないし。 >>305 頑張ってください。 >>307 MVCモデルを理解してる? JSPはViewだから、ServletでJavaの処理をさせてみよう。 フレームワークを使えるなら、カスタムタグで結構すっきりするよ。 ごちゃまぜると読みにくいのもそうだしサーバの負荷が高くなるよ。 >>308 MVCモデル、確かに説明されましたが、研修用に取り組んでいる段階なので、 「とりあえず動けばいい」と言われました。 そうかー、こういう状況にならないようにJSPとServletを明確に分けるべきなのか。 なぜサーバの負荷が高くなるのか、さっぱりわからん。 あまりわけわからないこと言わないでくれ。 >310 308じゃないけど解らないなら勉強してから来い。 実際に並行加算・再起処理を組んで負荷チェックすりゃ解る。 >>309 JSPを極めたいならMVCモデルを研修時に理解すれ。 JSP/ServletはSQLをそのまま発行できるから便利だね。 個人でもうちょっと取り組んでみます。 >実際に並行加算・再起処理を組んで負荷チェックすりゃ解る。 >実際に並行加算・再起処理を組んで負荷チェックすりゃ解る。 >実際に並行加算・再起処理を組んで負荷チェックすりゃ解る。 >実際に並行加算・再起処理を組んで負荷チェックすりゃ解る。 >実際に並行加算・再起処理を組んで負荷チェックすりゃ解る。 ぷげら。 MVCで負荷が軽くなる根拠無し。まるで宗教だな。 JSPってどうやって動いているのかわかってるのかね? むしろカスタムタグ使ったら重くなるだろうに。 それとも、本番環境でもプリコンパイル無しで動かしてるマヌケか? 処理負荷はプロファイリングでもしないと何とも言えないものだから断言するなよな プロファイリングって言葉を覚えたてで、言ってみたいだけ。 ( ゚д゚)ポカーン プロファイラ使わないとわからないのかよ・・・ Das Tagebuch von Judith uber Technologie: Tomcat 6.0.18 重大な変更 ttp://techjudith.blogspot.com/2008/08/tomcat6018_08.html これはJSPerの標準的な思考なの? ttp://youkand.cocolog-nifty.com/blog/2008/08/tomcat6018_a913.html こんな意見もある ttp://d.hatena.ne.jp/ripjyr/20080808 ここでも触れていた。 ttp://init.jugem.jp/?eid=1088 こことか。 <t:tag value="<%= request.getAttribute("name")%>" /> なんて書く奴がおかしいだろ Strutsで <html:text name="hoge" property="<%= "foo[" + i + "]" %>" /> とか書いたことある。 これもNGになったってことか。 正しくはこうだね。 <html:text name="hoge" property="<%= \"foo[\" + i + \"]\" %>" /> Strutsのチュートリアルにも <html:text name="stringbean" property='<%= "labelValue[" + ctr + "].label" %>' /> なんてあるもんな。 http://struts.apache.org/1.x/struts-taglib/indexedprops.html Strutsのチュートリアル書いた奴もおかしいってことか。 そうだな <html:text name="stringbean" property='<%= "labelValue[" + ctr + "].label" %>' /> なんて書く奴はおかしい <html:text name="stringbean" property='<%= \"labelValue[\" + ctr + \"].label\" %>' /> と書かなければおかしい そうか、Strutsのドキュメント書いた奴はおかしいのか。 >320 >動いていた方がオカシイという声もいただきますが、 >それは正論ふりかざしているだけです。 >今まで動いていたものが動かなくなるのは、現場をあまりに無視した行為です。 言ってる事は後半正しいけどな、 なるべくオカシイことをしないのがプロの仕事だ。 オカシイかどうか判断が付かなくて動けばいいやってやってしまうのは素人だろ そうは言っても今までRIでそう動いてるし、 そうではないコンテナなんて無いもんなぁ ちなみにJSP+Servlet+BeanでWEB開発するにはECLIPSEでこと足りるのでしょうか? 結構規模の大きいサイトのリバースエンジニアリングみたいなことやっているのですが、 JSP内でで使っているクラスの定義に飛びたいとか、Taglibでインクルードされている 部分に飛びたいとか、web.xmlとかから拾って対応してくれるのがあればと思うのですが。 Strutsの例を出している人は「'」と「"」を見分ける事は出来てる? つうか、元の動きに戻せるようになっているんだけど。 Tomcatの開発チームも、書くほうが悪いと 突っぱねるわけにもいかなかったんだろうね。 以下のJSPプログラムの矢印をつけたところに警告があります。 それが原因だと思いますが、うまく動きません。 正しい文法がわかる方お願いします。 <%-- カートが空でなければ以下を表示 --%> <c:otherwise> <TR valign="top"> <TD align="center"> <TABLE border="1"> <TH width="80" colspan="2">名前</TH><TH width="60" colspan="2" >価格</TH> ←ここです。(タグのロケーション<TH>がむこうです。) <c:forEach var="item" items="${cart.list}" varStatus="status"> <TR> <TD><IMG src="view/img/${item.pictureName}" height="80" width="60"></TD> <TD>${item.name}</TD> <TD>¥${item.price}</TD> <TD><FORM action="MainController" method="post"> <INPUT type="hidden" name="action" value="remove"> <INPUT type="hidden" name="index" value="${status.index}"> <INPUT type="submit" value="削除"> </FORM></TD> 以下のJSPプログラムの矢印をつけたところに警告があります。 それが原因だと思いますが、うまく動きません。 正しい文法がわかる方お願いします。 <%@ page contentType="text/html; charset=Windows-31J" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/core " prefix="c" %> <TABLE valign="top" width="200" border="1"> ←ここもです。(valignが未定義です。) <TR> <TD> カートの中身 ${cart.size}個<BR> 合計金額 ¥${cart.totalPrice}<BR> <c:forEach var="item" items="${cart.list}"> </c:forEach><BR> <A href="view/cart.jsp">カートの中身を見る</A> <FORM action="MainController" method="post"> <INPUT type="hidden" name="action" value="removeAll"> <INPUT type="submit" value="空にする"> </FORM> </TD> </TR> </TABLE> ><TABLE valign="top" width="200" border="1"> width="200px" とかでどうだい。 HTMLの見かけ・デザインは別ファイルで持った方が保守性が上がるよ。 >>339 さあ、落ち着いてCSSスプライトの編集作業に戻るんだ。 Eclipseのサーバを起動するとコンソールに以下のメッセージが出て、データベースにアクセスできません。 わかる方ご教授お願いします。 2008/11/22 23:40:09 org.apache.catalina.core.AprLifecycleListener init 情報: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.6.0_01\bin;.;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\Program Files\Java\jdk1.6.0_01\bin\..\jre\bin\client; C:\Program Files\Java\jdk1.6.0_01\bin\..\jre\bin;hnologies\ATI Control Panel;C:\Program Files\Java\jdk1.6.0_01\bin;C:\Program Files\MySQL\MySQL Server 5.0\bin 2008/11/22 23:40:09 org.apache.coyote.http11.Http11Protocol init 情報: Coyote HTTP/1.1を http-8081 で初期化します 2008/11/22 23:40:09 org.apache.catalina.startup.Catalina load 情報: Initialization processed in 562 ms 2008/11/22 23:40:09 org.apache.catalina.core.StandardService start 情報: サービス Catalina を起動します 2008/11/22 23:40:09 org.apache.catalina.core.StandardEngine start 情報: Starting Servlet Engine: Apache Tomcat/6.0.10 SQL failed org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC driver class 'com.mysql.jdbc.Driver' at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:766) at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:540) at ecsite.ItemDAO.createConnection(ItemDAO.java:17) at ecsite.ItemDAO.findAll(ItemDAO.java:44) at ecsite.MainController.init(MainController.java:35) at javax.servlet.GenericServlet.init(GenericServlet.java:212) …(省略) 続きです。 at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:760) ... 22 more 2008/11/22 23:40:09 org.apache.catalina.core.ApplicationContext log 致命的: StandardWrapper.Throwable java.lang.NullPointerException …(省略) 2008/11/22 23:40:09 org.apache.catalina.core.StandardContext loadOnStartup 致命的: サーブレット /mvcExample がload()例外を投げました java.lang.NullPointerException …(省略) 2008/11/22 23:40:09 org.apache.coyote.http11.Http11Protocol start 情報: Coyote HTTP/1.1を http-8081 で起動します 2008/11/22 23:40:09 org.apache.jk.common.ChannelSocket init 情報: JK: ajp13 listening on /0.0.0.0:8010 2008/11/22 23:40:09 org.apache.jk.server.JkMain start 情報: Jk running ID=0 time=0/15 config=null 2008/11/22 23:40:09 org.apache.catalina.startup.Catalina start 情報: Server startup in 703 ms > Cannot load JDBC driver class 'com.mysql.jdbc.Driver' jdbcドライバのクラスパスが通っているかを要確認。 エラーの原因を教えてください。 以下は、Eclipseでサーバを起動した際にコンソールからのメッセージです。 2008/11/24 10:18:51 org.apache.catalina.core.AprLifecycleListener init 情報: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.6.0_01\bin;.;C:\Windows\Sun\Java\bin; C:\Windows\system32;C:\Windows;C:\Program Files\Java\jdk1.6.0_01\bin\..\jre\bin\client;C:\Program Files\Java\jdk1.6.0_01\bin\..\jre\bin;hnologies\ATI Control Panel;C:\Program Files\Java\jdk1.6.0_01\bin;C:\Program Files\MySQL\MySQL Server 5.0\bin 2008/11/24 10:18:51 org.apache.coyote.http11.Http11Protocol init 情報: Coyote HTTP/1.1を http-8081 で初期化します 2008/11/24 10:18:51 org.apache.catalina.startup.Catalina load 情報: Initialization processed in 1810 ms 2008/11/24 10:18:51 org.apache.catalina.core.StandardService start 情報: サービス Catalina を起動します 2008/11/24 10:18:51 org.apache.catalina.core.StandardEngine start 情報: Starting Servlet Engine: Apache Tomcat/6.0.10 SQL failed com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Table 'ecsite.item' doesn't exist at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:936) at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2934) at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1616) at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1708) at com.mysql.jdbc.Connection.execSQL(Connection.java:3249) at com.mysql.jdbc.Connection.execSQL(Connection.java:3178) at com.mysql.jdbc.Statement.executeQuery(Statement.java:1203) … > SQL failed > Table 'ecsite.item' doesn't exist ecsiteテーブルのitemフィールドが存在しない・・・か? 発行したsqlのテーブル名が間違っているか、または、データベースに対象のテーブルが存在しないか nobody様 毎度ご返信ありがとうございます。 inaba Tomcat6で学習中です。(環境とかは特になく、エディタとコマンドラインです) web.xmlのフィルタの記述のタイプミスで、Tomcat起動時に次のエラーがでました。 2008/12/14 9:54:21 org.apache.catalina.startup.ContextConfig applicationWebConfig 致命的: 9行の20列目で発生しました 2008/12/14 9:54:21 org.apache.catalina.startup.ContextConfig start 致命的: 前のエラーのためにこのアプリケーションは利用できないようにマークします web.xmlを修正しても 致命的: 以前のエラーのためにコンテキストの起動が失敗しました [/test] となってtestアプリケーションにアクセスできません。 サーバーは起動しますし、他のアプリにはアクセスできます。 タイプミスはfilter関連の部分なんですが、web.xmlのフィルタ部分を削除するとエラーは出ず、 ブラウザからもアクセスできます。 最初のエラーで「利用できないようにマーク」されてるせいだと思うんですが、 これはどこにマークされてるのでしょうか?(マークを除去したい) 以下はJavaプログラムの一部です。 try文の中にif文で、fuku1に接続する場合とfuku2に接続する場合で分けたいのですが、 どのようにif文をかけばよいでしょうか。 public ItemCollection findAll() { /* 商品一覧オブジェクトを作成 */ ItemCollection collection = new ItemCollection(); collection.setList(new ArrayList<Item>()); /* データベースへ接続 */ Connection con = createConnection(); try { ←try文です。この中にif文でfuku1とfuku2で条件分岐したいと思います。 /* SQLをデータベースへ送信 */ String sql = "SELECT * FROM fuku1"; Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery(sql); プログラムの続きです。 /* 検索結果から商品一覧情報を作成 */ while (rs.next()) { int id = rs.getInt("id"); String name = rs.getString("name"); String detail = rs.getString("detail"); String pictureName = rs.getString("picture"); int price = rs.getInt("price"); collection.addItem(new Item(id, name, detail, pictureName, price)); } rs.close(); stmt.close(); return collection; } よろしくお願いします。 次のエコープログラムを実行すると文字化けしてしまいます。 どうすれば文字化けが直りますか? 【index.jsp】 <%@ page contentType="text/html; charset=Windows-31J"%> <html> <head> <title>ほげ</title> </head> <body> <form action="echo.jsp" method="POST"> <textarea name="text"></textarea> <input type="submit" value="送信"> </form> </body> </html> 【echo.jsp】 <%@ page contentType="text/html; charset=Windows-31J"%> <html> <head> <title>ほげ</title> </head> <body> <% request.setCharacterEncoding("Windows-31J"); %> <%= request.getParameter("text") %> </body> </html> Struts1.3を使ってます Struts1.xのアクションはスレッドセーフでは無いという事を聞きました その為にアクションに変数を持たせるのは止めた方が良いというのも理解しました 話が少し変わってしまうのですが、 同一セッションでリクエストが連続して送られて来た場合はどうなるのでしょうか? 例えば間髪入れずにボタンがクリックされた場合等です フォームビーンのスコープをsessionにしている場合、 フォームビーンの値はスレッドセーフなのでしょうか? それとsessionAttributesの中に格納している他の値はセーフなのでしょうか? apacheやjspコンテナやstrutsがリクエストをシリアライズしてくれてたりしないのでしょうか? >>356 pageEncodingやmetaタグも使うと良いですよ 更にweb.xmlにフィルタを書いてフィルタクラスを作成してShift_JISとか指定すると良いと思います 自己解決しました。 Eclipseでデバッグしてブレークポイント入れたら2スレッド捕まりました。 sessionのAttributesはそういった意味でスレッドアンセーフです。 アクションフォームビーンもsessionスコープならスレッドアンセーフです。 jspを始めてみました。 PHPとかperlと比べて非常に分かりづらいですね。資料もあまりないし。 で、分からないのは文字コードのこと。 通常にブラウザに表示させるだけなら文字化けはしないのだが POSTで受け取った値を出力させるとそこだけ??になる。 この受け取った値だけをエンコードするにはどうすればいいの?? 資料もあまりないしっておい。 ただ、setCharacterEncoding でGETのエンコーディングが効かなくなったことの説明は、あまりないな。 >>356 charasetを変更できるなら、UTF-8で作っておきな。 いちばん文字化けしなかった。 >>360 JSP ならム板のほうがレスポンス早いかもな ここにはエンタープライズ系の人はほとんどいないっぽい データベース作ろうと思います PHPより簡単ですか? 「データベース作る」がデータベースをアクセスするアプリという意味なら、PHPより簡単だな。 NetBeans入れてデータベース設定してWebプロジェクト作ってVisualWebJSF作ってTable配置してデータベーステーブルをドラッグすればデータベースの中身が表示される。 ボタン配置してダブルクリックすればボタンの処理を書ける。 とっかかりの簡単さはPHPよりも上だな。 あとは、やりたいことによる。 PHPはライブラリが充実してる。 大抵のやりたいことが、既にソースというかモジュールとしてすぐに使える。 JSPはJavaで出来ることがそのまま出来るってのが利点なのかな。 私ならRubyをすすめます。 >>366-367 ありがとうございます。 あともう1点セキュリティはどうなんでしょうか? PHPより上ですか? セキュリティは自分がどれだけシステムを想像できるかにかかっています。 上司いるんでしょ?どっかで聞いて見なよ。 >>367 ライブラリが充実してるというより、Webで使う前提のライブラリがWebで使いやすいように使える、だな。 Javaでも同等ライブラリあるし、充実度自体はJavaのほうが上。 >>368 セキュリティ担当者がこいつらセキュリティわかってないって言って辞めるようなPHPより、Javaのほうが上だな。 PHPでもセキュアなソースは書けるよ。使い方次第。 まあ、脆弱性の問題は別にあるけどね。 >>372 ソースレベルでセキュアなコード書いたところで、仕様や実装自体に穴があればどうしようもない話。 使い方次第という話ではないと思う。 すみませぬ FOPのライブラリで、XML+XSLで動的にPDFを生成して出す仕組みを作っています。 フォームにファイルを指定させ、ボタンを押すとJSPが呼び出され、 JSPの構文内でFOPを実行し、出てきたPDFのストリームを、ブラウザで表示するようにしたいのです。 JSPではHTMLの形で整形して出すしかやったことないのですが、 HTML以外のファイル(PDF)を返す方法ってありますか? 可能であれば、そのファイルをブラウザが「開く」「名前をつけて保存」のダイアログをいちど出す形で返す方向にしたいです。 アドバイスお願いしまする jspじゃないとだめなの? サーブレットでいいじゃない >>375 サーバーサイドのプログラムは初心者なもので。 Servletでも良い方法があれば教えてください。 サーブレットなら、適切なContentType入れてやって Content-Dispositionヘッダを設定して バイナリをresponse.getOutputStreamで取得したstreamに書き込めばいい。 >>377 ありがとうございます。とりあえずJSPでやってみる方向で努力しています。 (ダメならServletのほうを研究してみます) 3行目をヒントに、とりあえずサーバーにpdfの一時ファイル(temp.pdf)を作ってから、それを返すロジックをやってみているのですが・・・ <% /* 〜fopでtemp.pdfを吐き出す処理〜 */ response.setContentType("application/pdf"); response.addHeader("content-disposition","attachment; filename=temp.pdf"); OutputStream os=response.getOutputStream(); FileInputStream fis=new FileInputStream("temp.pdf"); int len=0; while(fis.read()!=-1)len++; byte b[]=new byte[len]; fis.read(b); os.write(b); %> 目的どおり、ボタンを押すと「開く」「ダウンロード」を選択するダイアログは出てくれるのですが、 出てきたデータが化けているようで開けないです。データそのもののバイト数は元ファイルと同じです。 文字コードが違うとかそのような理由なのでしょうか? pdfのようなバイナリファイルの場合、一番上での<%@ page language="java" pageEncoding="UTF-8"...といった部分はどのように指定するのが良いですか? むむむ、サイズ同じって、、バイナリ比較して同じもの? 質問です。 JSPのページ内で定義した変数を、 カスタムタグの処理の中で参照することってできますか? JSPの生成したコードを見たところ、無理そうでした。 それにしても過疎ですね。 >>381 TagExtraInfoとか、TLDのvariableタグでできるんじゃねぇの? display tagで表示したリストの各行に「編集」「削除」のメニューをポップアップメニュー形式で出したいのですが、 どうすればいいですか? JavaScriptが理解できてないと難しいんじゃね? >>385 「編集」「削除」のHTML要素はあらかじめ作っておいて、 そのstyle.visibilityを"hidden"にしておく。 そして各行の<tr onmouseover>に上記DOM要素を"visible"に変更するJavascriptを仕込んでおく。 display tagが理解できてないと難しいんじゃね? あらかじめ作っておく「編集」「削除」HTML要素の列は style.visibilityを"hidden"にしても消えないよな? TestというFunctionsを定義したのですがJSPのコンパイルエラーになってしまいます。 taglibディレクティブに追加するだけなら正常なのですが、タグを使おうとすると・・・ An error occurred at line: 13 in the generated java file Test cannot be resolved to a type タグの内容は、文字列を与えると別の文字列を返すシンプルなものでテストしています。 public static String function testFunc(String word) { return "Good-bye"; } web.xml/tld/タグ本体のclassファイルに関してはおそらく問題ないと思うのですが・・・ 呼び出し方が悪い気がするのと、全部書くと長くなるので、これらの記述の詳細と コンパイラのエラー内容については一旦省略して質問させてください。 JSPでの呼び出しは、次のように書いています。 <@taglib prefix="test" uri="http://hogehoge " %> ${test:testFunc("Hello")} //=>"Good-bye"が表示されるかと思いきやエラー これでOKだと思っているのですが、間違っていますでしょうか? 他に原因がありそうであれば、他の詳細も投稿しますので、よろしくお願いします。 「TestというFunctionsを定義した」というのなら、その定義のしかたを書かないと。 すみません。詳細追加しますm(_ _)m //Test.java(タグの本体) public class Test { public static String testFunc(String word) { return "Good-bye"; } } //testTags.tld(抜粋) <function> <name>testFunc</name> <function-class>Test</function-class> <function-signature>java.lang.String testFunc(java.lang.String)</function-signature> </function> //web.xml(抜粋) <jsp-config> <taglib> <taglib-uri>ttp://hogehoge</taglib-uri> <taglib-location>/WEB-INF/tld/testTags.tld</taglib-location> </taglib>> </jsp-config> (続く) //JSP <@taglib prefix="test" uri="ttp://hogehoge" %> ${test:testFunc("Hello")} //=>"Good-bye"が表示されるかと思いきやエラー 今、${test:testFunc("Hello")}ではなく<test:testFunc("Hello") />としてみたところ エラーメッセージ プレフィックス testでインポートされたタグライブラリには、タグ testFunc( は存在しません に変わりました。 しかし確かに存在するのですが、指定の仕方がよくないのか・・・ Testクラスのパッケージは?デフォルトパッケージなら、なにかのパッケージに入れてみたら? >>395 ありがとうございます! 適当なパッケージに入れてみたところ動作しました。 テストなので簡単にしていて・・・ 他に書籍のサンプルのタグのクラスも試していたのですが、そのときも簡略化のつもりで ソースのパッケージをコメントアウトしていました(同様にエラーになった) おしえていただくまでまったく気づきませんでした・・・ ありがとうございました。 >>396 解決できたようでなにより。 パッケージに入れるのが面倒というのは、手でコンパイルしてる? もしIDE使ってないなら、NetBeans使うとtldの記述も楽になるし、使ってみるのをおすすめする。 質問させてください。 CentOS5.3 にて Apache2.2.11 と Tomcat 6.0.18 を使用し、 MySQL に JDBC を使用して接続したいと考えています。 以下の JSP を実行するとうまく接続できました。 <%@ page import="java.sql.*" %> <% Class.forName("org.gjt.mm.mysql.Driver"); Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/DBname?user=user&password=pw&useUnicode=true&characterEncoding=UTF-8"); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT * FROM table"); %> そこで JNDI を使用して接続したいのですが、うまくいきません。 以下の JSP を実行したところ、最後の行で 「Cannot load JDBC driver class 'org.gjt.mm.mysql.Driver'」との エラーが発生してしまいます。 (続きます) (>>398 の続きです) <%@ page import="java.sql.*, javax.naming.*, javax.sql.*" %> <% Context context = new InitialContext(); DataSource ds = (DataSource) context.lookup("java:comp/env/jdbc/Jsp"); Connection db = ds.getConnection(); 使用している JDBC は mysql-connector-java-5.1.7-bin.jar で $TOMCAT_HOME/common/lib ディレクトリに設置し、クラスパスも通しています。 また、context.xml は $TOMCAT_HOME/webapps/jsp/META-INF に設置していて、 内容は以下のように記述しています。 <?xml version="1.0" encoding="UTF-8" ?> <Context displayName="Samples" docBase="jsp" path="/jsp" reloadable="true"> <Resource name="jdbc/Jsp" auth="Container" type="javax.sql.DataSource" username="user" password="pw" driverClassName="org.gjt.mm.mysql.Driver" url="jdbc:mysql://localhost/jsp?useUnicode=true&characterEncoding=Windows-31J" maxActive="4" maxWait="5000" maxIdle="2" validationQuery="SELECT count(*) FROM table" /> </Context> JNDI を使用して接続を実現するにはどうすればいいのか、 何卒お知恵をお貸しください。よろしくお願いします。 >>398-399 での質問について自己解決しました。 まず、JDBC の設置場所は $TOMCAT_HOME/lib でした。 また、Tomcat の 設定ファイルで context.xml に加え、web.xml も必要でした。 そして、これの記述内容はまだ日本語に翻訳されていない、 Tomcat6 用のドキュメントの通りに行いました。 はぁ、たったここまで辿り着くのに、どれだけの時間と労力を割いたことか。 我ながら先が思いやられます。しかも微妙にスレ違いだったし。 >>400 よく頑張った。 「自己解決しました」とだけ書く馬鹿が多いなか、 Lesson Learnedも書いたのはえらいと思う。 ちょいと質問。 外部からファイルを読み込んでそれの内容を使いたい時って ServletContext context = getServletContext(); String path = context.getRealPath("使いたいファイルの名前"); で良いんだよね? あとこの取り込んだファイルを別のクラス(仮にAppliクラスとする)で使いたい時は Appli ap = new Appli(path);とかにして引数で渡してやれば使える? テキストどおりにやってみたものの、何故かファイルの内容が 読み込めなかったんだが。どこか間違ってるだろうか。 >>404 外部ってどこのこと? getRealPathはコンテキスト内のファイル(/WEB-INFとか)の実際のパスを取得するメソッド。 △▲ WebProg 初心者の質問 Part19 ▼▽で聞いたんですが 自分の得たい答えが得られず、ここで質問します。 jspやjavaでデータベースに接続する場合、 context.xmlで jdbc:mysql://localhost/test?useUnicode=true&characterEncoding=EUC-JP にしたい場合、EUC-JPでいいの?それともujis? 後この場合<%@ page contentType="text/html; charset=windows31-JやShift_JISでは文字化けしますか? すいませんが、教えてください。 PHPもやっていて、PHPはEUC-JPです。 なんとかEUC-JPでやりたいのですが、なんとかなりませんか。 後mysql5.0から文字コードの変更ができるようになったというのですが どういう方法かサイトを調べてもでてきません。 だれか教えてください。よろしくお願いします。 >>409 へ すいません。マルチになってしまいました。 △▲ WebProg 初心者の質問 Part19 ▼▽ がなかなかレスがつかず、こっちで質問したほうがいいと思い こちらに移動しました。 今yahooで直接レスができないので、マルチになってしまい申し訳ないです。 わかる方よろしくおねがいします。 ググッたがみんなutf8かshift-jisばかりで、EUC-JP の情報がありません。 DBのコードはどうでもいいだろ クライアントのエンコードはクライアントの都合でその都度指定できるじゃないか JSP+Servlet+Javabeansでいい本さがしています。 秀和のJSP+サーブレットプログラミングとJSP+サーブレット サンプル集と独習JAVAサーバーサイドを読みました。 データベースの接続以外は出来たのですが、無念です。(linuxはできなかった) なんかいい本ありますか。 よろしくお願いします。 本ではないが、そんな君にNetBeans(とチュートリアル)。 初心者でWebやるなら、NetBeansは必須だな おいおい本気でいってるのか?Webを初心者がテキストエディタでやるとか。 「web.xmlも自分で書いて動きを確認」というのは、サーブレット理解してからで十分だ。初心者がやることじゃない。 ひとつ質問いいですかな。 今、yahoo知恵袋のようなものを作ってるのだが、 今まで登録された質問一覧等からジャンルごとに質問を絞り込みたい場合、 jspで作成した検索ページでジャンルを選択&絞り込むボタンをクリック →サーブレットを経由して再び検索ページへ →選択されたジャンルと同じジャンルの質問を表示する という流れでいいんだろうか。 >>419 &>>420 いや、実はこれ学校の課題でね。 JSPでやれって言われちゃってるんだ。Ajaxはよく知らない。 学校の課題を2chで聞くとは そしてそれを悪びれもしないとは WebProg 初心者の質問 Part19から来ました。なかなか回答が得られないので。 cent os5でのjsp+jdbcに関する質問です。 yumでmysqlをインストールして、phpを動作させています。 今度はjsp+jdbcをやったところ org.apache.tomcat.dbcp.dbcp.SQLNestedExceptionエラーがでました。 これってyumだから?ちなみにwindowsはちゃんと起動しています。 その後http://d.hatena.ne.jp/lains_you/20081028/1225161788mysql-connector-java のやり方でmysql-connector-javaの展開、環境ファイルの編集 を行いましたが、だめでした。 ほかになにが必要なんでしょうか。 さっぱりわかりません。 教えてください。よろしくお願いします。 自分の環境はjdk1.6、tomcat6.0です。 ログ見て調べてもわかんない。 yumでやっている人いないみたいで。 だれかやっている人いませんか? http://gichioka.web.fc2.com/tomcat.rar にログを記載したので、わかった方はここのサイトに載っているよ とかこうすればいいんだよっとか教えてください。 よろしくお願いします。 あとhttp://gichioka.web.fc2.com/tomcat.rar はコピーしてURLを張り付けてください。 直リンではエラーになります。 よろしくお願いします。 Connection timed outってバッチリ書いてあるジャマイカ。 DBが起動していないとか、 物理的にネットワークが切れているとか。 これぐらいわからないとヤバイぞ。 アタマ悪すぎ。やめたら? Connection timed outもぐぐったのですが、 DBが起動しています。 物理的にネットワークが切れているとか。 これはわかりません。どうやったら調べられるでしょうか。 自分もいやになります。アタマは悪いと思います。 教えて君ですみませんが、教えてもらえますか? 425の設定を参考にしたのは http://d.hatena.ne.jp/lains_you/20081028/1225161788 です。>>425 のhttp://d.hatena.ne.jp/lains_you/20081028/1225161788mysql-connector-java ではエラーがでます。 すいません。 いろいろ調べましたがyumからの方法が載っているのはこのサイト だけで、うまく設定ができません。この通りに設定しているのに。 やはりyumからではできないのかな?linuxでのmysqlをきちんと 一からインストールしないとだめなのかな?って思いました。 だれか教えてください。会社ではだれも知りません。 追記です。 環境ファイルはhttp://d.hatena.ne.jp/lains_you/20081028/1225161788 と一緒です。 もしこの情報がほしいとかここはどうしているなどありましたら、 情報は表示しますので、教えて君ですみませんがお願いします。 今日は今帰った。 会社でも2ちゃん見ているが、カキコなかった? 難しいのかな?会社で今日javaでMVCでプログラム を作ったよ。 独習サーバーサイドjavaとJSP&サーブレットサンプル集を見ながら 社長が実務で使えそう?って聞くから。 自分の力量では難しいですね。と答えた。 そして、javaでシステムを今後構築するならプログラマを 雇ってほしいと頼んだ。僕一人だけでなく。 そしたら雇う気はないという。 自分はデザイナーよりのプログラマーでAS3.0もやれば PHPもやる。もちろんデザインやコーディングもやる。 本代も出してくれるのかな?って思ったら自腹だという。 最初出してくれると言ったのに。 その後では本は持って帰りますね。と言ったらおいていけという おれが金をだしたのに(続く) まず、JavaやServlet以前に、システムを組むことを勉強しないといけないだろうけど、433の会社では難しいだろう。 433は、今の環境でプログラムを勉強してから転職を考えることを勧める >>433 解決したんかな? >>>org.apache.tomcat.dbcp.dbcp.SQLNestedExceptionエラーがでました。 これでググったの? このメッセージは、コネクションプーリングのエラーだから、接続方法とか確認。 JDBCの接続って、JAVAソース上でドライバーをロードしてから、うんたらかんたらっていうのと 接続までをさーばー側で行い、解放しないで使い回すっていうのとある、大雑把だけど。 WEBアプリじゃない、JAVAアプリで接続してみれば。 やみくもにしても、解決しないからね。絞りこまないと。 表を作成して、windows環境と比較していくとか・・・。 windowsで動作しているって?JAVAソース同じなの? 425です。昨日返事できずに申しわけない。 >>433 へ転職したいです。今日も一人で社長と談話していました。 >>435 yumからだと難しいですね。 yum mysql jdbcとかでググッたりしたんだけど みんなちゃんとインストールからやっていて、そっちは自分でも できたのですが、yumとなると資料がなくて。絞り込めません。 windowsは環境構築できてます。JAVAソースは一緒です。 linux上でも一からイントールでyum使わなかったらできました。 yumじゃあだめなのかな? 今日社長と会議。誰から聞いたかしらないが、javaができたほうが いいとのことで、なぜyumで作ったmysqlに接続できないんだ。 と怒られた。あんたが調べろよって言いたかったが、言えない。 今後javaチームを作るらしい。大規模な開発のときに役立てるんだと。 後tomcatとapacheの連携をしてポート8080番がみられなくする 方法も会議で取り上げた。そしてそうするとPHPが使えなくなります。 その代りjavaだけでシステムを組むことになります。 といった。だからサーバーはphp用とjava用で必要です。 といったらそこはわかったと言ってくれた。 ただyumマンセーらしくyumで入れたmysqlをjdbcに接続して 表示させろといわれた。いや、だからわかる人材を取って ください。といった。 お前が勉強しろといわれた。 おれよく最近となりのビルで泣いています。 >>434 >>435 様yumでインストールしたmysqlをjdbcに接続 させる方法しりませんか? しっていたら教えてください。 >>437 435だけど YUMなんか・・・・・メンテできないことを、社長に主張したら? 自分が言ったことは、YUMとかソースからインストールとかの問題じゃないんだけどね。 それに、APACHE+TOMCATなんて、デバッグにしか使わないよ、普通。 >後tomcatとapacheの連携をしてポート8080番がみられなくする >方法も会議で取り上げた。そしてそうするとPHPが使えなくなります。 これ、なんでPHPが使えなくなるって言っているか不明だが 通常、8080を隠蔽するのと、PHP稼動とは、話が違うよ。 この辺がわかっていないっていうことは、きちんと1から勉強したほうがいいよね。 なんか、社長も社長だけど・・・・。 過去レスで言ったけど、JAVAアプリで接続できるのが、最初。 >>438 様 APACHE+TOMCATなんて、デバッグにしか使わないよ、普通。 そうなの?知らなかった。どうするよ。これ。 え?だって本だと本だと。 >>439 様 JAVAアプリで接続できるのが、最初。 了解です。 8080を隠蔽するのと、PHP稼動とは、話が違うよ。 どういう意味? 後自分はjsp+servlet+javabeansでプログラムをやろうと 思っている。 これに関する本は何度か読んだ。 昔javaをやっていたからまあ、データベースの接続でこんなに 戸惑うとは思っていなかった。 後yumでjavaアプリはつながらなかった。 なにから始めたらいいのかな? そもそもデザイナーはjavaには手を出さずにphpだけやっていれば いいのかな?って思ってきた おいおい、JAVA経験者なの?それで、接続できないの? あのさ、根本的なことに理解を深めないといけないようですね。 淡白だなぁ、プログラマじゃないみたい。 1.JAVAアプリでつながらなかった →おーーい、それだけかよwww それで終わったら、なんにもならないでしょ? そこを追求していかないと・・・・・・・・・。 エラーメッセージを辿るのは、JAVA以前の問題でしょ? YUMにこだわるなぁ・・・言っているでしょ、YUMとか関係ないって。 あと、jsp+servlet+javabeansの組み合わせは、もっとも簡単なんだからさ。 経験者ではあるけど..... すいません。 勉強しなおします。 がんばります。 yumにはこだわりません。 JAVAアプリメッセージエラーからたどってみようと思います 聞く人がいないのがこんなにつらいとは思っていませんでした。 これぐらいできて当たり前のかもしれないが。 自分が自分がと思うとプレッシャーで。 胃が社長と会うたびにシクシク痛みます。 >>445 おいらは、postgresql使いだから、mysql入れていなかったのでYUMでインストールしたよ。 JAVAあぷりで なにも問題なくSELECTできるけどね。 ソースだしてごらん。 AS経由は、自宅はAPACHE+TOMCATではないので。 http://gichioka.web.fc2.com/java.zip にUPしました。 これはJSP+Servletプログラミングのサンプルです。 あの質問ですが、mysqlでyumで接続の場合rootで入って パスワード入力しますよね。 そのパスワードをかけばいいんですよね? >>448 >>mysqlでyumで接続の これが意味わかんらんけど、お主のソースをDLして ユーザ、パスワード、テーブル変更して、実行できたよ。 エラーメッセージだしてよ。 ソースをみると、mysql のコマンドラインは mysql -D example -u root -p Enter password:mysql ってことになるが、このままシェルで入力して、接続確認。 あー間違えたかも。 あのyumの場合パスワード最初設定できるじゃないですか? mysql -u root -p enter password :mysql でOK? この場合 // データベース上のユーザ名 String user = "root"; // データベース上のパスワード String password = "mysql"; こうですか? >>450 // データベース上のユーザ名 String user = "root"; // データベース上のパスワード String password = "mysql"; ----------------------------- これで、シェルのコマンドラインで接続を確認して。 確認できれば、あのソースで接続まではいいはず。 maxROWSをjspで何件ありましたってな感じで。 表示させたいのだが、どうやって表示させればいいの? これについて載っているサイトやソースない? JSP+Servlet+Javabeansでいい本ない? 実践的な。でもわかりやすい。 ないんだよね。本がみんな古くて。 2001年とか。 さすがに2001年は古いが、ネットで拾い読みしたほうがいいんじゃない? っていうか、ネットでいくらでも出てくるだろw 本で読みたいんだ。 検索しても実践的なことはあんまりでてこないし もうJSP+Servlet+Javabeansはすたれているのかな? つーか最近思ったのだが、一人で作り、構築するなら JSPだけでもよいよね? JSPと、足りなければタグ定義だな。なんだかんだでそれが一番ラク JSFやBeansはイラネ。たまーに素のサーブレットは書くけどね そうかなぁ・・・。 逆引きの本はよくみてる。 JSPのみで可能だよ。 自分は、自宅でシステム作成しているけど、JSPだけだとスクリプトレット(=JAVA)できたなくなる。 エンハンスとかで書き直している(サーブレット)。 お金頂いているわけじゃないから、きちんとMVCにする必要はないけどね。 実践的になると、StrutsやWicket使うながれになるから、Servletで実践的というのはあまりないだろうな。 web系のシステムをPHPで作る以外はJAVAでやろうと思うのですが 最初はフレームワークに頼らずJSPで作ろうと思います。 JSPだけで作っても大丈夫かな?誰も作った人がいないので。 実務向けの本なにかありますか? ぜんぜんジュンクに行ってもいい本がないんだけど JSP「だけ」なら、できることは限られるが タグファイル書けるなら無問題 はっきし言ってPHPなんかより簡単 どうしてMVCに関する本がないんでしょうか? JSP+Servlet+JavabeansでかくよりJSPで書くほうが早い からでしょうか。 また速度はPHPより早いと聞いたんですが、どうでしょうか? ServletからJSPにオブジェクト渡す程度なら、MVC関係ないだろ。 いまさらMVCがどうこうとか、単なる頭でっかちだ。 JavaBeansという言葉も、わざわざ使わない言葉だ。 >>464 最初だからこそWicketとか使ったほうがいいと思うが。 しかも「誰も作った人がいない」とか。 「JSPだけでやる」が実務向けじゃないのに、それで実務向けの本を探しても見つからないのは当たりまえ 実践向けって・・・・・基本は理解してたら、どんどん製造できるんじゃないの? 自分で、デザインして製造していけばいいんじゃないの? >>466 MVCはソフトウェア開発技術の1つの工法なので、 オブジェクト指向を標榜する書籍ならたいてい載っています。 考え方だけの問題なので、具体的な言語が決まっているならその言語の本を購入した方が便利。 しかも「誰も作った人がいない」とか。 事実です。 どうしたらいいでしょうか? 自分で、デザインして製造していけばいいんじゃないの? これができません。 オブジェクト指向を標榜する書籍ならたいてい載っています。 考え方だけの問題なので、具体的な言語が決まっているならその言語の本を購入した方が便利。 たとえばどういう本ですか? オブジェクト思考の脳の作り方はもっているけど WebのMVCは名ばかりのMVCだから「オブジェクト指向を標榜する書籍」でも載ってないと思われ。 つか工法じゃねーだろ。 webのMVCは名ばかりなのか。 じゃああんまり意識しなくてもいいのかな? 明日みんなで会議。できない人集めて会議してもな 名ばかりではあるけど、当然だがM-VCの分離はしとけよ VとCは一体化しても動けば別にいい。一番大事なのはMが外側から見られないようにすること MもVもCも一体化させるのはJavaScriptでできるよ ワンクリック詐欺で、なぜかJavaScriptに口座リストを埋めてることとかあるw (せめてAjaxでリスト取得すればいいのに) つまりMはjavabeansだから JSP+javabeansということ? いろいろ考えると、StrutsなりJSFなりWicketなりを使ったほうがいいよ。 今日も仕事だった。 ついにJSPだけで書くことが決まった。 ロジックもすべてそこに書く。 どう思いますか? 俺ならせめてものささやかな反抗として完全XML構文で書く 文字参照を使えばバカには読めないコードが書ける つーかおれがわからん。 JSP+Servlet+javabeansで全部書ける自信がない。 ねえ? どうしてjava経験がそんなにないのに書かすん? できないって言っているじゃん。 >>487 上にとっちゃ 下が言う「できない」 = 「勉強すればor勉強しながらできる」 だからだよ いや、勉強すればなんとかなるよ。JSPは簡単だし。Java知らんでも書けるし。これはマジ まあ非効率的ではあるけど でもここで愚痴言うくらいなら自分でもっといい代案出せばよかったのに >>483 俺ならJRubyをコード中に混ぜるわ >>JSPは簡単だし。Java知らんでも書けるし。 ほんと? 匿名掲示板でグダグダ愚痴ったりどうでもいいこと質問してるヒマがあるなら まずはキーボード叩いてみろ JSPを書くということはJavaを書くことを含んでいるんだがな タグとタグファイルだけで作ればJava知らなくても機能的にJavaServletと同じものはできる Javaのコードを廃してもタグだけで作れる仕様だから ただ、仕組みはJavaのものを使うのだから、フツーはそんな回り道せず素直にJavaから入るけど JSPだけでとか・・・・スーパー。 最初はいいけど、だんだんだるくなるよ。 保守とか、じぶんがすることになるんでしょ? ロジックは、JAVAで。 netbeans使えば、コードはなんとかなるよ。 >>482 (487) どうでもいいけど > ついにJSPだけで書くことが決まった。 > JSP+Servlet+javabeansで全部書ける自信がない。 結局 Servlet 使うのか使わないのかどっちなんだよ Servlet使うと思う。 使うときは全部JSP+Servlet+javabeansではなく JSPだけでロジックやデータベースを使うときもあれば、 JSP+Servlet+javabeansで使うときもある ということになった。 今JSPを書いている 10年ぐらい前によく見かけたようなプログラムができあがりそうだw 分かってない人がレビューすると、 JSPとServletがまざったソース見て、何も指摘されないよ。 Strutsを勉強しようと思います。 なにかいい本ありますか? みんな古い本ばかりなんですが、 とりあえず、Strutsによるwebアプリケーションスーパー サンプルを買ってみた。 わかりやすい本とありますか? サイトとか。 ここは酷い釣り堀ですね。 とかせせら笑ってたら、 フルJSPな2001年製のシステムの保守を頼まれた。。。 JSP単一ファイルで1000行とか勘弁してくれよ。。。 保守ついでに出来る部分だけでもカプセル化してやれw ウチの場合、改修する度に改修管理票みたいなのを書いて、 修正したソース、修正する理由とかを事細かに書かないといけないんだ。 後、コードレベルの詳細設計書も書かないといけない。 (しかも前任者が仕様書作ってない場合は、改修した人が全部作らないといけない) だから基本的に必要最小限の修正しかしないという暗黙のルールになってる。 それが面倒だから自分の持分のシステムは極力必要な部分は共通化したりカプセル化してたんだけどな。 修正したソース:全部 修正した理由:使い物にならなかったから 詳細設計書:ソース読め 分割した各フレームでJSPを呼び出しています。 その1フレームで例外が発生した場合、errorPageでエラー処理させて いますが、このときその例外が発生したフレームにエラーページが 表示されます。 これを、フレーム全体でエラーページを表示するにはどうしたら よいでしょうか?よろしくお願いします。 表示されるエラーメッセージにJavaScriptを埋めて、隣のフレームを同時にリダイレクトさせればいい JSPからサーブレットへForm情報を渡す場合、getParameterを使用して 値を渡しますが、ちょっと疑問があります。 Formの部品(テキストボックス等)が30個あるJSPからサーブレットへ Form情報を渡す場合も、getParameterで30個の値を取得するものなんですか? >>513 ありがとうございます。 勉強になりました。 ログイン処理を作ろうと思います。 ユーザ情報は、サーバ起動時にリストを作ってデータベースから読み込んでアプリケーションスコープに登録しておくか、ログイン処理のたびにデータベースにSQL文で参照する方が良いのかで悩んでます。 前者。 後者はログイン回ごとにSQL投げるんだよね?ボトルネックになりそうな予感。 >>515 ログイン程度なら通常は毎回SQL発行。 処理毎にログイン要求がある訳でもないし、システムから見たらほんのごく一部分。 無闇矢鱈に保持するのは悪い例。 クライアントが、IE6 オンリーで、 ブラウザ側で文字コード自動判別にしているんですが、 たまに文字化けするんです。 下記の要に charset 記述してあり、metaタグでは文字コード設定していないのですが、 metaタグでも charset を設定しないといけないものなのでしょうか? <%@ page import 〜 %> <%@ page contentType="text/html; charset=MS932" %> ちなみに、import文が先に来てるのは関係ないですよね。。。? >>518 亀だけど、ページディレクティブのcharsetはHTTPResponseのcontentTypeの charsetであって、最終的に何の値がHTTPResponseのcontentTypeになって返るかは 使ってるWebサーバによる。 (apache-tomcat構成で、apacheのhttpd.confにaddDefaultCharsetがあれば そっちの値が優先される) あと、contentTypeが合ってても、jspがUTF-8で記述されてればMS932で返した ところで文字化けする。 回避するにはpageEncodingでcharset指定すればいい。 書籍は、 strutsは1系で日本語ならstruts in action MVCはJ2EEパターン第二版 がおぬぬめ、とレスしておこう。 MySQL 5.1.37 tomcat 6.0 Java(TM) Platform SE 6 U17 Eclipse Java EE IDE for Web Developers. 文字コードはUTF-8 です 文字化したり、しなかったりするのですが、文字化けを起こした後に <%@ page language="java" contentType="text/html;charset=Windows-31J"%> この記述を <%@ page language="java" contentType="text/html;charset=Windows-31J" %> して、リビルドすると、治るのですがなぜなんでしょうか? 今夜の深夜でちょうど9年前となるロングバックパスですが >>6 >カウンタ程度で、JSPを使うのは飛行機でコンビニにいくようなものだ。 >掲示板もやはり Perl。データベースを使ったものになると、PHP。 カウンタは大袈裟としても、 中小企業向けや個人向けのHPをJSPで組むのも好ましくないんですか? PHPの方が簡単に組めるのは確かですけど、あまり深みにはまりたくありません。 一度覚えたら一つの言語の方を重点的に使いたいじゃないですか? マジレスお願いします。 そこにjsp動く環境があるならそれ使えばいいでしょ カウンタのためだけに1から構築するのは大げさと言ってるんじゃ? まあtomcat入れるだけだけどな >>522 ありがとうございます! なるほど、それだけの理由であれば、JSPで逝きます。 なんかワクワクしてきました。 すみません教えてください。 A.jspの中で、B.jspとC.jspをincludeしています。B.jspでexceptionが 発生しエラーページに飛んだ場合、A.jspのinclude以下が処理されてしまう のですが、これを止めることはできますか? 何がどうなってるのかわからんが、、、 flush="true"じゃだめ? /\___/ヽ //~ ~\:::::\ . | r=- r=ァ .:| | ,,ノ(、_, )ヽ、,, .::::| はいはいそうですね . | `-=ニ=- ' .:::::::| \ `ニニ´ .:::::/ /`ー‐--‐‐―´\ struts使っているのですが、JSPからフォームBeanの java.util.ArrayList<String>型のメンバsampleListに<input type="text"> タグから値をsampleList.addすることってできますか? 分かる方いらっしゃったらご教授願えませんか? >>529 その辺考えてもStrutsは糞だということがよくわかるな 簡単な掲示板とかサンプルコードがあるサイトないですか? 本の付属CDとかでもいいです 質問ってこちらでいいのでしょうか? 暗黙オブジェクトの「request」はどこからとってきてるのでしょうか? クライアントとただ言えばよろしいのでしょうか、それともクライアント側のパラメーターと答えればいいでしょうか? セッション管理をするのに便利なクラスやパッケージはありますか? すみません、上の質問は自己解決しました。 しかし、新たな質問があります。 JSPの処理、つまりページが開かれた時に、セッション切れを検知した場合、 別のページに強制的に転送してやりたいのですが、どうやればできますか? Javaスクリプトを使わないとできませんか? JSPで暗黙的に使えるsessionオブジェクトが管理するセッションと、 ServletでgetSessionして得たセッションとで情報共有はできますか? 具体的には、JSPでsession.setAttributeで設定した値をservletで取り出せますか? 取り出せるよ。JSPも結局Javaに変換してコンパイル、実行してるだけだし JSP/Servlet でログファイル出力をする場合、どのようにして行うのが一般的ですか? 現在、java.util.logging の FileHandler を使ってログファイル出力したいと考えているのですが、 このような普通のロギング API では不都合が発生しますか? 本に乗ってる通りにhtmlとjspを作ってみたのですがうまくいきません どこが間違っているか教えてください http://www.dotup.org/uploda/www.dotup.org1726953.zip.html 何度も見直したのですが間違いがわからないです 試しにPHPでやったらそのまま動いたな。 jspでもServletでもだめだな。 endpointの指定のやり方が違うのかね JSPの先頭に記述する<%@ page contentType="text/html;charset=Shift_JIS" %> の"Shift_JIS"を可変にしたいです。 あるプロパティファイルの設定の文字コードがUTF-8ならばcontentTypeもUTF-8に、 SJISならばcontentTypeもShift_JISにしたいと考えています。 contentTypeはJSP内に複数設定できないようで、 if("UTF-8".equals(プロパティの値)) { <%@ page contentType="text/html;charset=UTF-8" %> } else { <%@ page contentType="text/html;charset=Shift_JIS" %> } というようにしてもエラーとなりました。 Shift_JISの箇所のみを可変にてみても、コンパイルエラーのためエラーになりました。 環境はtomcat5です。 contentType可変にするためにどうしたらよいか、教えてください。 文字コードを可変にするのは不可能なんでしょうか? その部分はコンパイラに指示する部分だし、コンパイルされたら ずっとそれが使われるんだからそこで替えるのは無理でしょ。 そこではpageEncodingだけ入れてchatset指定することをやめて 別のとこに入れてはどうか 別のとこってどこだろ?と思いきや、 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> これしか思いつかなかったので実際試しても文字化けしちゃいました。 デフォルトのISOなんちゃらって文字コードになりました。 Content-Type以外で文字コード指定できる方法ってないですかね? ブラウザからリクエストありました ハロー・JSPに対してリクエストありました そこにJSPタグがあった インクルードされたjavaソースが読み込まれる JSFの場合を考えてみる あれも。jspだったけな? リクエストは・jsp いや違うようだ FacesServletを呼び出さなければならんようだ どういう制御になっているのか? 直接.jspで何故エラーになるのか? どういう制御か?おそらくjsfのタグの解釈時に 生成されてないコンポーネントツリーでエラーになるのだろう jspとは直接関係ないかもですが、strutsの<html:radio>タグで データベースから取得した値だけのラジオボタンを作ることって出来るの? スクリプトレット使うしかないのかな? ActionForm継承クラスのListオブジェクトをhogeFormという名前でsetAttributeしてるんだけど、 イテレータを使ってループさせる際うまく行かないんだよね。 <logic:iterate id="hoge" name="hogeForm"> <html:radio idName="hoge" property="hogeForm" value="id"/> <bean:write name="hoge" property="id" /><br> </logic:iterate> html:writeでは、ちゃんと書き込まれるのに、ラジオボタンになると 突然beanがないよってエラーになってしまって、何でだめなのかおしえてください。 スクリプトレットを使って希望する結果は実現は出来るんだけど、strutsタグで実現できるなら いまさらながらstruts使って覚えたいので教えてくれるとありがたいです。 jspからbeansをディスパッチすることはできないのでしょうか? strutsは3次元配列も扱えないし中途半端すぎる カスタムタグの定義の中でsessionオブジェクトにアクセスする方法は無いですか? ∧_∧ ( ・∀・) | | ガッ と ) | | Y /ノ 人 / ) < >__Λ∩ _/し' //. V`Д´)/ ←>>170 (_フ彡 / 誰でも簡単にネットで稼げる方法など 参考までに、 ⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。 グーグル検索⇒『半藤のブブイウイウレレ』 AA66MT3K0J ☆ 日本の、改憲を行いましょう。現在、衆議員と参議院の 両院で、改憲議員が3分の2を超えております。 『憲法改正国民投票法』、でググってみてください。国会の発議は すでに可能です。平和は勝ち取るものです。お願い致します。☆☆ jspからjasperreportで印刷する時 印刷ボタンからonClickで呼び出す書き方 誰か教えて下さい Tomcatを使ったサーブレットを作ってます 他の何かのフレームワークは使ってません JSPで<jsp:useBean>を使うとき、classにパッケージ名とクラス名を記載すると思いますが そのパッケージ名について、外部定義にするとかで、JSPファイル中で記述しないように することはできますか 他の案件で作られたJSPのソースを再利用しているのですが、 元々あるサーブレットやBeansとはパッケージが異なっているので JSPのclassの箇所を書き換えていかなければならず、 また他で使う場合もまたここを書き換えるのだろうかと思うと、 何とかしたいと思ってます 読売新聞 3/2(火) 15:19 福岡県篠栗(ささぐり)町のマンションで昨年4月、当時5歳の男児に十分な食事を与えずに餓死させたとして、県警は2日、母親の碇(いかり)利恵(39)、知人の赤堀恵美子(48)両容疑者を保護責任者遺棄致死容疑で逮捕した。捜査関係者への取材でわかった。県警は、赤堀容疑者が碇容疑者から多額の生活費をだまし取るなど支配下に置いていたとして、赤堀容疑者にも男児に対する「保護義務」があると判断した。 捜査関係者によると、両容疑者は、篠栗町の碇容疑者方のマンションで、碇容疑者の三男・翔士郎(しょうじろう)ちゃんに十分な食事を与えずに栄養失調状態にしたうえ、病院に連れて行くなど適切な治療を受けさせず、昨年4月18日に死亡させた疑いが持たれている。翔士郎ちゃんの死因は餓死だった。 翔士郎ちゃんが息をしていないことに碇容疑者が気づき、赤堀容疑者が消防に通報して発覚した。翔士郎ちゃんはあばら骨が浮き出るほど痩せ、体重は5歳児の平均(18・9キロ)を大幅に下回り、2歳児並みの約12キロだった。目立った外傷はなかった。 碇容疑者は、翔士郎ちゃんを含む子ども3人との4人暮らし。福岡児童相談所などでつくる協議会は2019年秋頃から、一家を支援対象として家庭訪問を行っていた。翔士郎ちゃんの死亡後、2人の兄は児相が一時保護した。 両容疑者は「ママ友」として知り合い、赤堀容疑者は数年前から碇容疑者宅を頻繁に訪れていた。碇容疑者は赤堀容疑者に信頼を寄せ、次第に赤堀容疑者の指示通りに行動するようになったという。 赤堀容疑者は19年6月から昨年6月までの間、碇容疑者から「元夫の浮気調査費」などの名目で、現金や預金通帳をだまし取ったなどとして、詐欺や窃盗の疑いで逮捕、起訴された。浮気や調査の事実はなかったという。赤堀容疑者は県警の調べに「金銭を受け取っていない」と否認している。 碇容疑者は生活保護費や児童手当など月20万円前後の収入があったとみられるが、現金はほとんど所持しておらず、赤堀容疑者から渡された食料を家族4人で分け合っていた。赤堀容疑者は「しつけ」と称して、碇容疑者に子どもの食事を抜くよう指示することもあったとされる。碇容疑者は翔士郎ちゃんの死亡後、県警に「生活に困っていた」と説明していた。 物流業界で人手不足が深刻な課題となる中、国土交通省は、宅配業者の大きな負担となっている「再配達」の削減を利用者に呼びかける取り組みを来月、ネット通販や宅配事業者と協力し、集中的に進めることになりました。 物流業界では来年4月から、トラックドライバーの労働規制が厳しくなるのに伴って、輸送量が大幅に減少することが懸念されるなど、人手不足が深刻な課題となっています。 こうした中、国土交通省は宅配業者の負担となっている「再配達」の削減に向けた取り組みを、来月1か月間、集中的に進めることとなりました。 具体的には、利用者に対して、荷物を確実に受け取ることができる時間帯を指定することや、玄関先などに荷物を届ける「置き配」の活用、それにコンビニでの受け取りや街なかの宅配ボックスの利用などを呼びかけます。 ネット通販や宅配の大手事業者と協力し、取り組みへの理解を求める内容をそれぞれのホームページに掲載するなど、利用者への周知を徹底する方針です。 国土交通省によりますと、再配達となる荷物の割合は去年10月の調査で11.8%となっていて、こうした取り組みを通じ、2025年度に7.5%まで引き下げたい考えです。 read.cgi ver 07.4.7 2024/03/31 Walang Kapalit ★ | Donguri System Team 5ちゃんねる