1 名前:Ace [03/10/31 01:35] JakartaのTapestryフレームワーク使ってますか? 日本ではなかなか情報が手に入らず、本家のドキュメントも 古いバージョンのままなので、使いたいと思って挫折した人多くありませんか? 私はTapestry2.3あたりのころにTapestryの存在を知りました。 それまではStrutsでした。 デザイナーを内輪にかかえていない我が社では外注先から戻ってきた HTMLからJSPへの変換および、再修正依頼が非常に困難でした。 ○JSPへの変換ってつまらないよね! ○デザイナーがStrutsの拡張タグ理解できるわけないだろう! ○できたとしてどうやってデザインするの? そんなあなたにはTapestryしかありません! ぜひ日本でもこの2chを中心にTapestryの輪を広げて Strutsにイカレテいる古臭いプログラマーたちを見返してやりましょうよ! ちなみに私は携帯&PC向け有料サイトでTapestry使ってます。(^o^)v 登録ユーザ○十数万人、売上○千万円程度の規模です。 携帯は全機種対応確認済みです。 携帯のブラウザのバグ的なものに対応するために、 Tapestryのソースいくつか書き換えてるけどね(^_^; Tapestryに興味ある人レスよろしくね!
744 名前:デフォルトの名無しさん [2007/03/09(金) 06:27:16 ] HowTo: Tapestry5.0.2でShiftJISテンプレートを使う方法 org.apache.tapestry.internal.services.TemplateParserImpl 160行目付近 try { InputSource source = new InputSource(resourceURL.openStream()); source.setEncoding("Windows-31J");//追加 _reader.parse(source); return new ComponentTemplateImpl(_templateResource, _tokens, _componentIds); } org.apache.tapestry.internal.services.PageResponseRendererImpl 47行目 //PrintWriter pw = response.getPrintWriter("text/html"); PrintWriter pw = response.getPrintWriter("text/html; charset=Windows-31J");//文字コード強制指定
745 名前:デフォルトの名無しさん mailto:sage [2007/03/17(土) 09:45:34 ] >>744 テンプレートにencoding指定したXML宣言書いて、 AppModule.javaにPageResponseRendererのデコレーションメソッド書いたらできたよ。 ↓AppModule.javaに追加するデコレーションメソッド @Match("tapestry.internal.PageResponseRenderer") public static PageResponseRenderer decoratePageResponseRenderer( @InjectService("tapestry.internal.PageMarkupRenderer") final PageMarkupRenderer markupRenderer, @InjectService("tapestry.MarkupWriterFactory") final MarkupWriterFactory markupWriterFactory, final Object delegate) { return new PageResponseRenderer() { public void renderPageResponse(Page page, Response response) throws IOException { MarkupWriter writer = markupWriterFactory.newMarkupWriter(); markupRenderer.renderPageMarkup(page, writer); PrintWriter pw = response.getPrintWriter("text/html; charset=Shift_JIS"); writer.toMarkup(pw); pw.flush(); } }; }
746 名前:デフォルトの名無しさん [2007/03/18(日) 00:25:28 ] >>745 Tapestry5.0.3の場合 @Match("PageResponseRenderer") public static PageResponseRenderer decoratePageResponseRenderer( @InjectService("PageMarkupRenderer") final PageMarkupRenderer markupRenderer, @InjectService("MarkupWriterFactory") final MarkupWriterFactory markupWriterFactory, final Object delegate) { return new PageResponseRenderer() { public void renderPageResponse(Page page, Response response) throws IOException { MarkupWriter writer = markupWriterFactory.newMarkupWriter(); markupRenderer.renderPageMarkup(page, writer); PrintWriter pw = response.getPrintWriter("text/html; charset=Shift_JIS"); writer.toMarkup(pw); pw.flush(); } }; }
747 名前:745 mailto:sage [2007/03/18(日) 03:17:12 ] >>746 なるほど [TAPESTRY-1339] - Rework Tapestry IoC to remove the concept of module ids and qualified service ids ですね。 5.0.3にしたら @Id, @Contribute アノテーションでコンパイルエラーになったんで、 とりあえず5.0.2に戻してたんだけど、そういうことだったのか。
748 名前:Tapestry5ページ更新情報 [2007/03/31(土) 03:20:22 ] Last Published: 29 Mar 2007 @Inject使用方法変更 @Path,@Serviceアノテーション追加
749 名前:Tapestry5ページ更新情報 [2007/05/03(木) 16:02:25 ] Tapestry5.0.4 people.apache.org/~hlship/tapestry-releases/
750 名前:デフォルトの名無しさん [2007/05/25(金) 18:08:48 ] age
751 名前:デフォルトの名無しさん [2007/06/07(木) 22:41:40 ] age
752 名前:Tapestry5ページ更新情報 [2007/06/30(土) 21:14:52 ] Tapestry5.0.5 people.apache.org/~hlship/tapestry-releases/
753 名前:745 mailto:sage [2007/08/18(土) 17:40:55 ] 寂れてるけど一応書いとく。 @Meta("tapestry.response-encoding=Shift_JIS") をページクラスにアノテーションすれば良くなったので、 AppModule.javaいじる必要なくなった。
754 名前:デフォルトの名無しさん mailto:sage [2007/09/06(木) 14:48:29 ] apache projectにturbine、tapestryとあるけど、 それぞれどう違うの? 両方ともプレゼンテーション層のフレームワーク?
755 名前:デフォルトの名無しさん mailto:sage [2007/09/12(水) 16:56:09 ] Tapestryで、WicketとかTeedaみたいに HTMLとロジックを完全に分離してしまう事って可能ですか?
756 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 09:31:44 ] WicketとかTeedaがTapestryみたいにHTMLとロジックを分離できる。じゃないのか? そしてTapestryはWebObjectみたいに・・・となるわけだが。
757 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 20:41:28 ] >>756 確かにTapestryの方が「生HTMLっぽいTemplate」を使う考え方は 早かったかもしれませんが、WicketやTeedaほどキレイに分離できるのでしょうか? テンプレートとして使用するHTMLが、 それ単体でブラウザから見ることができるのか? というとこまではできそうに無いなあ、と思っているのですが。
758 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 21:40:17 ] >>757 それは普通にできるでしょ。それらコンポーネント方式組はほとんど兄弟。 正直、 ・デザインテンプレート部分 ・裏側のコンポーネントモデル ・それらを結合させるグルー言語 は標準化して、エンジンがJavaで書かれてようがなんだろうとOKにして 欲しい。汎用言語と違うグルー言語記述を導入した時点でベースエンジンから 完全に切り離し可能になってるわけで。
759 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 21:42:29 ] 「〜ほどキレイか」という部分については、Tapestryの方が今となっては シンプルさに劣ると思うけど、それはHTML/ロジック分離の所にはあんま 影響してないと思う。
760 名前:757 mailto:sage [2007/09/17(月) 23:38:43 ] >>758 Tapestryでもキレイに分離できるのですか、勉強不足ですいません。 BeanEditFormのサンプルとかを見て、 input タグとか書いてないのに入力formが生成されてるとは何事か! とか思ってました。 ちなみに、Wicketでも WicketWebBean なるものが A Wicket Diaryで紹介されてましたね。
761 名前:デフォルトの名無しさん [2007/10/11(木) 01:11:18 ] Tapestry5を使ったサイト「TheDailyTube」 www.thedailytube.com/bestoftoday
762 名前:デフォルトの名無しさん mailto:sage [2007/10/12(金) 00:28:28 ] いつのまに5まで!
763 名前:デフォルトの名無しさん [2007/10/26(金) 23:54:18 ] 5.0.6
764 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 20:07:11 ] www.kensayoyaku.mlit.go.jp/CarAnswer/app 国交省の車検予約しようとしたら偶然見つけた HTMLのソースを見るとTapestry使ってるっぽい。 それにしてもTomcatモロ出しとは。。。
765 名前:デフォルトの名無しさん mailto:sage [2008/01/07(月) 23:32:36 ] 作った奴このスレ絶対読んでるだろ。 小規模案件だから実戦体験を兼ねて使ってみたのかな・・・
766 名前:デフォルトの名無しさん mailto:sage [2008/02/01(金) 19:24:41 ] JSF2.0の策定にTapestryの中の人が誘われてるって話はどうなったんだろう。 中の人はアンチJSFらしいけど、ことがうまく運べば素晴らしい相互運用性が得られるね。
767 名前:デフォルトの名無しさん mailto:sage [2008/02/04(月) 21:03:08 ] >744はShift_JISで書かれたテンプレートをtapestryに読み込ませる方法で >745以下はresponseのエンコード指定方法だよね? >744の問題のほうだけどどう解決しようか 思いつくのは、 1、おとなしくUTF-8でテンプレートを書く 2、<?xml version="1.0" encoding="Shift_JIS" ?>とテンプレートの先頭に書く 3、TemplateParserImplのコードを書き換えるorAppModuleあたりで TemplateParserのサービスを自分実装のものに置き換える
768 名前:デフォルトの名無しさん mailto:sage [2008/02/05(火) 02:08:16 ] >>767 普通に2でしょ。 あと>>745 のは5.0.5から必要なくなってる。 @Meta("tapestry.response-encoding=Shift_JIS") とページクラスにアノテーションすればレスポンスはShift_JISになる。
769 名前:デフォルトの名無しさん [2008/03/15(土) 11:34:49 ] 5.0.11age
770 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 22:58:37 ] >>766 ソースは?
771 名前:デフォルトの名無しさん [2008/07/09(水) 14:48:24 ] Tapestryが使われている日本語のサイトはあるのか? 特にTapaestry5
772 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 20:16:43 ] >>771 764にあがってる国交省の車検予約。 5ってまだベータだよね?さすがに無いんじゃね。
773 名前:デフォルトの名無しさん [2008/09/26(金) 16:58:24 ] tapestry5.0.15がリリース。 まだベータだが。
774 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 14:33:37 ] Tapestryが日本で使われない理由はやはり>>361 ですか? 自分が働いている企業は主にTapestry4.1-hibernateを使っています。 学生でもあるので卒業後日本に戻る気ですがTapestryでは仕事もらえそうにないですね。 個人的に好みなのに。残念。
775 名前:デフォルトの名無しさん mailto:sage [2008/11/05(水) 00:53:41 ] 4→5の動き方が気になりすぎて選択できない
776 名前:デフォルトの名無しさん [2008/11/15(土) 01:58:35 ] まだリリースされていないけどTapestry5は行けていると思うよ。 Wicketに比べるとコード量もだんぜん少ないし。 やはり日本語ドキュメントが無さ過ぎる感じがする。 ttp://kuramo.ch/tapestry5/ja/ にがんばってもらいたいのだが...
777 名前:デフォルトの名無しさん mailto:sage [2008/11/15(土) 05:46:10 ] >>776 しばらく止まってしまってたが、またがんがるぜ。 ちょうど今、日本語訳を5.0.15に更新したところだ。
778 名前:デフォルトの名無しさん [2008/11/15(土) 12:03:53 ] Tapestry5ではAjaxが異常に簡単だぞー スクリーンショットを見ればすぐわかるぞー ttp://tapestryjava.blogspot.com/2008/11/tapestry-5-ajax-screencast.html
779 名前:デフォルトの名無しさん [2008/11/18(火) 02:06:31 ] Tapestry 5.0.16 (Release Candidate)がリリースされた。 だれか ValidationMessages.properties Errors.properties ... をローカライズして送ったれ。
780 名前:デフォルトの名無しさん [2008/11/18(火) 15:19:28 ] >>361 >>774 T5のサンプルを見れば英語に自信がなくても作れるだろう jumpstart.doublenegative.com.au:8080/jumpstart/
781 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 23:36:33 ] GuiceとSpringどっちと相性いいの?
782 名前:デフォルトの名無しさん [2008/11/19(水) 02:08:52 ] Tapestry 5のコンポーネントの拡張例 ttp://87.193.218.134:8080/t5c-demo/
783 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 08:30:49 ] >>779 おk。俺がやっとく。 あと BeanEditForm, GridColumns, GridPager, Palette あたりもかな。 どうせデフォルトのまま使うことってあまり無いし別にいいじゃん、とか思ってたけど 結構たくさんの言語にローカライズされてんのね。
784 名前:デフォルトの名無しさん [2008/11/19(水) 10:37:51 ] >>781 Tapestry5は独自にTapestry IoCのがあるから、 Guice、Springは使う必要性がない。
785 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 18:30:25 ] Springとはtapestry-spring使えば簡単に連携できる。 Guiceとの連携はだいぶ前にMLで話題になってたようだけどよくわからん。 >>784 必要性がない、は言い過ぎではないかしら。