JSF(JavaServer Faces ..
[2ch|▼Menu]
331:デフォルトの名無しさん
05/04/19 10:13:29
誰かJSFのDataGridコンポーネントの在り処知りませんか?

【理想】
ヘッダ列固定可能
ヘッダ行固定可能
フッタ列固定可能
フッタ行固定可能
各セル毎の形式指定可能
セルの編集可能

最悪なければ自作しますが既存のがあればそちらを使いたい所存です
ついでに、JSFコンポーネント集みたいなサイトがあれば教えていただけると嬉しいです。

332:デフォルトの名無しさん
05/04/19 14:22:13
>>331
dataModelを<h:dataTable>にbindする。

それとも知ってて「それじゃ満足できねぇ」の意?


333:デフォルトの名無しさん
05/04/19 16:27:09
>>332
ありがとうございます。ちょっと試してみますね

ちなみに求めているのはASP.NETの WebForms版fpSpreadのパワーアップ版みたいな感じです
URLリンク(dotnetdemo.grapecity.com)

334:332
05/04/20 13:15:21
>>333
リンク先見た。さすがにそこまでの機能は無いなぁ

参考までに、今年リリースされるJDNCのデモでも見てくれ。
こいつはJSFの婚約者なんだ。結婚式はもう少し先だけどね。

URLリンク(jdnc.dev.java.net)

335:デフォルトの名無しさん
05/04/27 22:37:51
あげ

336:デフォルトの名無しさん
05/04/29 02:38:43
JSF だと、Controller の実装ってやらないの?(つか、やらなくていい、というか・・・)

JSF使ってみようか迷いながら調べているんだけど、これまでの servlet/jsp やMVCといった
概念がなくなってて(見えなくなってて)なかなか実際に使うには勇気がいる様な気がした。
便利な仕組みがたくさんあるだけに興味はあるんだけど。
JSFから始める未来の技術屋さんは、httpのことも知らず、getParameter 何それ?ってな時代がくるんだろうか。

337:デフォルトの名無しさん
05/04/29 09:21:16
コントローラは好きなフレームワーク使ってくれっていうことだろ。
JSFはあくまでビューの標準規格だから。

Struts初めての人でもhttpなにそれリクエストなにそれみたいな人が増えている。
まだStrutsとかなら知らんとまともにつくれんだろと言えるけど、
JSFが普及し出すとさらにふえると思う。知らんでもそれなりに作れるようになるから。
技術が進歩したというか、Javaのすそ野が広がったというか、
喜んでいいのか悲しんでいいのか、なんだかなあ。


338:デフォルトの名無しさん
05/04/29 09:34:50
最近簡単なServletを書こうとして
request.getAttribute("hoge")とやって「あれー、おかしいなぁFORMの値取れねー」と
しばらく悩んだ俺がいるわけだが

339:デフォルトの名無しさん
05/04/29 11:16:51
JSF の Backing Bean って値の変更と設定をするっていう意味ではコントローラっぽい
とも思うけど、そうでもないのかな。違うとしたら、コントローラは、どこに実装するんだ?
アクションリスナーで呼ばれる部分?

>>337
httpなんたらってやってる人間はいずれ職人とか呼ばれるようになるのか

340:デフォルトの名無しさん
05/04/29 12:45:12
>>336-339
キミらのことを指差して「ソケットなにそれlisten/bindなにそれみたいな人が増えてる」と嘆くようなもんだ。

341:デフォルトの名無しさん
05/04/29 19:09:55
>>340
そういうつもりはなかったですが、JSFから入った場合、それしか出来ない人間になってしまう気がしたもので。
フレームワークありきで入ってしまうと、その後応用がきかないつーか。
まあ、それで仕事があって商売が出来てなおかつ楽になるんだったら悪いとは言わない。
セコセコ細かいコーディングするのは正直言って俺もやだし。

で、誰か知ってたら教えて欲しいのですが、

<f:selectItems> に渡すBackingBeanのプロパティの型って、必ず SelectItem つっこんだ
Collectionじゃないとダメなんですか?普通のStringのListや<String,String>のMapを渡しても
無視されてる様な気がするんですが。
BackingBean では、出来るだけ SelectItemをnewするとか、UIを意識したコードは書きたくないと
思うんだけど、BackingBeanって、もともとそういうものでしょうか?

342:デフォルトの名無しさん
05/04/29 20:26:38
>>341
どんどん下位レイヤというのは覆い隠されていくわけだから、問題ないというか仕方ないと思うよ。
どちらにせよJSFのようなHTTPを覆い隠すレイヤーが必要で、Javaの場合はJSF以上のものはないしこれからJSFが広まっていくだろうから、JSFしか出来なくてもあまり問題ない気がする。
JSFには、そう言い切ってしまえるところまでがんばって欲しいとは思うけど。

343:デフォルトの名無しさん
05/04/29 22:00:43
>>341
マネージドビーンっていうのは、そういうもんだと思ってる。
あくまでビジネスロジックとビュー(JSF)をつなぐものとして。

1つのJSPファイルに1つのマネージドビーンを用意することにしている。
StrutsでいうところのActionっぽい感じ。

344:デフォルトの名無しさん
05/05/02 13:35:10
>>343

>1つのJSPファイルに1つのマネージドビーンを用意することにしている。

何で?

オレは 『機能単位』 だなぁ。一つのJSPで複数のManaged-Bean使ってるし
複数のJSPで一つのManaged-Bean使ってるし。まぁN対Nっつー感じで。

もしかしてIDEの影響?PageBeanって呼ぶのだっけ?

追伸:Controller役に関しては「それってコンテナのお仕事でしょ」って考えてるけど・・・

345:343
05/05/02 21:58:53
>>344
> 何で?

収拾つかなくなるから。
補足すると3つのJSPで1つの登録画面とかいうなら、マネージドビーンは1つ。
(だからマネージドビーンっていうより、バッキングビーンかなあ。)

逆はないなあ。逆にするって事は、ビジネスロジックがJSFから切り離せないんじゃないの?
まあ、今のやり方がベストだとは思ってないから、検討の余地ありだけどさ。


> 追伸:Controller役に関しては「それってコンテナのお仕事でしょ」って考えてるけど・・・

は? なぜコンテナ?


346:デフォルトの名無しさん
05/05/02 22:44:23
IBMのWSADはそういうコード吐くよね
だいたいJSFなんて、1からコード書くような開発用のものではない
ツールと組み合わされて使われることが目的
ベタで書くのもいいけど
それだったら他のアプローチ考えた方がいい

347:デフォルトの名無しさん
05/05/03 03:38:32
>>220
遅レスだけど、俺もFacesIDE使ってて同じバグに悩んだ。
でも、jarファイル群をSun実装のJavaServer Faces 1.1.01のものに置き換えたら
解決したYO!

348:デフォルトの名無しさん
05/05/03 03:52:58
追記
結局、FacesIDEが標準で含んでいるJSF実装のmyfaces 1.0.8が、IBM実装JSFと同じバグを
抱えていたってことらしい。

349:デフォルトの名無しさん
05/05/12 01:17:17
Exadel studioがフリーになったそうですが
誰か使ってみた奴はいる?

350:デフォルトの名無しさん
05/05/12 01:35:03
>>349
情報サンクス!
今ダウソしてたところ

それにしてもExadel太っ腹だなー
内容にはかなり期待してる

351:350
05/05/12 02:45:29
Exadel studioのダウンロードはユーザー登録をすると、登録に使った
メールアドレスにダウンロードURLが送られてくる方式です。

チュートリアルを見た限り、ユーザー登録するだけの価値はあるかと。

Exadel studioの利用チュートリアルやデモなどはこのページにあります
URLリンク(www.exadel.com)

352:デフォルトの名無しさん
05/05/14 02:38:17
Exadel Studio 使ってみたけどイマイチだった。

Managed Bean を作って、プロパティも適切に設定したはずなのに、
JSF内で使おうとすると認識されない(そんなプロパティ無いと言われる)
Tomcatを再起動しても同じ

また、JSFでMyFacesのタグライブラリの宣言は手動でやらないといけない
そして、肝心のJSFのページ遷移をダイアグラムを使ってビジュアルに指定する機能は、
有料版しか使えない

ストレスたまるからsysdeo+FacesIDE+amateras Html editorの組み合わせに戻したよ

個々のエディタ(JSFエディタ,CSSエディタなど)の出来はいいから、それらだけ
使うのはアリだと思う

353:デフォルトの名無しさん
05/05/14 02:47:32
まあ総括すると、
個々の機能はいいんだけど、肝心なところの使用感が今ひとつ

そんな感じ

354:デフォルトの名無しさん
05/05/14 09:58:34
いや、一番の問題は、アピールポイントが体験できない体験版の
存在価値って何なんだろう?じゃないか?w

自動CM検出機能搭載!体験版では使用できません。
擬似5.1chストリームの生成可能!体験版では使用できません。
体験版の意味ねぇよ_| ̄|○|||

355:デフォルトの名無しさん
05/05/14 10:21:58
>>352 FAQから.
URLリンク(www.exadel.com)
>5.4 What third-party plug-ins are installed with Exadel Studio?
>
>WTP Plug-Ins (IBM contribution with several significant bugs fixed)

>VE Runtime (VE-runtime-S20040628)

これ多分JSFエディタ以外の個々のエディタはeclipse.orgのコード
そのままだとおもう。ならJSFエディタだけ個別のプラグインにして
売ってほしいとこだ。

>>354
Proのほうも30日間限定で使えるらしいから、それで問題ないと思うよ。

さて、IBM/RationalがJSFの部分を省いてオープンソースにしたWTPを元に、
JSF開発環境を出しているわけだけど、本家と比べて出来はどうなのかな。

356:355
05/05/14 10:35:30
ところでWTPってEclipse3.0系と3.1系のどちらも開発途中の
コードしか公開されていないわけだけど、Exadel Studioは
どこまで手を入れてるのかな。
いくつかのクリティカルなバグは自分のところで潰したって
書いてあるけどちょっと気になる。

357:デフォルトの名無しさん
05/05/22 16:32:31
Myfaces+Eclipse+Tomcatで何のタイミングかわかんないんだけどしょっちゅう文字化ける
JSPのクラスファイル消して再コンパイルさせれば、元に戻るんだけど
なんか理由あるの?

JSPの最初には↓のようにかいてる
<%@ page language="java"
pageEncoding="Windows-31J"
contentType="text/html; charset=Shift_JIS" %>

358:デフォルトの名無しさん
05/05/22 16:34:45
pageEncoding="Windows-31J"
ならば
charset=Windows-31J
にしておけば?わざわざShift_JISにする理由がわからん

359:デフォルトの名無しさん
05/05/22 17:01:39
>>357
encoding宣言とそのjspファイルの実際のencodingが合ってないとか

360:デフォルトの名無しさん
05/05/22 20:22:17
>>357
SysdeoのTomcat Launcher Pluginとか使ってるでしょ?

JSPから生成されたJavaソースファイルのコンパイルを
Jasper(TomcatのJSPコンテナ)で行うと化けない。
Eclipseで行うと化ける。

Jasper(TomcatのJSPコンテナ)は、デフォルトではJSP→Javaに変換するとき
UTF-8でソースコードを生成する。しかし、Eclipseの、Javaソースファイルを
開くときのソースファイルの文字エンコーディングの設定がUTF-8になっていない
状態でEclipse上でコンパイルされてしまうと、化ける。


361:デフォルトの名無しさん
05/05/22 21:08:15
>>360の言うように
>デフォルトではJSP→Javaに変換するとき UTF-8でソースコードを生成する。
この部分の設定変えてみよう

っていうか俺が一番言いたいのは
日本語文字はリソースファイルに書けばいいと思うんだけど・・・
自分はいままで(このような不意な)文字化けが絶対に起きないようにリソースファイルに書くのが定石だと思ってたが・・・

362:デフォルトの名無しさん
05/05/22 21:25:30
>>361
コンテンツによっては絶望的じゃないか?

363:デフォルトの名無しさん
05/05/22 21:29:35
>>362
なにが絶望的?

・すべてがリソースに書き出せるわけが無い(?)
>>361のやり方は絶望的
・それ以外の意味

364:デフォルトの名無しさん
05/05/22 21:40:06
HTMLしかしらないデザイナがリソース分離とかやるとおもうか?

365:デフォルトの名無しさん
05/05/22 21:42:43
>>364
やらないだろうね

っつーか 言ってる意味がわからん
デザイナがプレーンなHTML持ってくるのはとうぜん
JSPタグとかに直すのはどの道プログラマ

そんな理由でリソース使わないのはおかしくない?



366:デフォルトの名無しさん
05/05/22 21:57:42
>>365
プログラマが手を入れたJSPファイルは、デザイナにとって理解不能なモノになるわけだが、
そういう分業はそのうち破綻しないか?

JSFスレとしては、デザイナが使えるJSFエディタキボンヌ、というところか。

367:デフォルトの名無しさん
05/05/22 22:00:22
>>366
ちょいまり、
JSPファイルがデザイナに戻る流れってあるのか?


368:デフォルトの名無しさん
05/05/22 22:07:37
>>367
デザイナが一回しかさわらないとでも?
むしろ、デザインは定期的に変わったりするだろ。

369:デフォルトの名無しさん
05/05/22 22:08:53
出荷した後で「ここ直して」とか無い?うちはよくあるんだが。

370:デフォルトの名無しさん
05/05/22 22:11:57
>>368
定期的っつ-のがわかんないけど
デザイナからあがってくるものはHTMLだけだよ
そんなこといったら、あんたんとこどうやって作っているのか疑問
JSP知ってるデザイナばかりではないのだろ?

>>369
それって文言変更レベルだろ?
そんなのPGがやるだろ

371:デフォルトの名無しさん
05/05/22 23:55:45
>>370
業務系WEBアプリならともかく、オープンなネット上のショッピングカートのような
見た目重視とかそういうのならいくらでも変更はあがってこよう

まず、JSFはビジュアルなデザイナ重視
とはいえ、グループ開発用のいいのあるんかな

JSP単体ならDreamWeaverでTomcat連携機能もあったりもして
実はデザイナにもJavaの知識なしで扱いやすい
最初の設定だけはしてあげる必要があるけど、JSPからの戻りが問題ない
が、Strutsのようにカスタムタグが出てくるともうだめぽ

本当はたぺちゃんが普及してくれるといいのだが日本語のドキュメント
一切なしで実用的ではない

テンプレート埋め込み型を組み込むのがシンプルだしいいやね
Struts素のまま使って死んでるプロジェクトいくつかみてきた

372:デフォルトの名無しさん
05/05/23 00:11:05
JSF使えるツールって
SunとIBMぐらいでしょうか?
値段いくらぐらいなんでしょうか?

373:デフォルトの名無しさん
05/05/23 00:53:18
>>372
Sunのなら10000円くらいだったかな。
BorlandもJSF使えないかな?

374:デフォルトの名無しさん
05/05/23 00:55:37
>>370
JSPを書くことはできんが、JSPの邪魔をせずに変更できるようなデザイナならいるとは思うが。
で、デザイナとの行き来が問題になってるからTapestryとかS2JSFとかNirvanaとかMayaとか開発されてるんでしょ。

375:デフォルトの名無しさん
05/05/29 11:12:51
今まで自分がやってきたプロジェクトでは、デザイナーがJSPに触るようなことは想定されてなかったな
cssでデザイン関連の設定を極力外出ししてさえ貰っていれば、所詮htmlタグの変更レベルだからPGで対応可能だった。
それでも2度手間でメンドクサイのはたしかなんで、デザイナーが直接触れるS2JSFみたいなのは凄く興味を惹かれる

376:デフォルトの名無しさん
05/05/29 11:22:35
開発途中でデザイナとPGでHTMLが行ったり来たりするってどういうことよ
仕様変更時はしょうがないが、設計書書いてないの?

377:デフォルトの名無しさん
05/05/29 12:21:32
>>376
ネット上で公開するB2Cのアプリだと、ぎりぎりまでデザインにこだわるお客さんは結構いるよ。
設計ではなく、見た目の問題でね。

378:デフォルトの名無しさん
05/05/29 15:27:51
デザインなんて仕様で決めれるもんじゃないしね

379:デフォルトの名無しさん
05/05/29 18:58:30
>>378
紙芝居わざわざつくって、事前に確認とっているんだから
大幅な変更は別料金ですよね?

>ぎりぎりまでデザインにこだわるお客さんは結構いるよ。
PG側としてはむかつく訳だが

380:デフォルトの名無しさん
05/05/29 20:18:57
>>379
で、そういうPGは、クライアント側としてはむかつかれる訳だが

381:デフォルトの名無しさん
05/05/29 20:56:35
間にSEなりPMが入っているのでクライアントと直接話さないよPGは

382:デフォルトの名無しさん
05/05/29 21:41:08
というか、デザインなんて、サイトインしてからも変わる。

383:デフォルトの名無しさん
05/06/01 23:37:14
>>382
そのときデザイナは現行のJSP見るのかい?
プレーンなHTMLだろがボケ

デザイナ(HTML)→プログラマ(JSPに直す)
一方通行なんだよ
簡単な修正も出来ないプログラマはイラン

384:デフォルトの名無しさん
05/06/01 23:41:40
>>383
あほみっけ

385:デフォルトの名無しさん
05/06/01 23:41:49
おまいらスレタイ嫁

386:デフォルトの名無しさん
05/06/01 23:56:44
>>383
で、またプレーンなHTMLにJSPのタグとか1から埋め込んでいくの?
いいね、工数ぼったくれて。

387:デフォルトの名無しさん
05/06/03 17:28:57
そこでXMLCですよ・・・・。
今でも使ってるの俺ぐらいだろうな・・・・。

388:デフォルトの名無しさん
05/06/04 00:51:56
あ、その言葉、おれも聞いたことあるよ(・∀・)

389:デフォルトの名無しさん
05/06/11 02:09:59
AjaxFacesってのが出たみたいだけど、使った人いますか?
どんな感じ?
Ajaxってのがなんかスゴいこと出来そうな感じ。

AjaxFaces 1.0 released
URLリンク(www.theserverside.com)

390:デフォルトの名無しさん
05/06/12 14:49:31
>>389
デモが見たい

まJSF自体がJavaScript吐くようなカスタムタグだから当然だけど・・・
ちなみにAjaxから勉強しないとはまるぜ

391:デフォルトの名無しさん
05/06/13 18:23:51
JSFのコントローラがだめぽだから、コントローラ部はStrutsをつかって、
ビューの部分はJSFなんて話をよくきくんでござんすが、JSFのコントローラの
いったいどこがStrutsと比べてだめぽなんでやんすか?

392:デフォルトの名無しさん
05/06/19 01:41:35
どこで聞いたのかわかんないけど
Strutsとは微妙に層が違うと思いますよ


393:デフォルトの名無しさん
05/06/19 03:47:18
StrutsはWebアプリケーションを作りやすくする感じだけど、JSFはアプリケーションをWebで作りやすくする感じ。
Webを意識する必要があるならStrutsで、アプリケーションならJSF、という印象をうけた。

394:デフォルトの名無しさん
05/06/19 09:46:32
>>393
意味不明

395:デフォルトの名無しさん
05/06/19 11:10:50
なんとなく伝わるぞ?

JSFだとURLと処理(Action)の関係が固定にならないから、
パラメータ付きのURLをメールに乗っけるとかは作りにくい。

StrutsだとHttpSessionを一切使わない作りにもできたり。
アプリケーションの基盤としてはJSFの方が遥かに上だが。

396:デフォルトの名無しさん
05/06/19 17:36:10
>>391
ダメだといわれているけど、改めて理由を聞かれると答えられなかったのでちょっと考えてみた。
コントローラっていうのがナビゲーション機能っていう意味でなら、struts-config.xmlと比べても何の不満もない。
ちょっと機能が違う部分があるけど、それは目的が違うから。


JSFを使うつもりなら、そのコントローラ部分にStruts1.xを使うっていうのは止めといた方がいい。
JSFはイベント駆動型で、Struts1.xはリクエスト駆動型だから、無理矢理組み合わせたところでメリットがない。
(タグだけJSFで書いて、でもイベント駆動にはしないってことになるでしょう。)

今Strutsを使っていて将来性を高めるためにView部分をJSFでっていっても、
Strutsを止めて作り直すようなことがあったとしてもViewの部分(JSFの部分)が
ほとんど修正なく使えるとも思えない。


イベント駆動とリクエスト駆動での設計の違いなんかを考慮しないで、
JSF使おうというときにStrutsと同じ設計で行こうとすると、JSFのコントローラだめぽと勘違いするんじゃないのかな。
それに応じた設計をしなかったのが問題なわけだと思うんだ。

ただ、ローカルにインストールするアプリを作るのと同じように、強力なコントローラ部分がないっていう感じはする。
(ここでいうコントローラはナビゲーション機能とは違います。)
これはDIとかAOPとかそういう別のフレームワークを組み合わせて使うのがベターだと思う。


397:デフォルトの名無しさん
05/06/21 17:01:28
JSF+Springでアプリ作ってます。

ビジネス層はプレゼンテーション層を意識してはならないと思っています。
なので、DB更新処理はManagedBeanがDTOに値詰めてビジネスロジックに渡して
中でDAOが処理という設計にしました。

そこで、DBテーブルに持っている更新者IDと更新日付に
ログインユーザー情報(SessionスコープのManagedBean)をセットするのは
ManagedBeanの役割だと思うので
ManagedBeanでDTOにセットしてあげてるのですが、非常にかったるいです。

JSFから別のものに乗り換える場合
ManagedBeanで書いたかったるい処理を乗り換えたものにも
やらないといけないのは非常にめんどくさいと思ったんですけど
私どっか考え方ずれてますか?


398:デフォルトの名無しさん
05/06/21 17:03:23
ちょっと訂正
>なので、DB更新処理はManagedBeanがDTOに値詰めてビジネスロジックに渡して

DB更新処理は”プレゼンテーション層に持っている情報”はManagedBeanがDTOに値詰めてビジネスロジックに渡して

399:デフォルトの名無しさん
05/06/21 22:00:53
非常にめんどくさいと思うのは別にいいことじゃない?
リファクタリングのしがいがあると思うけどなあ。

回答になってないけどさ。


400:デフォルトの名無しさん
05/06/21 22:23:14
>>397
俺がよくやるのは、HibernateでInterceptor使って、
getUserPrincipal()と更新時刻を強制的にセットする方法だな。

Hibernateのマニュアルにやり方載ってるよ。

401:デフォルトの名無しさん
05/06/22 09:34:55
>>397
Facade

402:デフォルトの名無しさん
05/06/22 17:51:41
JSFでStrutsのDynaActionFormみたいなことは出来ないのでしょうか?
map-entriesで似たようなことはできるんですがvalue-classの指定がmap-entry毎にないんで
valueが全て同じ型になってしまいます。
map-entry単位でvalue-classの定義が出来れば楽なんですが...


403:デフォルトの名無しさん
05/06/25 00:01:57
URLリンク(www.eclipse.org)
意外なことにinitial committerはIBMじゃなくてoracle。

404:デフォルトの名無しさん
05/06/28 01:19:32
セッションが切れた時の判定って何から取得するのがベストなのか
教えてください。イマイチ何から取得して判断すべきなのか解らない。

405:デフォルトの名無しさん
05/06/28 19:59:23
単純にListenerじゃ駄目なのか。JSFの話じゃなくなるけど。

406:デフォルトの名無しさん
05/06/28 20:53:35
JSFって、クライアント側に全部持つ事できるから、セッション切れても大丈夫じゃないの?

407:デフォルトの名無しさん
05/06/28 21:13:04
>>406
それはない

408:デフォルトの名無しさん
05/06/30 01:20:54
セッションの有効期限を200分にしてるにもかかわらず
25秒間何もしないで放置するとすべてのオブジェクトが開放されてしまうのに
はどのような原因があるのでしょうか?ビーンのスコープはすべて
Sessionに設定しています。

409:デフォルトの名無しさん
05/07/23 03:45:10
>>404
javax.servlet.http.HttpSessionListener
って>>405がレスしてんのか…orz

410:デフォルトの名無しさん
05/07/23 09:51:33
なんかJSFって難しそうだな。
とりあえず今回のプロジェクトはStruts1.2にします。
orz..

411:デフォルトの名無しさん
05/07/23 11:12:57
>>410
どのようなサイクルで処理が回っているのか理解してから使ったほうがいいと思う
これは非常に重要
俺は半年前Websphereで初めてJSFやったんだけど
たまたま時間に余裕のあるプロジェクトだったんでゆっくり勉強してから作業に入れたので
とても幸運だった

いつでも質問してくれ
かなりの事が答えられると思う

412:デフォルトの名無しさん
05/07/23 11:18:30
なんかJSFって難しそうだな…
xDBCとsocket通信を使って開発したほうが楽そうだ。

413:デフォルトの名無しさん
05/07/23 11:25:32
>>412
ま、俺もたまにそういうこと思うけどね
StrutsやHibernate、Springをプロジェクトで使ってもいいけど
半数以上知ってる奴がメンバーの中に居なければ、逆に進度が落ちる
みんなそんなにバカなコーディングはしないだろう
普通に(JDBCとかServletAPIで)作っていってもそれほど問題はないとはおもうこともしばしば 柴俊夫

414:デフォルトの名無しさん
05/07/23 12:44:58
ひとりだけすごく知ってるやつがいればいいよ。

415:デフォルトの名無しさん
05/07/23 12:47:53
>>414
いや、その一人の作業負荷が高くなりそう
半分ぐらい知っている場合
「知らない奴は勉強すれ」

一人しか知らない場合
「操作手順書書いといて」

わかりきった事実やるせない事実

416:デフォルトの名無しさん
05/07/23 13:23:15
EclipseにJSFのプロジェクトあったんだね。
VisualEditor関連の機能が気になるんだけど、いつ頃モノはできるんだろう?

URLリンク(www.eclipse.org)

# 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

417:デフォルトの名無しさん
05/07/23 13:29:10
>>416
その「will」がいつになるのか書かれていないのでかなり先の予感

418:デフォルトの名無しさん
05/07/23 13:34:19
現行のVEみたいに中途半端で終わりそうな気もする

419:デフォルトの名無しさん
05/07/23 13:44:41
とりあえずOracleとIBMとの間で打ち合わせが行われた模様。
まあIBMの連中にしてみれば「全部俺らにやらせろや」とか
思ってんだろうな。

420:デフォルトの名無しさん
05/07/23 14:02:35
>>413
フレームワークってそういうもの。
導入初期には覚えるためのコストがかかることを忘れてはいけない。
わかっているプロジェクトでは学習のための期間や書籍購入、セミナー参加等を計上するが
ダメプロジェクトではフレームワークの効率性のみを期待してあぼーん。

421:デフォルトの名無しさん
05/07/24 05:09:20


422:デフォルトの名無しさん
05/07/24 05:22:23


423:デフォルトの名無しさん
05/07/24 13:40:55
>>404
セッション切れ判定はHttpSessionListenerじゃやりにくい。
無効化されたの伝えようにもセッションが切れちゃってるから。
切れたセッションIDを記録する方法もあるだろうけど。

セッション切れ画面を出したい場合は、
RESTORE_VIEWなPhaseListener#afterPhase()で、

HttpSession#isNew() -> true
HttpServletRequest#isRequestedSessionIdValid() -> false
HttpServletRequest#getRequestedSessionId() -> != null (不要かも)

この条件が成立するリクエストはセッション切れと扱える。

で、これを捉えたら、FacesContext#setViewRoot()に
ViewHandler#createView()で作ったビューをセットして
FacesContext#renderResponse()を呼べば、
セッション切れ画面に切り替えることができる。

ただし、ログアウト画面に再ログインのリンクがあったりすると、
そこからログインした時にセッション切れ扱いされちゃうかも。

一月近く経ってるからさすがにもう見てないだろうなー。。

424:デフォルトの名無しさん
05/07/27 00:22:43
>>416 夕べ、Oracle, IBM, BEAの間で打ち合わせがあって、リリースは
WTP1.5にあわせて2006Q3にしようっていうIBMの意見がとりあえず通ったみたいだ。
WTPがJ2EE5.0対応になるタイミングだしね。

あと、>>349- から話題になってるExadel Inc.が仲間に入れてくれって
表明した。まあ現時点でWTPに寄生したJSF製品売ってるExadelStudioに
してみりゃ死活問題だろうしなあ。

425:デフォルトの名無しさん
05/07/28 12:01:54
<h:inputText id="age" required="true"/>
<h:message for="age"/>

入力チェックで引っかかった場合、
リソースの{0}の部分にid(age)が入るみたいなんだけど
ここを別の文字に変更したい場合はどうすればいいの?

426:425
05/07/28 12:11:28
MyFacesのサンプルにあったわ。

427:デフォルトの名無しさん
05/07/28 13:00:53
>>426
本当に!!
MyFacesを使ってないわっしにぜひ教えてはくれないでしょうか。

428:デフォルトの名無しさん
05/08/02 00:53:59
>>424さんどうもすんません
その解決方法は、とりあえずセッションスコープのビーンを作成してそこでIDをもたせて
それがnullになった瞬間セッション切れているって判別することで解決しました。
ライフサイクルの中でJSFはListnerで何らかの処理が走るのでその中に継承して埋め込む
形で埋葬し解決しました。どうもです。
 ところでまたまたしょうもない質問ですが、多重送信を防止する場合どのような解決方法で
回避しているのが教えてください。
 ID+アクション名というユニークな値を作ってある瞬間アクセスされたとき、過去に時間を記録していない
もしくは、現在の時間と過去の時間の差分が閾値を超えた場合、送信内容を受け付ける。それ以外は
しばらくお待ちくださいページに飛ぶって方法で逃げようと思っています。
 これだとダメでしょうか?


429:デフォルトの名無しさん
05/08/02 01:06:37
>>428
俺はStrutsのTransactionTokenの仕組みに、前画面情報を付加してアレンジした仕組みを使ってる。


430:デフォルトの名無しさん
05/08/03 01:04:54
>>429
ありがと、同期メソッドにユニークな値作らせるだけでいいのか。
たいした話じゃなくてよかったよ。どうもね


431:デフォルトの名無しさん
05/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も発生しないし問題はあまりないのですが
出ると気持ち悪いので原因改善できる工夫をどのようにすればいいのか教えてください。

432:デフォルトの名無しさん
05/08/04 00:38:52
>>431
環境を全く書かないのは釣り。

433:デフォルトの名無しさん
05/08/04 01:44:36
JSFでバイナリデータのダウンロードをしたいのですが、上手くいきません。

ExternalContext 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を取得する以外に特別な記述が必要なんでしょうか?
ご教授いただければ幸いです。

434:431
05/08/04 01:49:02
環境といっても
JSF1.1
J2SDK1.4
Tomcat 5.x.xだけでしか試していないのでなんとも言えない。けど


435:デフォルトの名無しさん
05/08/04 07:09:19
>>431
おまえ、バカだろ?
JSF実装に何を使っているのかが重要なんだよ。
そんな調子じゃ道は遠そうだな。


436:デフォルトの名無しさん
05/08/04 13:01:33
>>431
二度押し対策なら本屋に逝って「LightWeightJava」を買ってP168を開けて解決するという方法もある。

437:デフォルトの名無しさん
05/08/04 15:25:33
これでもいい
URLリンク(d.hatena.ne.jp)

438:デフォルトの名無しさん
05/08/06 17:15:48
function disableSubmit(form) {
  var elements = form.elements;
  for (var i = 0; i < elements.length; i++) {
    if (elements[i].type == 'submit') {
      elements[i].disabled = true;
    }
  }
}

これって、使用部品数が多いと、遅くなっちゃうんだよな

439:デフォルトの名無しさん
05/08/07 13:15:01
社内アプリ、クライアントWindows2000/XPという前提で、何か入力画面を作ったとして、
クライアント側でログインしているNTのアカウントを取りたいんだけど、できる?

440:デフォルトの名無しさん
05/08/07 14:13:44
>>439 できる。が、スレ違いの予感。とりあえずNTLM認証とかでぐぐれ。

441:デフォルトの名無しさん
05/08/08 07:23:45
>>437
これいいね

442:デフォルトの名無しさん
05/08/08 10:26:27
>>441
うん、裏でああだこうだやるより
ユーザインタフェースって言葉に合ってると思う。

443:デフォルトの名無しさん
05/08/08 22:36:53
ManagedBeanって画面単位でつくってる?
それともユースケース単位?


444:デフォルトの名無しさん
05/08/08 23:25:54
気分単位。
うれしいBean
たのしいBean
かなしいBean
むかつくBean

うれしいBeanとたのしいBeanで悩む。

445:デフォルトの名無しさん
05/08/08 23:29:08
EmotionalBeanか・・・・・・・・・・語感的にはアリな気がしないでもないから不思議だw

446:デフォルトの名無しさん
05/08/15 12:03:33
>>443
IBMのWSADやRationalは画面単位っぽいコードを吐く
結局IDE任せだな俺は

447:デフォルトの名無しさん
05/08/15 20:46:39
>446

そうするとStrutsで
Actionクラスつくってるのとあんまりかわらなくないですか?
POJOってだけでもメリットあるのかなぁ

448:デフォルトの名無しさん
05/08/15 22:00:45
>>447
> POJOってだけでもメリットあるのかなぁ
そゆこと。

449:デフォルトの名無しさん
05/08/19 19:38:43
携帯向けサイトにJSF使おうと思って調べてたら
h:formってPOSTしかないのね。
i-mode公式サイト作ってる人ってJSF諦め?

450:デフォルトの名無しさん
05/08/20 12:46:38
>>449
単純に実装を行っているのがWebブラウザ向けばかりというだけのことです
JSF自体はクライアントは何でもいい

どこかが作ったi-mode用カスタムコンポーネントがなければ
自分で作るしかない





451:449
05/08/20 13:21:15
>>450
そっか。
JSF的にPOSTで受け取らないと何か動作に問題があるので
POST固定ってなってるもんだと勝手に思ってたよ。
ありがと探してみる。

452:デフォルトの名無しさん
05/08/20 14:25:11
submitボタン二度押し対策で、
URLリンク(d.hatena.ne.jp)
の方法はうまく行きませんね。
この方法は、ASP.NETでもダメだったような記憶がある。

「LightWeightJava」の方法はうまく行くけど、
送信中にブラウザの中止ボタンを押すと、それ以降
submitできなくなる。

IE限定なら、document.readyStateが使えるんだけど。


453:デフォルトの名無しさん
05/08/22 08:48:02
submitボタン押せなくするよりもonsubmitイベントでfalse返すほうが確実っぽい

454:デフォルトの名無しさん
05/08/24 13:25:22
アクションリスナの存在意義がわかりません。
・処理分岐が不可能
・必ず後でアクションメソッドが呼ばれる
それでもなお、ここはアクションメソッドで実装せず、
アクションリスナを使うべきだ!
という具体例があれば教えてください。


455:デフォルトの名無しさん
05/08/26 00:27:57
何か勘違いしてる気がするけど、それはそれとして、ヒント:イベントドリブン、EoD

456:デフォルトの名無しさん
05/08/26 10:28:54
>>455
もっと詳しくお願い。
アクションリスナとアクションメソッドの使い分けが本当にわからん。
リスナメソッドがアクションメソッドより先に呼ばれると言うだけじゃないのか?
リスナメソッドの処理結果を画面上に反映させてユーザに通知することも出来ない。
画面を再描画させる契機はアクションメソッドしかないのだから。
Swingなどのスタンドアロンアプリだったらわかるが、Webアプリでは
どうやって使い分けるんだ?
マジ教えて。


457:デフォルトの名無しさん
05/08/29 22:23:41
>>455
俺もわからない。ヒントだけじゃなくて、具体的な使い分けを教えて欲しい。

458:デフォルトの名無しさん
05/08/29 23:20:25
僕もちゃんと理解してるわけではないんでアレなんだけど。

「アクションメソッド」と「アクションリスナ」があるって考えると確かにリスナの方はどうよって気にもなりますが、
基本的にはイベントドリブンなので、アクションを捕まえるのは常にアクションリスナの役割だってのが前提。
だけど、それをいちいち書くのもややこしいから、ラップして使いやすくしたのがアクションメソッド、
ってことなんじゃないでしょうかね?

459:デフォルトの名無しさん
05/08/29 23:44:09
>>458
ご見解ありがとう。
でもさ・・・
大義名分とか、本来の意味での存在意義はその通りなんだろうけど、
JSFのアクションリスナは、例外を投げて処理を中断することはできるけど
画面の遷移先を変えたりができないってのが何とも中途半端に感じる。
ボタンが押されたら→DB検索→検索結果表示画面へ遷移(またはエラー画面へ遷移)
なんて動きはリスナではできないんだよね・・・・

書籍やWebの情報を見ても「イベントをハンドリングできます」とは書いてあるけど
リスナで実装するべき処理の具体例をなかなか見つけられない・・・




460:デフォルトの名無しさん
05/08/30 00:02:35
無理して使う必要ないんじゃない?
JSFに依存せずにコントローラを作れるという点からも、普段はアクションメソッドを使っていればいいんじゃないだろうか

461:デフォルトの名無しさん
05/08/30 02:17:23
AjaxFaces とか既製品使わないでちょっと、簡単なサンプルを
JSF+AJAXで作りたいのですが、どこかにサンプルはないでしょうか?
いまいましいことにドトネトのやつはあるのですがどうにかならないものでしょうか?

462:デフォルトの名無しさん
05/08/31 19:26:54
>>461
.Netを使う。

463:デフォルトの名無しさん
05/09/01 20:42:18
JSFってつかえねぇ。
とくに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って使えねぇ。

464:デフォルトの名無しさん
05/09/01 20:53:02
>>463
それはJSFが使えねえんじゃなくて、MyFacesが使えないだけだ。
さすがWin/.NET厨。問題の切り分けもできないDQNだな。


465:463
05/09/01 20:56:56
>>464
JSFの機能 ”だけ” じゃ.NETの足元には及ばない。
そこで、拡張されていてApacheで開発されているMyFacesと比べるのが相応と判断しただけだ。

JSFだけじゃ.NETと比べる価値も無い。

466:463
05/09/01 21:06:59
JSF、問題は山積みだよ。

例えば、ブラウザの『戻る』ボタンの制御。
JSFではデフォルトで制御してくれているが、昨今、この制御をする方法は何通りもの方法があり、
既に決まった処理となっている。

”しかし”

制御したいのは更新などで多重登録になる場合であり、なんでもかんでもデフォルトで
この処理が付いてくるのは邪魔以外の何者でもない。
特に、検索など参照だけの場合、ボタンやリンクで戻ろうが、ブラウザの戻るボタンで戻ろうが、
どっちでもいいはず。

さらには、JSFだけじゃなくてJavaでのWebアプリ自体に無駄が多い。
ServletやJSPなどで構成されたシステムで、なぜApacheのHTTPServerと
TomcatなどのApplicationServerを連携させてる構成が多いのだろう?

とくにJSFやStrutsなど使ってる場合、システムの99%近くはServletやJSPで
APサーバが処理するのに、めったに処理しない静的コンテンツ用に
ApacheのHTTPServerと連携させる。
まったくもって無駄なサーバ構成である。

467:デフォルトの名無しさん
05/09/01 21:29:25
>>465
> そこで、拡張されていてApacheで開発されているMyFacesと比べるのが相応と判断しただけだ。
その判断がDQNだな。
本業を別に持っている人たちが片手間に作ったモノとなぜ比べる?
せいぜいIBMの実装と比べてから言えよな。
そんな判断もつかないのか。M$厨は。

468:デフォルトの名無しさん
05/09/01 21:30:52
>なぜApacheのHTTPServerと
> TomcatなどのApplicationServerを連携させてる構成が多いのだろう?
てめえがそう思うのならしなければいいだけの話し。
誰も連携させることを強制なんかしていない。
勝手に思いこむお前が糞。

469:463
05/09/01 21:43:26
>>467
>その判断がDQNだな。
>本業を別に持っている人たちが片手間に作ったモノとなぜ比べる?

これは無知ゆえの発言ですね。
Apacheは非営利目的の団体だけど、開発者は普通の企業に勤めてる人間が多い。
しかし、だからといって本業の片手間と決め付けるのは無知そのもの。
実際は、勤め先の会社から給料を貰いつつ、その会社での”仕事”として
Apacheプロジェクトの開発をする事が認められている。
つまり、本業。

>せいぜいIBMの実装と比べてから言えよな。
>そんな判断もつかないのか。M$厨は。

IBMの実装?
それに金払うのか?
ならば、金払わないでもつかえる.NETと比べる土台にすら上がってないよ。

>てめえがそう思うのならしなければいいだけの話し。
>誰も連携させることを強制なんかしていない。
>勝手に思いこむお前が糞。

俺がサーバを立てるなら連携させることは無いだろうな。
だけど、Javaなどをメインに仕事してる会社とかが構築してる場合とかでも
ほぼデフォルトでそういった構成になってる。
正直言って不思議だよ。

ちなみに、思い込みじゃなくて実際に見てみた結果で言ってる。


470:デフォルトの名無しさん
05/09/01 21:51:35
>>469
Apacheは非営利目的の団体だけど、開発者は普通の企業に勤めてる人間が多い。
しかし、だからといって本業の片手間と決め付けるのは無知そのもの。
実際は、勤め先の会社から給料を貰いつつ、その会社での”仕事”として
Apacheプロジェクトの開発をする事が認められている。
つまり、本業。

その辺はプロジェクトによって全く扱いが違うぞ。
MyFacesのコミッタが誰だかわかってて言ってる?
例えば、コミッタのうちのひとり、
Oかもと氏はみかかでーたの仕事としてMyFacesの開発なんかしてないぞ。

471:デフォルトの名無しさん
05/09/01 21:52:13
> 俺がサーバを立てるなら連携させることは無いだろうな。
じゃあそうすればいいだろ。文句たれるな。

472:デフォルトの名無しさん
05/09/01 22:00:52
俺も某Apache関連プロジェクトのコミッタだけど会社の業務中はコッソリ・・・
業務として給料もらってできたらいいなー

473:デフォルトの名無しさん
05/09/01 22:01:10
わざわざJSFのスレにきて.NETの足元にも及ばないとか言ってる時点でお察し

474:463
05/09/01 22:22:58
>>470>>472
それは、日本と欧米の違いじゃない?
まぁ、プロジェクトによって変わるというより、どこの国の奴って方が大きい気がする。
考え方の違いだな。

>>471
単純な文句ではない。
たとえばMyFacesの日付関連に関してもそう。
日付表示は国によって違うことも分かる。
だからこそinputCalendarとかではyyyyMMDDなど書式を指定できる。
にも関わらず書いたような事が起こる。
つまり、考えが足らない。
つうか、inputCalendarでyyyymmddの指定してもう一度ポップアップさせると
月を認識しないなんて、バグだろ・・・
それにMyFacesのコミッタに日本人がいるのに、日・月・年の並びになってて不思議に思わないのも変。
日付の表示方法ってのは何通りもあるから、大抵の言語とかでも日付の書式設定てのがある。
書式設定にあわせて入力欄も変わらないと意味が無いよな。

はっきり言って、コミッタの設計能力って新卒の新入社員並だよな・・・


HTTPServerに関してもそう。
書籍やインターネットなどで連携についてよく掛かれている。
確かに静的コンテンツを表示させるのには効率は良いだろう。
しかし静的コンテンツが殆ど無いにも関わらず、なんでも連携してる感があるのは否めない。

>>473
理論的に反論できない時点でお察し。

俺は実例もあげて言ってるわけだが、反論するなら例などあげて理論的に反論しないと、
負け犬の遠吠えにしか聞こえない。

475:デフォルトの名無しさん
05/09/01 22:34:48
先の見えない&路線変更しまくりの.NETよりはJavaのほうがコミュニティーや各ベンダの
相互チェック体制がしっかりしている分いいかな。



476:463
05/09/01 22:38:01
>>475
Javaは路線変更していないと言えるのだろうか・・・

コミュニティーや各ベンダの相互チェック体制がしっかりしてるというが、
実装を行うコミュニティやベンダが多く、同じ仕様なはずなのに
多少なりとも独自仕様が入り、互換性がない。
つうかSunのJDK自体も独自仕様がはいってるし、正直終わってる。

477:デフォルトの名無しさん
05/09/01 22:42:43

また、本屋が儲かるな・・

478:デフォルトの名無しさん
05/09/01 22:43:55
まあ、糞.NETには糞MyFacesが相応な比較対象ということなんだな。
まともな実装にはかなわないのがわかってるから勝てそうな相手を選んだってことか。

479:デフォルトの名無しさん
05/09/01 22:45:40
>>474
MyFacesに関しては同意できるんだが、ApacheHTTPServerと同TOMCATの連携は
ロードバランスやクラスタリングの様な便利な使い方もあるわけで、なぜ否定的に見
られるのか分からん。
それに、TOMCATがガチでAPサーバとWEBサーバを兼ねてたら、IISとの混成なん
かで無駄な工夫が必要になる。

480:463
05/09/01 22:46:30
>>478
なら、そのまともな実装とやらを教えてくれよ。
俺のJavaの知識は1週間しかないんだよ。

1週間程度勉強した奴にここまで突っ込まれて、理論的にも反論できないってどういう事よ。



次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5378日前に更新/293 KB
担当:undef