- - PR -
jsfを用いた携帯サイトの作り方
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-08-13 19:52
現在Jsf(Myfaces)+Spring+Hibernateを用いて、Webアプリケーションを作成しております。
その簡易版として携帯サイトを作り、今まで作成してきたWebアプリケーションの一部の機能を使えるようにしようと思いました。 当然PCサイトと同様では表示できないため、タグ関連の修正をしているところです。 ここでいくつかの問題点が出てきました。 1、Backing Beanに直接値を入れることが出来ない。 (<h:inputText id="registId" value="#{regist.userName}" />のようなことができない) 2、Navigation(内部ロジック)がうまくいかない (f:viewやh:formが使えないため、一度PC上で表示し、ブラウザからソースを表示を行い、それらしく書いてみましたが、やはりロジック部分が動きませんでした。ソースを見た限りでは、form action="〜"と直で指定しているので、ロジック部分を通らずただ次のページに移動しただけのようです) どうしたらよいか本当にわからなく困っている次第です。 どなたかアドバイスお願いします。 | ||||||||
|
投稿日時: 2006-08-15 10:02
携帯向けのサイトを開発した経験が無いのでよく分からないのですが、なぜ、h:inputやf:viewやh:formが使えないのですか?これらはサーバサイドで実行されるので、クライアントの種別とは関係無いように思うのですが、教えてください。
| ||||||||
|
投稿日時: 2006-08-15 11:16
MyFacesのRenderKitはPC用のブラウザが前提なため無理だと思います。
ご自分で携帯向けのRenderKitを実装すれば不可能ではないでしょうけど。 他のJSF実装(ADF Faces等)が実装しているかは把握していませんが、 そんな話は聞いたこともないので厳しいのではないでしょうか。 | ||||||||
|
投稿日時: 2006-08-15 13:13
実際に試したわけではないですが、Seasar2 の、S2JSF には、htmlのタグを
そのまま出力する属性などがあるので、試してみてはいかがでしょうか? | ||||||||
|
投稿日時: 2006-08-15 13:19
form, outputText, inputText程度ならばレンダラを作るのはそんなに難しくはないと思うのですが、根本的な課題が何かあるのでしょうか?
| ||||||||
|
投稿日時: 2006-08-15 13:48
よしだ様、flatline様、あしゅ様、返信有難うございます。
よしだ様 >携帯向けのサイトを開発した経験が無いのでよく分からないのですが、なぜ、h:inputやf:viewやh:formが使えないのですか? h:inputやf:viewを使うと、javascriptが自動的に書かれてしまうため、携帯で見れなくなるのだと思います。 かといってweb.xmlのなかにあるorg.apache.myfaces.ALLOW_JAVASCRIPTをfalseにしてしまうと、urlにparameterの値が入ってしまい、何故か画面の遷移ができなくなります。(javascriptをtrueにすると遷移ができます) >form, outputText, inputText程度ならばレンダラを作るのはそんなに難しくはないと思うのですが、根本的な課題が何かあるのでしょうか? レンダラについて調べてはいますが、どうもよく分からないんですよね・・・ 海外サイトに携帯用レンダラっぽいのが書いていたのですが、一部しか書かれていない上に、myfaces 1.1.3で真似して書いてみてもエラーが出てしまいます。 あしゅ様 自分でRenderkitの実装ができたら本当はいいのですが、時間も技術も無いんですよね・・・。 最悪の場合は、struts, spring, hibernateなどの環境で取り組まなくてはいけないかと思っているしだいです。 flatline様 私もまだ試していないのですが、S2JSFならできるみたいなことが書かれているサイトがありましたね。もう少しrenderのことを調べて、できなかったら試してみたいと思います。 最後に書き忘れましたが、私の環境は facesIDEに同封されている、myfaces-1.1.3,tomahawk-1.1.2で開発を行っています。 | ||||||||
|
投稿日時: 2006-08-15 13:52
>form, outputText, inputText程度ならばレンダラを作るのはそんなに難しくはないと思うの>ですが、根本的な課題が何かあるのでしょうか?
簡易的なRenderKitならそれなりな工数で作れるとは思いますが。 それなりにまともなものを作るのはひどく面倒でしょうねぇ。 JavaScriptは使わなくても実装できそうだと思いますけど。 あとはViewStateをHTML中に出力する構造を何とかしないと HTML容量の制約で動かない、なんてことにもなりかねないです。 ロジックだけ再利用してView/ControllerはStrutsで作る、 などを選択した方が堅実なんじゃないかと思います。 | ||||||||
|
投稿日時: 2006-08-15 16:27
SUN のRI1.1_01ですと、f:view, h:form, h:inputText, h:commandButtonあたりだけならJavaScriptは使っていないと思います。h:commandLinkは使っています。 myfacesだともっとJavaScriptを多用しているんでしょうか??
それはSTATE_SAVING_METHODにclientを選択した場合ですが、携帯向けの場合、serverを選択できない理由があるのでしょうか? |