1read 100read
2013年03月プログラム372: Tapestryについて語ろうよ! (808) TOP カテ一覧 スレ一覧 2ch元 削除依頼
「Cでプログラミングするには人生は短すぎる」か? (317)
D言語 Part31 (270)
36歳のオッサンがC言語を始めたいのだが・・・ (969)
今まで見た中で一番すげーコメント (575)
今まで見た中で一番すげーコメント (575)
Excel VBA 質問スレ Part28 (408)

Tapestryについて語ろうよ!


1 :03/10/31 〜 最終レス :2012/08/08
JakartaのTapestryフレームワーク使ってますか?
日本ではなかなか情報が手に入らず、本家のドキュメントも
古いバージョンのままなので、使いたいと思って挫折した人多くありませんか?
私はTapestry2.3あたりのころにTapestryの存在を知りました。
それまではStrutsでした。
デザイナーを内輪にかかえていない我が社では外注先から戻ってきた
HTMLからJSPへの変換および、再修正依頼が非常に困難でした。
○JSPへの変換ってつまらないよね!
○デザイナーがStrutsの拡張タグ理解できるわけないだろう!
○できたとしてどうやってデザインするの?
そんなあなたにはTapestryしかありません!
ぜひ日本でもこの2chを中心にTapestryの輪を広げて
Strutsにイカレテいる古臭いプログラマーたちを見返してやりましょうよ!
ちなみに私は携帯&PC向け有料サイトでTapestry使ってます。(^o^)v
登録ユーザ○十数万人、売上○千万円程度の規模です。
携帯は全機種対応確認済みです。
携帯のブラウザのバグ的なものに対応するために、
Tapestryのソースいくつか書き換えてるけどね(^_^;
Tapestryに興味ある人レスよろしくね!

2 :
まずそれについて簡単な説明ヨロ!
期待してるぜ!

3 :
>>1
《The Jakarta Project》
http://pc2.2ch.net/test/read.cgi/tech/1019996589/
じゃあかんのか?

4 :
Velocityとの併用はできまっか?
JBOSSとの併用、
Turbineとの併用、JSFとの併用もできまっか?

5 :
マルチポ (ry

6 :
>>4
TapestryはTomcatから見ればただの1サーブレットなので、
他のサーブレット、フレームワークとの共存?(同じWEBアプリ内で使う意味)はもちろんできるよ!
ただTapestryはURLをフレームワークが生成するという概念なので、
Tapestryアプリ(ページ)からStrutsアプリ(ページ)へのリンク
特に動的パラメータつきのサーブレットを呼び出したりするのは、
知っていれば簡単だけど、ちと習得に時間がかかるかな。
逆(StrutsからTapestryへのリンク)は拡張タグlibがついているので簡単だよ!
ただしTapestryテンプレートの中にJSPのような<% %>は埋め込んでも無視されます!

7 :
>JakartaのTapestryフレームワーク使ってますか?
>日本ではなかなか情報が手に入らず、本家のドキュメントも
>古いバージョンのままなので、使いたいと思って挫折した人多くありませんか?
こういう状況では使いたいと思っても「挫折」という感覚はないなぁ。
俺は explorer ではない単なるへたれなので、世にこなれてくるまで放っておく。
こなれてれば英語でも開発ストップしてても使う。

8 :
TapestryとStrutsの比較
リンク
Tapestry:<a jwcid="@PageLink" page="Next" href="Next.html">Next</a>
Struts:<html:link page="Next">Next</html:link>
文字列の出力
Tapestry:<span jwcid="@Insert" value="ognl:msg">エラーメッセージ(仮)</span>
Struts:<bean:write property="msg" scope="request"/>
HTMLテンプレート拡張子
Tapestry:.html
Struts:.jsp
実行時は同じでも、デザイン時はどちらがブラウザやオーサリングツールに
やさしいかは一目瞭然!

9 :
おいらも詳しく知りたいな。期待してるよ

10 :
リサの妖精伝説だな。

11 :
>>8
Strutsは既存のHTMLを拡張タグに書き換える手法だから、
実行して初めてどのタグに変換されるか確認できるが、
Tapestryは既存のHTMLタグに存在しない属性にパラメータを渡すから、
実行しなくても容易に実行時のイメージがブラウザで確認できるという意味かな?

12 :
Tapestryって日本で使ってるやついるの?
いいサイト教えてくれ!

13 :
おまえらさ、どうでもいいけど雑誌とかそういうものに流されすぎるのはよくないぞ
いいか?これは、どのフレームワークにもいえることだが
Tapestryを使うためにアプリ作るわけじゃないだろう?
アプリ作るためにTapestryを選択するわけだ。
だけどよ、Tapestryを選択しないといけないようなアプリってどんなのよ?
スレ立てるほどの需要があるとは思わないが

14 :
>>3
同意
>>13
概ね同意だが、独りよがりで馬鹿っぽい。

15 :
>>13
デザイン重視の会員向けWebサイト(アプリ)
デザインが定期的、もしくは割と頻繁に大きく変更されるWebサイト(アプリ)
拡張タグを理解するのが苦手なWebデザイナーをかかえているシステム会社
拡張タグを認識できないWebオーサリングツールを使用しているデザイン会社にWebデザインを外注するシステム会社
なんかの場合どうでしょう?
Strutsを選択しないといけないようなアプリの方が少ないと思うが?

16 :
Strutsにしても、Tapestryにしても、
拡張タグを使わせるフレームワークは個人的には嫌いだし、
何年か経つと単にお祭りで終わっている気がする。
プレゼンテーション層は、
HTMLタグ
jspタグ(あるいはJSTL)
だけで構成すべきだと思う。
もちろん、Beanを使用して、コントロールサーブレットで
構築するMVC手法は守るんだけど。


17 :
>>15
デザイン重視って言う意味がわからない
デザインなんて関係ないじゃん。
TapestryでできることはJavaScriptだってできる。
Tapestryがページ単位で選べるのだったらいいが
それは難しいだろう。

18 :
>>17
TapestryはサーバーサイドでJavaScriptはクライアントサイドだから
同じことはできなくない?
それともIISのASPの場合の話かな?それでも意味わからないけど。
たとえばデザイナーが複雑なJavaScriptとかを組み込んだHTMLをJSPに変換して、
実行時の結果がWebオーナーの期待していたのと違う場合、再修正がかかるだろう?
そのとき、デザイナーに直してもらうファイルは元のHTML?それとも拡張タグを埋め込んだJSP?
当然元のHTMLを修正してもらって、その後プログラマーが前と同じようにJSPに変換するよね
<%@page contentType="text/html; charset=Windows-31J"%>
<%@taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<%@taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
を挿入し、
<a href...></a>を<html:link page="...></html:link>
<form action...><input...></form>を<html:form...><html:text.../></html:form>
に変換するよね?
機械的にできるものもあるけど、logicタグのほとんどは機械的にできないよね。
ページが増えたり、デザイナーがファイルを書き換えるたびに
この作業するのありえなくない?
人間しかできないけど人間のすべき仕事じゃないだろう?
それともそういう仕事は君には回ってこないのかな?
TapestryだったらTapestryの拡張属性を埋め込んだままデザイナーに渡せるよ。
デザイナーが編集するファイルと実行時のファイルが同じだからできるのさ。

19 :
>>18
ちょっとずれてしまうが
Webフォームとどうやって連携するの?
TapestryつかうとStrutsとか当然使えないと考えての質問です
共存は出来ないんでしょ?

20 :
Tapestryリンク
●●●メイン●●●
○Tapestry本家
http://jakarta.apache.org/tapestry/
○Spindle(Tapestry Eclipse Plugin)
http://spindle.sourceforge.net/
○Tacos(Tapestry Component)
http://tacos.sourceforge.net/
●●●書籍●●●
○JAVA World 2003年12月号
http://www.idg.co.jp/jw/
○WEB+DB PRESS Vol.16
http://www.gihyo.co.jp/magazines/wdpress/archive/Vol16
○Tapestry in Action
http://www.manning.com/lewisship/
●●●作者解説サイト●●●
○Beginning Tapestry
http://jakarta.apache.org/~hlship/Tapestry-ApacheCon.ppt
○Tapestry-WebTech
http://tapestry.sourceforge.net/Tapestry-WebTech.pdf
○Designing Tapestry Mega-Components
http://www.onjava.com/pub/a/onjava/2001/11/21/tapestry.html
●●●個人解説サイト●●●
○うえやんのページ
http://homepage3.nifty.com/ueyan/tapestry/index.html
○Tapestry Tutorial
http://tapestry-tutorial.cloudnine.net.nz/Tutorial2.html

21 :
●●●Tapestry入門&実践講座@2ch●●●
JAVA Worldもいいけれど、ネットの技術はネットで学べ(某氏の格言)
つーことでTapestry入門&実践講座(完全無料)をここ2chで行いたいと思います。
質問は常時OK!詳しい人はレスも期待します。
私にも記事か本書かせてよm(_ _)m>JAVA World、他出版社様
●修了目標時期:JAVA World第3回が出るより前に終わらせる(^_^;
●対象者:Strutsを使ってWebアプリを作ることに何かしらの不満がある人
●目次:
1.Tapestryとは(Strutsとの比較)
2.フォルダ構成(Eclipse&Spindle)
3.Hello World
4.現在時刻
5.文字列出力コンポーネントの使い方
6.ページ仕様ファイルの記述
7.アプリケーション仕様ファイルの記述
8.ページクラスの作成方法
9.コンポーネントの使い方全般
10.リンクコンポーネントの使い方
11.フォームコンポーネントの使い方
12.IExternalPageインターフェース
13.PageRenderListenerインターフェース
14.JDBC(JNDI)を使ってDBアクセス
15.StrutsアプリからTapestryへの移行
16.独自コンポーネントの作成

22 :
以下を知りたい人は私が本を出版するのに賛同して下さい。(^_^;
有料情報
○Tapestryの欠点・バグ・修正方法(割とお勧め! 3万円相当)
○Tapestryで携帯Webサイトを作る(かなりお勧め! 10万円相当)
○Tapestryで携帯&PC共存サイトを作る(割とお勧め! 3万円相当)
○Tapestry+EclipseUMLを用いた設計・開発(かなりお勧め! 10万円相当)
○TapestryにJDBC機能を持たせる拡張方法(割とお勧め! 3万円相当)
○デザイナーとの連携

23 :
かなり期待してます。次はいつかな?

24 :
Tapestryマンセー

25 :
まぁ、WebObjectsのWOFのパクリなわけだが、
WOは嫌いではないので期待してはいる。
いいんじゃないかい、これ。

26 :
>>22
出版するには期待しないけど、
ちゅうーかやるなよ。
Tapestryについてかたるのは、OK

27 :
早く本出せるようがんばれよ!期待してるぜ

28 :
ところでTapestryはサーバーサイドプログラミングの
「WEBプログラミング」板の方がいいんじゃないの?
http://pc2.2ch.net/php/
板違いモゲホゲ

29 :
で、Tapestryは本当にWeb限定なのか?

30 :
もう、いいだろ?
開発スピード落としてまで使うことはない。
素直にStrutsか.NET使った方が開発スピード速いよ。

31 :
>>30
開発スピードは変わらないと思われ。
変わると思うなら根拠を述べよ。
Tapestryのいいところは、デザインとロジックの
分離がきれいにできているところじゃないかなぁ。
それぐらいだけどね。

32 :
>>31
Tapestry覚えるのに時間かかりますよね?
今、習得している技術でTapestryと同じ事できないか?
おれはASP.NET(C#)、Struts、Tapestry、Struts+Tapestryで色々試したし
雑誌記事もよんだ。
ココであえてTapestryを選択する意味は何だ?
『それぐらいだけどね』のために、新たに学習するのは
コストかかるよ。
それに>>18が言っているような開発現場のほうがおかしい
なんでデザイナーとプログラマがああいう関係になっているのかわからん
>(そのとき、デザイナーに直してもらうファイルは元のHTML?それとも拡張タグを埋め込んだJSP?
>当然元のHTMLを修正してもらって、その後プログラマーが前と同じようにJSPに変換するよね )
雑誌の記事の受け売りなのかは知らんがそんな現場あるのか?
もっと頭使って仕事分けてほしい。

33 :
>>32
ごめん、漏れその辺何も触ったことがないんだが、
ズブの初心者だと、Tapestryとそれ以外だとどっちがいい?
何となくTapestryは直感的にわかりやすそうな気がしたので
気になっていたんだけど、>>32を読んだら他の奴の方が
いいのかなという気がしてきた。

34 :
>>33
最初からTapestryやるのなら何も文句いわないよ
ましてや、趣味でプログラミングなら何も文句はない。
俺はStrutsやNETの方が全体的に浸透しているという前提で話しているだけだから。
しかも俺が言ってるのはフレームワーク自体の優劣の事は言っていない。
ただ、Java系ならStrutsは知っておいた方がいいかもしれない
Tapestryってあまりサーブレット的なプログラミングではないので
サーブレットの仕組みを知るためにStrutsからやった方がいいとは思うけど。


35 :
>>18
それみるとさ、
strutsでVelocityを使えばいいのでは?
と思うんですがどうですか?

36 :
>>32
なんだ。
技術を習得する噺家。
あんなもん、三日あれば理解できるだろ。
基本的なこと以外は、コンポーネントの設定の話だから。
デザイナとプログラマの話し出てたけど、
デザイナがHTML以外を使う話は聞いた(経験した)ことない。
プログラマが、JSP直でいじっている以外は、
デザイナが作ったHTMLをプログラマが毎回
JSPに変換しているはずだよ。
ドリがJSPを理解できるなら別だけどな。
というわけで、JSFも糞だな。
ドリってなによって聞くなよ。

37 :
36に賛成!

38 :
ドリってなによ?

39 :
しかし、どうもプロジェクト乱立しすぎじゃないかと思う。
一つ一つは覚えれば、複雑でわからないといったことはないが、
Jakarta全体で将来、どうしたいのかが判りにくい。
特にVelocityとTapestry、微妙にかぶっているとこもありそうだし、
Jakartaは調整が必要な気がする。
個人的には勝ち残りフレームワークしか使いたくないし。

40 :
確かにCommonsなどを見るとXML関係が妙に乱立しているね。
けどオープンソースにそういう調整は要らないよ。
要るとしたら見た目だけの調整や、
どれがどのような用途に向いているのか、
どれがどれとどう違うのかをはっきりと明示するなり
用途に合わせたお勧めを紹介してもらうが吉。
商用アプリじゃないんだしオープンソースに勝ち残りなんて関係ないさ。
使われない技術が消えると言うこともまずないさ。
消えたとしても名前が変わったとか他の技術と融合する程度さ。
それに不満があるなら自分で改良すればいいさ。


41 :
とりあえず、英語のリソースを翻訳することから始めよう。

42 :
…と思って見に行ったら、いきなりTutoriaとDeveloper's Guideがout of dateだったよ。

43 :
>>35
●●●Velocityの例
<table>
#foreach( $mud in $mudsOnSpecial )
 <tr>
  <td>$mud</td>
 </tr>
#end
</table>
●●●Strutsの例
<table>
<tr jwcid="@Foreach" source="ognl:mudsOnSpecial" value="ognl:mud" element="tr">
<td><span jwcid="@Insert" value="ognl:mud">ほげほげ(仮)</span></td>
</tr>
</table>
VelocityとTapestryの違いわかりますか?
テンプレートファイルを直接ブラウザで見ると、Velocityではtableタグとtrタグの間に文字があるから
ロジックが目に見えるでしょう。
Tapestryの場合、trタグやspanタグの属性にロジックを埋め込めるから、
テンプレートの見た目と実行時の見た目がほぼまったく同じなのです。
画像貼り付けられないのが残念ですが、信じられないならお試しあれ。

44 :
Exciteで日本語に翻訳したやつなら作ったよ
直訳だとほとんど意味不明
StatelessとかStatefulが「州」になるのが特にイケテなかった
欲しかったらbase64で貼り付けるけど?

45 :
>>44
俺宛のコメント?
俺は要らないよ。英語読めるから…

46 :
>>20
> ●●●メイン●●●
> ○Tapestry本家
> http://jakarta.apache.org/tapestry/
をみるとJavaScriptを使ってメリットを力説しているみたいでワラタ
http://jakarta.apache.org/tapestry/quotes_frame.html
>「タペストリーは、JSF、支柱(struts)およびその他同種のもののようなフレームワーク
>からの鼻水を殺そうとして襲います」
>私が働く会社はカナダ研究協議会と研究計画を行いました。
>>また、私たちは、私たちが行っていた技術的な危険計画のための
>ウェブ・サービス、J2EEおよびデータ・ベース・システムを調査して
>数か月を過ごしました。それから、私たちは3つのものを学習しました:
>ウェブ・サービスは未熟でした。
この引用記事を見るとかなり宣伝しているみたいだね。
他のプロジェクトに比べると異様なほど宣伝が多いのはなぜだ?
Tapestryで商売でもやってるん?
HTMLやXMLに限定することからJava以外にもどんな言語にも使えるんだね。

47 :
宣伝?

48 :
PHPでも使えるとはいえServletコンテナ使用することが大前提なんだね。
Velocityとはそのあたりが異なり微妙だ。
なんでServletが必要なんだろう。
ドキュメントをまだよくよんでない、実際に使っていないのでまだよくわかんない。
簡潔な説明できたらよろ

49 :
>>48
TapestryはURL自体をフレームワークが管理する。
設計者・開発者は、<a>リンクが「どのページ」へ「どのパラメータ」を渡すかだけを指定し、
実行時にどんなURLやクエリパラメータになるかということは、ユーザーも開発者も詳しく知る必要がない。
具体的に言うと
●●●JSPの例
○テンプレート
<a href='<%=response.encodeURL("/login.jsp?username="+username+"&password="+password")%>'>login</a>
○実行時
<a href='/login.jsp?username=hogename&password=hogepass'>login</a>
●●●Tapestryの例
○テンプレート
<a href="Login.html" jwcid="@ExternalLink" page="Login" parameters="ognl:{username,password}">login</a>
○実行時
<a href="/app?service=external/Login&sp=hogename&sp=hogepass">login</a>
という風にテンプレートと実行時のURLの見た目が似ているのがJSP、
実行時のURLをまったく意識しなくていいのがTapestry。
この特徴はたとえばクエリーパラメータ名を1文字間違えて
<a href='/login.jsp?usermame=hogename&password=hogepass'>login</a>
としてしまうようなよくあるケアレスミスの発生を防ぎ、
URLを文字列の連結として扱うという本質的でない作業から開発者を開放する。
もちろんTapestry外部のサーブレット等を呼び出すために、
JSPと同様な方式でクエリーパラメータを1つずつ指定する方法もできないわけではない。

50 :
それではカスタムタグライブラリの立場が・・・・・

51 :
>デザイナとプログラマの話し出てたけど、
>デザイナがHTML以外を使う話は聞いた(経験した)ことない。
まだあるのか?そんな職場・・・
フレームワークどうこう言うより
開発現場のやり方がおかしい
そういう分野の最新技術は追い求めないのですか?

52 :
>>36
お前開発者なのか?
>三日あれば理解できるだろ。
3日ってなによ?3日も時間費やしてなんとも思わないの?

53 :
>>39
プロジェクト乱立は別にいいんだよ
ただよ、それを記事で取り上げる雑誌が悪いと思う
他にネタがないのだろうな多分。
でもって、それを読んだ読者が影響されてしまう。
最初の頃は良かったが、どの雑誌もJakarta取り上げるようになって
大して役に立たないものまで紹介する始末。


54 :
役に立つかたたないかは人による

55 :
>役に立つかたたないかは人による
その程度のもの偉そうに取り上げて欲しくないね

56 :
たとえばどんな?

57 :

他にTapestryのお勧め意見ください
>>31
>「Tapestryのいいところは、デザインとロジックの 分離がきれいにできているところじゃないかなぁ。 それぐらいだけどね。」
↑みたいにたいして説明できていない昨日今日使ってマンセーってのは参考にならん

58 :
>>57
へえー。
昨日、今日使ってどうなんて関係無いだろ。
別にTapestryまんせーでもないよ。
これまで、JSPとHTMLの変換で大変だったから、
こういうアプローチだとうまくいくのかと思っただけ。
>>51
現場でさ、JSP書くデザイナなんかいないって。
開発者が書いているのは別だよ。
イントラなら十分にありえる。
最新技術を使ってたら なんて
どういう技術よ。

59 :
>>57
Tapestryはテンプレートの中にデザイン用のダミーデータを入れられる。
特にTableタグで効果を発揮するが、
<table border>
<tr jwcid="$remove$">
<td>山田</td><td>太郎</td><td>yamada@tarou.net</td>
</tr>
<tr jwcid="@Foreach" source="ognl:userdata" value="ognl:user" element="tr">
<td><span jwcid="@Insert" value="ognl:user.lastname">名字(仮)</span></td>
<td><span jwcid="@Insert" value="ognl:user.firstname">名前(仮)</span></td>
<td><span jwcid="@Insert" value="ognl:user.mail">メール(仮)</span></td>
</tr>
</table>
実行時は$remove$で囲まれた
<tr jwcid="$remove$">
<td>山田</td><td>太郎</td><td>yamada@tarou.net</td>
</tr>
は出力されない。
また@Insertで囲まれたダミーデータ(名字、名前、メール)も出力されず、
ロジックのJAVAクラスであらかじめ用意された
user.lastname、user.firstname、user.mailの実データで上書きされる。
spanタグも消去される。
完全にデザイナーがプレビューに使用するためだけの機能が標準でついているところが違う。
もちろんJSPでも<%if(0){%>ダミーデータ<%}%>と記述すればダミーデータを入れられるのだが、
そんなことする人はいないという現実を見ましょう。

60 :
これまたエスケープシーケンスの取り扱いが
面倒なことになりそうや
$や@を直に入力して使えんじゃないか
わざわざ&を&とか>を>とか<を<とかに置き換えるみたいに
$や@もエンティティ参照で置き換えねばならんかい?

61 :
2chブラウザがかってに置き換えた?
&を &amp; 
>を &lt;
<を &gt;
とかにおきかえるってことで


62 :
>>60
その必要はなし!
$と@を使う予約ワードはjwcid属性の値のみだから、
jwcid="$remove$"とかjwcid="@ExternalLink"
という風に数もたかだか知れている。
他の場所に$とか@があったらそのまま文字として出力されるよ
ちなみにロジックで生成した文字列の中に&、>、<、が入っていて
それを@Insertで出力する場合は自動的にHTMLエンコードして
&amp;&lt;&gt;として出力されるのは
<bean:write>と同じです。

63 :
しかしどこかでエスケープを気にしなければならない部分があると思うのだが
どこなんだろう?

64 :
JSP vs. Velocity
http://www.jajakarta.org/velocity/velocity-1.3.1/docs-ja/casestudy1.html
XMLC vs. Velocity
http://www.jajakarta.org/velocity/velocity-1.3.1/docs-ja/casestudy2.html
こういう比較のTapestry版があったらよろ

65 :
age

66 :
>>58
>現場でさ、JSP書くデザイナなんかいないって。
誰もこんなことやれって言ってない。
頭使って仕事分けろ。って言ったんだ。
その答えが「デザイナがJSP書く」なら何も言わないけどよ。
おまえら、デザイナと完全に分業してるの?
話しもしないの?話するのウザイとか思っている職場ですか?

67 :
>>59
これはメリットだと思うのだけど、Struts Tilesのようにページをパーツごとに
分割している場合、ブラウザではちゃんと表示されないよね。
結局サーバを介して確認しなくちゃいけない。

68 :
age

69 :
>>67
それはむしろ当たり前なんだけど、それでもダミーデータでそれらしく
デザインするとか、もしくはダミーヘッダ・フッタと言うべき機能がある
<html>
<script>
function hoge(){}
</script>
<body>
not for content of Tile but only for Design
<span jwcid="$content$">
content of Tile
content of Tile
content of Tile
</span>
not for content of Tile but only for Design
</body>
</html>
上の例は実行時には$content$で囲まれた
content of Tile
content of Tile
content of Tile
しか出力されません。デザイン時には当然すべてのデータでデザインできます。

70 :
>>66
うちの会社はデザイナーいないよ。
外注先デザイン会社の営業の人とは話するけど、
デザイナーとは直接コンタクト取れないね。

71 :
Tapestry入門実践講座
1.はじめに
 サーバーサイドJavaにおける、サーブレット+JSPのコーディング自由度の高さに起因する数々の問題点から、オープンソースフレームワークを用いた開発手法への期待が高まっている。
その中で、現在日本で最も使用されていると思われるStrutsフレームワークを用いて、デザイン(ビュー)とロジックを分離することの利点に対しての理解も今や周知の状況と言えよう。
しかしながら、実際の開発現場、特にHTMLデザイナーとWEBプログラマーが完全に分業しているシステム会社でのWebアプリケーション開発、保守手順から考えると、
StrutsはJSPの根本的な欠点を克服できていない。
つまり、HTMLデザイナーが使用するメジャーなWYSIWYGのHTML編集ソフト(HomePageBuilder等)はスクリプトレット、拡張タグをほとんど解釈できず、
WEBプログラマーの地道な作業により、1つずつHTMLタグから拡張タグへと書き換えていることだろう(なんと単調でつまらない作業なことか!)
これは今後主流になる可能性が高いJSFもほぼ同じ欠点を持つ可能性が高い。(開発者の声を聞け!)
 この講座では、Strutsを用いたMVCスタイルの開発への期待と絶望を体験したWEBプログラマーに対して、海外で人気が高く、Struts対抗馬と言われつつあるTapestryフレームワークを紹介し、
このフレームワークを用いることによって、よりビジュアルに、デザインの自由度と再利用性、HTMLデザイナーとの完全分業スタイルへの手助けとなることを期待する。

72 :
Tapestryのソースを見ると、
CVSでヴァージョン管理するときに
$$記号でソースコード内にヴァージョン番号などをつけるのが難しくなると
思うのだが、
そういう場合はどうすれば言いのだろうか?
Tapestryで本番JSPに変換するときだけCVSの$Id$などをはずすように
チェックアウトせなあかん?


73 :
>>72
TapestryはJSPではないのでそもそも「変換」という作業は必要ないよ
実行時に見せたくないなら
<span jwcid="$remove$">$Revision$ $Date$</span>

<span jwcid="$remove$">$Id$</span>
とでも頭に入れるといいよ

74 :
しかあし、たとえばこんなことをやりたいときは?
ボタンタグにヴァージョン番号をつけるんだ。
<input jwcid="$Revision 1.2$">$Revision$ $Date$</span>
これも$をエンティティ参照で$を消す?

75 :
>>74
$Revision 1.2$というコンポーネントはないから、
この書き方自体意味が無く実行時エラーが出るよ
ボタンのテキストにRevision値を書きたいなら
<input type="button" value="$Revision 1.2$">

<button>$Revision 1.2$</button>
でいいんじゃない?
jwcidは存在するコンポーネント名の指定と$remove$、$content$にしか使わないよ

76 :
age

77 :
13 名前:デフォルトの名無しさん 投稿日:03/11/02 18:25
おまえらさ、どうでもいいけど雑誌とかそういうものに流されすぎるのはよくないぞ
53 名前:デフォルトの名無しさん 投稿日:03/11/06 16:20
他にネタがないのだろうな多分。

78 :
>>77
部分抜き出しで多数派工作なんて君はマスコミ?w

79 :
>>71
次はいつかな?

80 :
>>71
俺も早く見たい。入門講座

81 :
Tapestryはほかにもどんな用途に使えるんだろう。
すべてのVelocityの機能をTapestryだけで実現することも可能なんだろうか?
Velocityを使った、EclipseのSimteekプラグインのように
プログラミング時のソースコードテンプレートに使える用途はあるのか?

82 :
>>71
俺も期待してるよ!

83 :
>>81
simteecプラグインの間違いだった
http://simteec.aluepke.de/

84 :
>>71
今晩あたりかな?w

85 :
>>81
TapestryとVelocityはまったく別のものだよ。
Velocityはテンプレートエンジン
TapestryはWebアプリのフレームワーク

86 :
やはりWeb用にしか使えないのか?
いやまてよHTML上にかくということは、
XMLでも使えるということか?
ならば、かなり凄いことができる!?

87 :
>>86
XMLでも
Anyコンポーネント
Foreachコンポーネント
Conditionalコンポーネント
Choose When Otherwiseコンポーネント
を使えば
XSLTと同じようなことができるね

88 :
もまいら、もちつけ
まあ、ここで騒げば
簡単Struts
簡単Velocity
につづけて
簡単Tapestryが発刊されるだろう
それまで待っても遅くないよん

89 :
>>88
簡単Velocityはクソだったらしいな・・・。
まあVelocityの翻訳がクソだったのが問題なのだが。

90 :
>>88
>>89
簡単Velocity
へのリンク希望!

91 :
>>90
http://www.amazon.co.jp/exec/obidos/ASIN/4798005975/ref=sr_aps_b_15/250-3031014-3013008

92 :
>>89
いやだから、『簡単』Velocityなのです

93 :
TapestryとVelocityを比較するとTapestryの方がよく見えてきたぞ

94 :
>>93
例えばどういう点?

95 :
>>94
名前

96 :
ベム、ベラ、ベロシチィ! 
妖怪人間! ジャーン♪

97 :
>>96
今どきそんなの誰も知らないよ

98 :
今後比較予定だってー
www.spacewalker.tv/tapestry/comparison.html

99 :
>>1
先こされるぞ!早く次を書けよw

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
訃報: C 言語の開発者、デニス・リッチー氏が死去 (576)
C++/TemplateMetaProgramming (493)
初心者の作ったプログラムにありがちなこと (247)
Ruby で GUI するスレ (395)
VBプログラマ質問スレ(Ver.6.0 まで) part62 (313)
C++は難しすぎ 難易度:4 (419)
--log9.info------------------
Twitterでは言えないこと (331)
死 人 の M I X I  (212)
【mixiアプリ】英雄クロニクル16 (635)
【mixi】ソード×ソード 15本目【衰退する魔界】 (950)
【mixiアプリ】メタルサーガニューフロンティア311 (224)
shareケツ毛バーガーとな!?mixiのIDは10855147 ★400 (600)
【GREE】幻獣姫 パート16なのです (345)
裏ミク(ixim)に無条件で招待いたします (242)
【ヤバゲー】まきば生活 ひつじ村Part18 (267)
【GREE】プロ野球ドリームナイン質問スレ62 (586)
Ri、ixim(裏ミク)へ招待します (238)
【GREE】メジャーリーグオールスターズ3球目 (567)
mixiでデートまでの手順を教えて【R】 (275)
【GREE】ナイツオブクリスタル6 (464)
ミクうま (434)
SNS総合招待スレッド4 (501)
--log55.com------------------
あなたの文章真面目に酷評します!【1】
【不正ランキング操作問題】新・小説家になろう4848【相互評価クラスタ・複垢ポイント水増し】
クリエイティブ・ライティング講座【1】
【不正ランキング操作問題】新・小説家になろう4853【相互評価クラスタ・複垢ポイント水増し】
【放課後バトルフィールド】 弓弦イズル 163(ワッチョイ付き) 【IS】
【ダンジョン出会い】大森藤丿120【ダンまち】
【ハイスクールD×D】石踏一榮スレ66【SLASHDOG】
【問題児/ラストエンブリオ】竜ノ湖太郎/39【ミリオン・クラウン/ミリクラ】