JSF(JavaServer Faces)【.NET死亡?!!!】
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNGhttp://www.atmarkit.co.jp/fjava/special/jsf01/jsf01.html
http://java.sun.com/webservices/downloads/webservicespack.html
0369デフォルトの名無しさん
2005/05/22(日) 22:08:530370デフォルトの名無しさん
2005/05/22(日) 22:11:57定期的っつ-のがわかんないけど
デザイナからあがってくるものはHTMLだけだよ
そんなこといったら、あんたんとこどうやって作っているのか疑問
JSP知ってるデザイナばかりではないのだろ?
>>369
それって文言変更レベルだろ?
そんなのPGがやるだろ
0371デフォルトの名無しさん
2005/05/22(日) 23:55:45業務系WEBアプリならともかく、オープンなネット上のショッピングカートのような
見た目重視とかそういうのならいくらでも変更はあがってこよう
まず、JSFはビジュアルなデザイナ重視
とはいえ、グループ開発用のいいのあるんかな
JSP単体ならDreamWeaverでTomcat連携機能もあったりもして
実はデザイナにもJavaの知識なしで扱いやすい
最初の設定だけはしてあげる必要があるけど、JSPからの戻りが問題ない
が、Strutsのようにカスタムタグが出てくるともうだめぽ
本当はたぺちゃんが普及してくれるといいのだが日本語のドキュメント
一切なしで実用的ではない
テンプレート埋め込み型を組み込むのがシンプルだしいいやね
Struts素のまま使って死んでるプロジェクトいくつかみてきた
0372デフォルトの名無しさん
2005/05/23(月) 00:11:05SunとIBMぐらいでしょうか?
値段いくらぐらいなんでしょうか?
0373デフォルトの名無しさん
2005/05/23(月) 00:53:18Sunのなら10000円くらいだったかな。
BorlandもJSF使えないかな?
0374デフォルトの名無しさん
2005/05/23(月) 00:55:37JSPを書くことはできんが、JSPの邪魔をせずに変更できるようなデザイナならいるとは思うが。
で、デザイナとの行き来が問題になってるからTapestryとかS2JSFとかNirvanaとかMayaとか開発されてるんでしょ。
0375デフォルトの名無しさん
2005/05/29(日) 11:12:51cssでデザイン関連の設定を極力外出ししてさえ貰っていれば、所詮htmlタグの変更レベルだからPGで対応可能だった。
それでも2度手間でメンドクサイのはたしかなんで、デザイナーが直接触れるS2JSFみたいなのは凄く興味を惹かれる
0376デフォルトの名無しさん
2005/05/29(日) 11:22:35仕様変更時はしょうがないが、設計書書いてないの?
0377デフォルトの名無しさん
2005/05/29(日) 12:21:32ネット上で公開するB2Cのアプリだと、ぎりぎりまでデザインにこだわるお客さんは結構いるよ。
設計ではなく、見た目の問題でね。
0378デフォルトの名無しさん
2005/05/29(日) 15:27:510379デフォルトの名無しさん
2005/05/29(日) 18:58:30紙芝居わざわざつくって、事前に確認とっているんだから
大幅な変更は別料金ですよね?
>ぎりぎりまでデザインにこだわるお客さんは結構いるよ。
PG側としてはむかつく訳だが
0380デフォルトの名無しさん
2005/05/29(日) 20:18:57で、そういうPGは、クライアント側としてはむかつかれる訳だが
0381デフォルトの名無しさん
2005/05/29(日) 20:56:350382デフォルトの名無しさん
2005/05/29(日) 21:41:080383デフォルトの名無しさん
2005/06/01(水) 23:37:14そのときデザイナは現行のJSP見るのかい?
プレーンなHTMLだろがボケ
デザイナ(HTML)→プログラマ(JSPに直す)
一方通行なんだよ
簡単な修正も出来ないプログラマはイラン
0384デフォルトの名無しさん
2005/06/01(水) 23:41:40あほみっけ
0385デフォルトの名無しさん
2005/06/01(水) 23:41:490386デフォルトの名無しさん
2005/06/01(水) 23:56:44で、またプレーンなHTMLにJSPのタグとか1から埋め込んでいくの?
いいね、工数ぼったくれて。
0387デフォルトの名無しさん
2005/06/03(金) 17:28:57今でも使ってるの俺ぐらいだろうな・・・・。
0388デフォルトの名無しさん
2005/06/04(土) 00:51:560389デフォルトの名無しさん
2005/06/11(土) 02:09:59どんな感じ?
Ajaxってのがなんかスゴいこと出来そうな感じ。
AjaxFaces 1.0 released
http://www.theserverside.com/news/thread.tss?thread_id=34350
0390デフォルトの名無しさん
2005/06/12(日) 14:49:31デモが見たい
まJSF自体がJavaScript吐くようなカスタムタグだから当然だけど・・・
ちなみにAjaxから勉強しないとはまるぜ
0391デフォルトの名無しさん
2005/06/13(月) 18:23:51ビューの部分はJSFなんて話をよくきくんでござんすが、JSFのコントローラの
いったいどこがStrutsと比べてだめぽなんでやんすか?
0392デフォルトの名無しさん
2005/06/19(日) 01:41:35Strutsとは微妙に層が違うと思いますよ
0393デフォルトの名無しさん
2005/06/19(日) 03:47:18Webを意識する必要があるならStrutsで、アプリケーションならJSF、という印象をうけた。
0394デフォルトの名無しさん
2005/06/19(日) 09:46:32意味不明
0395デフォルトの名無しさん
2005/06/19(日) 11:10:50JSFだとURLと処理(Action)の関係が固定にならないから、
パラメータ付きのURLをメールに乗っけるとかは作りにくい。
StrutsだとHttpSessionを一切使わない作りにもできたり。
アプリケーションの基盤としてはJSFの方が遥かに上だが。
0396デフォルトの名無しさん
2005/06/19(日) 17:36:10ダメだといわれているけど、改めて理由を聞かれると答えられなかったのでちょっと考えてみた。
コントローラっていうのがナビゲーション機能っていう意味でなら、struts-config.xmlと比べても何の不満もない。
ちょっと機能が違う部分があるけど、それは目的が違うから。
JSFを使うつもりなら、そのコントローラ部分にStruts1.xを使うっていうのは止めといた方がいい。
JSFはイベント駆動型で、Struts1.xはリクエスト駆動型だから、無理矢理組み合わせたところでメリットがない。
(タグだけJSFで書いて、でもイベント駆動にはしないってことになるでしょう。)
今Strutsを使っていて将来性を高めるためにView部分をJSFでっていっても、
Strutsを止めて作り直すようなことがあったとしてもViewの部分(JSFの部分)が
ほとんど修正なく使えるとも思えない。
イベント駆動とリクエスト駆動での設計の違いなんかを考慮しないで、
JSF使おうというときにStrutsと同じ設計で行こうとすると、JSFのコントローラだめぽと勘違いするんじゃないのかな。
それに応じた設計をしなかったのが問題なわけだと思うんだ。
ただ、ローカルにインストールするアプリを作るのと同じように、強力なコントローラ部分がないっていう感じはする。
(ここでいうコントローラはナビゲーション機能とは違います。)
これはDIとかAOPとかそういう別のフレームワークを組み合わせて使うのがベターだと思う。
0397デフォルトの名無しさん
2005/06/21(火) 17:01:28ビジネス層はプレゼンテーション層を意識してはならないと思っています。
なので、DB更新処理はManagedBeanがDTOに値詰めてビジネスロジックに渡して
中でDAOが処理という設計にしました。
そこで、DBテーブルに持っている更新者IDと更新日付に
ログインユーザー情報(SessionスコープのManagedBean)をセットするのは
ManagedBeanの役割だと思うので
ManagedBeanでDTOにセットしてあげてるのですが、非常にかったるいです。
JSFから別のものに乗り換える場合
ManagedBeanで書いたかったるい処理を乗り換えたものにも
やらないといけないのは非常にめんどくさいと思ったんですけど
私どっか考え方ずれてますか?
0398デフォルトの名無しさん
2005/06/21(火) 17:03:23>なので、DB更新処理はManagedBeanがDTOに値詰めてビジネスロジックに渡して
DB更新処理は”プレゼンテーション層に持っている情報”はManagedBeanがDTOに値詰めてビジネスロジックに渡して
0399デフォルトの名無しさん
2005/06/21(火) 22:00:53リファクタリングのしがいがあると思うけどなあ。
回答になってないけどさ。
0400デフォルトの名無しさん
2005/06/21(火) 22:23:14俺がよくやるのは、HibernateでInterceptor使って、
getUserPrincipal()と更新時刻を強制的にセットする方法だな。
Hibernateのマニュアルにやり方載ってるよ。
0401デフォルトの名無しさん
2005/06/22(水) 09:34:55Facade
0402デフォルトの名無しさん
2005/06/22(水) 17:51:41map-entriesで似たようなことはできるんですがvalue-classの指定がmap-entry毎にないんで
valueが全て同じ型になってしまいます。
map-entry単位でvalue-classの定義が出来れば楽なんですが...
0403デフォルトの名無しさん
2005/06/25(土) 00:01:57意外なことにinitial committerはIBMじゃなくてoracle。
0404デフォルトの名無しさん
2005/06/28(火) 01:19:32教えてください。イマイチ何から取得して判断すべきなのか解らない。
0405デフォルトの名無しさん
2005/06/28(火) 19:59:230406デフォルトの名無しさん
2005/06/28(火) 20:53:350407デフォルトの名無しさん
2005/06/28(火) 21:13:04それはない
0408デフォルトの名無しさん
2005/06/30(木) 01:20:5425秒間何もしないで放置するとすべてのオブジェクトが開放されてしまうのに
はどのような原因があるのでしょうか?ビーンのスコープはすべて
Sessionに設定しています。
0409デフォルトの名無しさん
2005/07/23(土) 03:45:10javax.servlet.http.HttpSessionListener
って>>405がレスしてんのか…orz
0410デフォルトの名無しさん
2005/07/23(土) 09:51:33とりあえず今回のプロジェクトはStruts1.2にします。
orz..
0411デフォルトの名無しさん
2005/07/23(土) 11:12:57どのようなサイクルで処理が回っているのか理解してから使ったほうがいいと思う
これは非常に重要
俺は半年前Websphereで初めてJSFやったんだけど
たまたま時間に余裕のあるプロジェクトだったんでゆっくり勉強してから作業に入れたので
とても幸運だった
いつでも質問してくれ
かなりの事が答えられると思う
0412デフォルトの名無しさん
2005/07/23(土) 11:18:30xDBCとsocket通信を使って開発したほうが楽そうだ。
0413デフォルトの名無しさん
2005/07/23(土) 11:25:32ま、俺もたまにそういうこと思うけどね
StrutsやHibernate、Springをプロジェクトで使ってもいいけど
半数以上知ってる奴がメンバーの中に居なければ、逆に進度が落ちる
みんなそんなにバカなコーディングはしないだろう
普通に(JDBCとかServletAPIで)作っていってもそれほど問題はないとはおもうこともしばしば 柴俊夫
0414デフォルトの名無しさん
2005/07/23(土) 12:44:580415デフォルトの名無しさん
2005/07/23(土) 12:47:53いや、その一人の作業負荷が高くなりそう
半分ぐらい知っている場合
「知らない奴は勉強すれ」
一人しか知らない場合
「操作手順書書いといて」
わかりきった事実やるせない事実
0416デフォルトの名無しさん
2005/07/23(土) 13:23:15VisualEditor関連の機能が気になるんだけど、いつ頃モノはできるんだろう?
http://www.eclipse.org/proposals/eclipse-jsf/index.html
# Graphical/Visual Editor for JSF Pages
1. Visual editing of JSF components
2. Support drag and drop, wizards for standard and core JSF tags
3. Support for backing beans
# Graphical/Visual Editor for faces-config.xml (Page-flow Editor)
1. Create and remove pages (Navigation Cases) from the diagram
2. Rename navigation rule outcomes and actions and navigation cases on the diagram
3. Automatically diagram navigation data from any JSF configuration file
# JSF Preview
1. The JSF Editors will have a preview capability
0417デフォルトの名無しさん
2005/07/23(土) 13:29:10その「will」がいつになるのか書かれていないのでかなり先の予感
0418デフォルトの名無しさん
2005/07/23(土) 13:34:190419デフォルトの名無しさん
2005/07/23(土) 13:44:41まあIBMの連中にしてみれば「全部俺らにやらせろや」とか
思ってんだろうな。
0420デフォルトの名無しさん
2005/07/23(土) 14:02:35フレームワークってそういうもの。
導入初期には覚えるためのコストがかかることを忘れてはいけない。
わかっているプロジェクトでは学習のための期間や書籍購入、セミナー参加等を計上するが
ダメプロジェクトではフレームワークの効率性のみを期待してあぼーん。
0421デフォルトの名無しさん
2005/07/24(日) 05:09:200422デフォルトの名無しさん
2005/07/24(日) 05:22:230423デフォルトの名無しさん
2005/07/24(日) 13:40:55セッション切れ判定はHttpSessionListenerじゃやりにくい。
無効化されたの伝えようにもセッションが切れちゃってるから。
切れたセッションIDを記録する方法もあるだろうけど。
セッション切れ画面を出したい場合は、
RESTORE_VIEWなPhaseListener#afterPhase()で、
HttpSession#isNew() -> true
HttpServletRequest#isRequestedSessionIdValid() -> false
HttpServletRequest#getRequestedSessionId() -> != null (不要かも)
この条件が成立するリクエストはセッション切れと扱える。
で、これを捉えたら、FacesContext#setViewRoot()に
ViewHandler#createView()で作ったビューをセットして
FacesContext#renderResponse()を呼べば、
セッション切れ画面に切り替えることができる。
ただし、ログアウト画面に再ログインのリンクがあったりすると、
そこからログインした時にセッション切れ扱いされちゃうかも。
一月近く経ってるからさすがにもう見てないだろうなー。。
0424デフォルトの名無しさん
2005/07/27(水) 00:22:43WTP1.5にあわせて2006Q3にしようっていうIBMの意見がとりあえず通ったみたいだ。
WTPがJ2EE5.0対応になるタイミングだしね。
あと、>>349- から話題になってるExadel Inc.が仲間に入れてくれって
表明した。まあ現時点でWTPに寄生したJSF製品売ってるExadelStudioに
してみりゃ死活問題だろうしなあ。
0425デフォルトの名無しさん
2005/07/28(木) 12:01:54<h:message for="age"/>
入力チェックで引っかかった場合、
リソースの{0}の部分にid(age)が入るみたいなんだけど
ここを別の文字に変更したい場合はどうすればいいの?
0426425
2005/07/28(木) 12:11:280427デフォルトの名無しさん
2005/07/28(木) 13:00:53本当に!!
MyFacesを使ってないわっしにぜひ教えてはくれないでしょうか。
0428デフォルトの名無しさん
2005/08/02(火) 00:53:59その解決方法は、とりあえずセッションスコープのビーンを作成してそこでIDをもたせて
それがnullになった瞬間セッション切れているって判別することで解決しました。
ライフサイクルの中でJSFはListnerで何らかの処理が走るのでその中に継承して埋め込む
形で埋葬し解決しました。どうもです。
ところでまたまたしょうもない質問ですが、多重送信を防止する場合どのような解決方法で
回避しているのが教えてください。
ID+アクション名というユニークな値を作ってある瞬間アクセスされたとき、過去に時間を記録していない
もしくは、現在の時間と過去の時間の差分が閾値を超えた場合、送信内容を受け付ける。それ以外は
しばらくお待ちくださいページに飛ぶって方法で逃げようと思っています。
これだとダメでしょうか?
0429デフォルトの名無しさん
2005/08/02(火) 01:06:37俺はStrutsのTransactionTokenの仕組みに、前画面情報を付加してアレンジした仕組みを使ってる。
0430デフォルトの名無しさん
2005/08/03(水) 01:04:54ありがと、同期メソッドにユニークな値作らせるだけでいいのか。
たいした話じゃなくてよかったよ。どうもね
0431デフォルトの名無しさん
2005/08/04(木) 00:33:44タブでログインボタンや、ユーザIDの入力フィールドにフォーカスを合わせた状態にします。
そこで、リターンキーを連打し、ごく僅かな時間に複数のリクエストを送信します。そうるすると、
com.sun.faces.lifecycle.InvokeApplicationPhase execute
java.lang.IndexOutOfBoundsException: Index: 0, Size: 0
at java.util.ArrayList.RangeCheck(ArrayList.java:507)
at java.util.ArrayList.remove(ArrayList.java:392)at
javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:271)at
javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:381)at
com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:75)at
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)at
com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)以下省略
というふうにエラーが出ます。しかし、これがどこから発生していたどこでキャッチできるのか
解りません。変数にアクセスする前であればHTTP500も発生しないし問題はあまりないのですが
出ると気持ち悪いので原因改善できる工夫をどのようにすればいいのか教えてください。
0432デフォルトの名無しさん
2005/08/04(木) 00:38:52環境を全く書かないのは釣り。
0433デフォルトの名無しさん
2005/08/04(木) 01:44:36ExternalContext context = FacesContext.getCurrentInstance().getExternalContext();
HttpServletResponse response = (HttpServletResponse) context.getResponse();
OutputStream out = response.getOutputStream();
FileInputStream in = new FileInputStream(fileName);
response.setContentLength(size);
response.setHeader("Content-Disposition", "attachment; filename=" + fileName);
int c;
while ((c = in.read()) != -1) {
out.write(c);
}
out.close();
in.close();
FacesContext.getCurrentInstance().responseComplete();
ダウンロード自体は出来ています。
ですが、クライアントにダウンロードの要求確認の画面が表示されるのが、このメソッドが終了した後です。
つまり、
while ((c = in.read()) != -1) {
out.write(c);
}
↑を実行した後、ダウンロードしますか?と聞かれます。
小さいサイズですと、正常にダウンロードしたように見えますが、
少し大きくなると、1分後くらいにダウンロード確認画面が出ます。
さらに大きいサイズになると、途中でjava.lang.OutOfMemoryErrorが起きます。
普通のServletではほぼ同じコードでも問題なく動作しました。
JSFでは、responseを取得する以外に特別な記述が必要なんでしょうか?
ご教授いただければ幸いです。
0434431
2005/08/04(木) 01:49:02JSF1.1
J2SDK1.4
Tomcat 5.x.xだけでしか試していないのでなんとも言えない。けど
0435デフォルトの名無しさん
2005/08/04(木) 07:09:19おまえ、バカだろ?
JSF実装に何を使っているのかが重要なんだよ。
そんな調子じゃ道は遠そうだな。
0436デフォルトの名無しさん
2005/08/04(木) 13:01:33二度押し対策なら本屋に逝って「LightWeightJava」を買ってP168を開けて解決するという方法もある。
0437デフォルトの名無しさん
2005/08/04(木) 15:25:33http://d.hatena.ne.jp/naoya/20050803/1123053496
0438デフォルトの名無しさん
2005/08/06(土) 17:15:48var elements = form.elements;
for (var i = 0; i < elements.length; i++) {
if (elements[i].type == 'submit') {
elements[i].disabled = true;
}
}
}
これって、使用部品数が多いと、遅くなっちゃうんだよな
0439デフォルトの名無しさん
2005/08/07(日) 13:15:01クライアント側でログインしているNTのアカウントを取りたいんだけど、できる?
0440デフォルトの名無しさん
2005/08/07(日) 14:13:440441デフォルトの名無しさん
2005/08/08(月) 07:23:45これいいね
0442デフォルトの名無しさん
2005/08/08(月) 10:26:27うん、裏でああだこうだやるより
ユーザインタフェースって言葉に合ってると思う。
0443デフォルトの名無しさん
2005/08/08(月) 22:36:53それともユースケース単位?
0444デフォルトの名無しさん
2005/08/08(月) 23:25:54うれしいBean
たのしいBean
かなしいBean
むかつくBean
うれしいBeanとたのしいBeanで悩む。
0445デフォルトの名無しさん
2005/08/08(月) 23:29:080446デフォルトの名無しさん
2005/08/15(月) 12:03:33IBMのWSADやRationalは画面単位っぽいコードを吐く
結局IDE任せだな俺は
0447デフォルトの名無しさん
2005/08/15(月) 20:46:39そうするとStrutsで
Actionクラスつくってるのとあんまりかわらなくないですか?
POJOってだけでもメリットあるのかなぁ
0448デフォルトの名無しさん
2005/08/15(月) 22:00:45> POJOってだけでもメリットあるのかなぁ
そゆこと。
0449デフォルトの名無しさん
2005/08/19(金) 19:38:43h:formってPOSTしかないのね。
i-mode公式サイト作ってる人ってJSF諦め?
0450デフォルトの名無しさん
2005/08/20(土) 12:46:38単純に実装を行っているのがWebブラウザ向けばかりというだけのことです
JSF自体はクライアントは何でもいい
どこかが作ったi-mode用カスタムコンポーネントがなければ
自分で作るしかない
0451449
2005/08/20(土) 13:21:15そっか。
JSF的にPOSTで受け取らないと何か動作に問題があるので
POST固定ってなってるもんだと勝手に思ってたよ。
ありがと探してみる。
0452デフォルトの名無しさん
2005/08/20(土) 14:25:11ttp://d.hatena.ne.jp/naoya/20050803/1123053496
の方法はうまく行きませんね。
この方法は、ASP.NETでもダメだったような記憶がある。
「LightWeightJava」の方法はうまく行くけど、
送信中にブラウザの中止ボタンを押すと、それ以降
submitできなくなる。
IE限定なら、document.readyStateが使えるんだけど。
0453デフォルトの名無しさん
2005/08/22(月) 08:48:020454デフォルトの名無しさん
2005/08/24(水) 13:25:22・処理分岐が不可能
・必ず後でアクションメソッドが呼ばれる
それでもなお、ここはアクションメソッドで実装せず、
アクションリスナを使うべきだ!
という具体例があれば教えてください。
0455デフォルトの名無しさん
2005/08/26(金) 00:27:570456デフォルトの名無しさん
2005/08/26(金) 10:28:54もっと詳しくお願い。
アクションリスナとアクションメソッドの使い分けが本当にわからん。
リスナメソッドがアクションメソッドより先に呼ばれると言うだけじゃないのか?
リスナメソッドの処理結果を画面上に反映させてユーザに通知することも出来ない。
画面を再描画させる契機はアクションメソッドしかないのだから。
Swingなどのスタンドアロンアプリだったらわかるが、Webアプリでは
どうやって使い分けるんだ?
マジ教えて。
0457デフォルトの名無しさん
2005/08/29(月) 22:23:41俺もわからない。ヒントだけじゃなくて、具体的な使い分けを教えて欲しい。
0458デフォルトの名無しさん
2005/08/29(月) 23:20:25「アクションメソッド」と「アクションリスナ」があるって考えると確かにリスナの方はどうよって気にもなりますが、
基本的にはイベントドリブンなので、アクションを捕まえるのは常にアクションリスナの役割だってのが前提。
だけど、それをいちいち書くのもややこしいから、ラップして使いやすくしたのがアクションメソッド、
ってことなんじゃないでしょうかね?
0459デフォルトの名無しさん
2005/08/29(月) 23:44:09ご見解ありがとう。
でもさ・・・
大義名分とか、本来の意味での存在意義はその通りなんだろうけど、
JSFのアクションリスナは、例外を投げて処理を中断することはできるけど
画面の遷移先を変えたりができないってのが何とも中途半端に感じる。
ボタンが押されたら→DB検索→検索結果表示画面へ遷移(またはエラー画面へ遷移)
なんて動きはリスナではできないんだよね・・・・
書籍やWebの情報を見ても「イベントをハンドリングできます」とは書いてあるけど
リスナで実装するべき処理の具体例をなかなか見つけられない・・・
0460デフォルトの名無しさん
2005/08/30(火) 00:02:35JSFに依存せずにコントローラを作れるという点からも、普段はアクションメソッドを使っていればいいんじゃないだろうか
0461デフォルトの名無しさん
2005/08/30(火) 02:17:23JSF+AJAXで作りたいのですが、どこかにサンプルはないでしょうか?
いまいましいことにドトネトのやつはあるのですがどうにかならないものでしょうか?
0462デフォルトの名無しさん
2005/08/31(水) 19:26:54.Netを使う。
0463デフォルトの名無しさん
2005/09/01(木) 20:42:18とくにMyFacesが駄目だな。
俺は今まで.NET一筋だったんだけど、どれだけJavaが使えないかを検証するために、
ここ一週間ほどJSF使ってみた。
<x:inputDate>とか最悪だな。
入力フィールドが日・月・年の順になってやがる。
しかもソースみるとこの順序固定で出力してやがる。
また<x:inputCalendar>も同様に駄目。
ポップアップさせて日付を選ぶと日付が入力欄に入る。
一見すると正常に動いてるようだが、ちょっと設定を変えるとおかしい。
例えば、表示形式をyyyy/MM/ddにする。
ポップアップから選択後、入力欄には確かにこの形式で表示される。
”しかし”
もう一度ポップアップさせると、動作がおかしい。
何がおかしいかを検証してみると、月が01とか02とかMMの形式だとポップアップが月を認識しない。
選択させるときはMMの形式でOKなのに、表示するときはMMだと認識せずMでないといけない。
つうか、Javaの魅力って何?
OSを選ばないところぐらいしかメリットが無い。
JSFで1ヶ月掛かる仕事も.NETなら1週間程度で終わりそうだし、
MySQLやPostgreSQLも.NETから使えるし、WindowsサーバのOS代だけ金使って、
あとはフリーでも問題無い。
ほんと、JSFって使えねぇ。
0464デフォルトの名無しさん
2005/09/01(木) 20:53:02それはJSFが使えねえんじゃなくて、MyFacesが使えないだけだ。
さすがWin/.NET厨。問題の切り分けもできないDQNだな。
0465463
2005/09/01(木) 20:56:56JSFの機能 ”だけ” じゃ.NETの足元には及ばない。
そこで、拡張されていてApacheで開発されているMyFacesと比べるのが相応と判断しただけだ。
JSFだけじゃ.NETと比べる価値も無い。
0466463
2005/09/01(木) 21:06:59例えば、ブラウザの『戻る』ボタンの制御。
JSFではデフォルトで制御してくれているが、昨今、この制御をする方法は何通りもの方法があり、
既に決まった処理となっている。
”しかし”
制御したいのは更新などで多重登録になる場合であり、なんでもかんでもデフォルトで
この処理が付いてくるのは邪魔以外の何者でもない。
特に、検索など参照だけの場合、ボタンやリンクで戻ろうが、ブラウザの戻るボタンで戻ろうが、
どっちでもいいはず。
さらには、JSFだけじゃなくてJavaでのWebアプリ自体に無駄が多い。
ServletやJSPなどで構成されたシステムで、なぜApacheのHTTPServerと
TomcatなどのApplicationServerを連携させてる構成が多いのだろう?
とくにJSFやStrutsなど使ってる場合、システムの99%近くはServletやJSPで
APサーバが処理するのに、めったに処理しない静的コンテンツ用に
ApacheのHTTPServerと連携させる。
まったくもって無駄なサーバ構成である。
0467デフォルトの名無しさん
2005/09/01(木) 21:29:25> そこで、拡張されていてApacheで開発されているMyFacesと比べるのが相応と判断しただけだ。
その判断がDQNだな。
本業を別に持っている人たちが片手間に作ったモノとなぜ比べる?
せいぜいIBMの実装と比べてから言えよな。
そんな判断もつかないのか。M$厨は。
0468デフォルトの名無しさん
2005/09/01(木) 21:30:52> TomcatなどのApplicationServerを連携させてる構成が多いのだろう?
てめえがそう思うのならしなければいいだけの話し。
誰も連携させることを強制なんかしていない。
勝手に思いこむお前が糞。
■ このスレッドは過去ログ倉庫に格納されています