[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 11/13 06:09 / Filesize : 191 KB / Number-of Response : 809
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Tapestryについて語ろうよ!



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に興味ある人レスよろしくね!

14 名前:デフォルトの名無しさん mailto:sage [03/11/02 18:50]
>>3
同意

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

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

16 名前:デフォルトの名無しさん [03/11/02 18:59]
Strutsにしても、Tapestryにしても、
拡張タグを使わせるフレームワークは個人的には嫌いだし、
何年か経つと単にお祭りで終わっている気がする。

プレゼンテーション層は、
HTMLタグ
jspタグ(あるいはJSTL)
だけで構成すべきだと思う。

もちろん、Beanを使用して、コントロールサーブレットで
構築するMVC手法は守るんだけど。



17 名前:デフォルトの名無しさん [03/11/02 19:13]
>>15
デザイン重視って言う意味がわからない
デザインなんて関係ないじゃん。
TapestryでできることはJavaScriptだってできる。

Tapestryがページ単位で選べるのだったらいいが
それは難しいだろう。


18 名前:15 [03/11/02 19:43]
>>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 名前:デフォルトの名無しさん [03/11/02 20:11]
>>18
ちょっとずれてしまうが
Webフォームとどうやって連携するの?
TapestryつかうとStrutsとか当然使えないと考えての質問です
共存は出来ないんでしょ?


20 名前:Ace [03/11/02 23:22]
Tapestryリンク

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


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




23 名前:デフォルトの名無しさん [03/11/03 19:23]
かなり期待してます。次はいつかな?

24 名前:デフォルトの名無しさん mailto:age [03/11/03 20:48]
Tapestryマンセー

25 名前:デフォルトの名無しさん mailto:sage [03/11/03 22:02]
まぁ、WebObjectsのWOFのパクリなわけだが、
WOは嫌いではないので期待してはいる。
いいんじゃないかい、これ。

26 名前:デフォルトの名無しさん mailto:sage [03/11/04 00:09]
>>22
出版するには期待しないけど、
ちゅうーかやるなよ。
Tapestryについてかたるのは、OK

27 名前:デフォルトの名無しさん [03/11/04 09:22]
早く本出せるようがんばれよ!期待してるぜ

28 名前:デフォルトの名無しさん [03/11/04 09:26]
ところでTapestryはサーバーサイドプログラミングの
「WEBプログラミング」板の方がいいんじゃないの?
pc2.2ch.net/php/
板違いモゲホゲ

29 名前:デフォルトの名無しさん [03/11/04 18:36]
で、Tapestryは本当にWeb限定なのか?

30 名前:デフォルトの名無しさん [03/11/04 19:41]
もう、いいだろ?
開発スピード落としてまで使うことはない。

素直にStrutsか.NET使った方が開発スピード速いよ。


31 名前:デフォルトの名無しさん mailto:sage [03/11/05 01:00]
>>30
開発スピードは変わらないと思われ。
変わると思うなら根拠を述べよ。

Tapestryのいいところは、デザインとロジックの
分離がきれいにできているところじゃないかなぁ。
それぐらいだけどね。

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

雑誌の記事の受け売りなのかは知らんがそんな現場あるのか?
もっと頭使って仕事分けてほしい。




33 名前:デフォルトの名無しさん mailto:sage [03/11/05 11:46]
>>32
ごめん、漏れその辺何も触ったことがないんだが、
ズブの初心者だと、Tapestryとそれ以外だとどっちがいい?
何となくTapestryは直感的にわかりやすそうな気がしたので
気になっていたんだけど、>>32を読んだら他の奴の方が
いいのかなという気がしてきた。

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




35 名前:デフォルトの名無しさん [03/11/05 12:53]
>>18
それみるとさ、
strutsでVelocityを使えばいいのでは?
と思うんですがどうですか?


36 名前:デフォルトの名無しさん mailto:sage [03/11/05 23:12]
>>32
なんだ。
技術を習得する噺家。
あんなもん、三日あれば理解できるだろ。
基本的なこと以外は、コンポーネントの設定の話だから。

デザイナとプログラマの話し出てたけど、
デザイナがHTML以外を使う話は聞いた(経験した)ことない。
プログラマが、JSP直でいじっている以外は、
デザイナが作ったHTMLをプログラマが毎回
JSPに変換しているはずだよ。

ドリがJSPを理解できるなら別だけどな。
というわけで、JSFも糞だな。

ドリってなによって聞くなよ。

37 名前:デフォルトの名無しさん mailto:age [03/11/06 00:27]
36に賛成!

38 名前:デフォルトの名無しさん mailto:sage [03/11/06 00:37]
ドリってなによ?

39 名前:デフォルトの名無しさん [03/11/06 00:43]
しかし、どうもプロジェクト乱立しすぎじゃないかと思う。
一つ一つは覚えれば、複雑でわからないといったことはないが、
Jakarta全体で将来、どうしたいのかが判りにくい。
特にVelocityとTapestry、微妙にかぶっているとこもありそうだし、
Jakartaは調整が必要な気がする。

個人的には勝ち残りフレームワークしか使いたくないし。


40 名前:デフォルトの名無しさん [03/11/06 00:55]
確かにCommonsなどを見るとXML関係が妙に乱立しているね。

けどオープンソースにそういう調整は要らないよ。
要るとしたら見た目だけの調整や、
どれがどのような用途に向いているのか、
どれがどれとどう違うのかをはっきりと明示するなり
用途に合わせたお勧めを紹介してもらうが吉。

商用アプリじゃないんだしオープンソースに勝ち残りなんて関係ないさ。
使われない技術が消えると言うこともまずないさ。
消えたとしても名前が変わったとか他の技術と融合する程度さ。
それに不満があるなら自分で改良すればいいさ。



41 名前:デフォルトの名無しさん mailto:sage [03/11/06 01:00]
とりあえず、英語のリソースを翻訳することから始めよう。

42 名前:デフォルトの名無しさん mailto:sage [03/11/06 01:11]
…と思って見に行ったら、いきなりTutoriaとDeveloper's Guideがout of dateだったよ。



43 名前:デフォルトの名無しさん [03/11/06 01:11]
>>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 名前:デフォルトの名無しさん [03/11/06 01:16]
Exciteで日本語に翻訳したやつなら作ったよ
直訳だとほとんど意味不明
StatelessとかStatefulが「州」になるのが特にイケテなかった
欲しかったらbase64で貼り付けるけど?

45 名前:41 mailto:sage [03/11/06 01:21]
>>44
俺宛のコメント?
俺は要らないよ。英語読めるから…

46 名前:デフォルトの名無しさん mailto:sage [03/11/06 01:38]
>>20
> ●●●メイン●●●
> ○Tapestry本家
> jakarta.apache.org/tapestry/
をみるとJavaScriptを使ってメリットを力説しているみたいでワラタ

jakarta.apache.org/tapestry/quotes_frame.html
>「タペストリーは、JSF、支柱(struts)およびその他同種のもののようなフレームワーク
>からの鼻水を殺そうとして襲います」
>私が働く会社はカナダ研究協議会と研究計画を行いました。
>>また、私たちは、私たちが行っていた技術的な危険計画のための
>ウェブ・サービス、J2EEおよびデータ・ベース・システムを調査して
>数か月を過ごしました。それから、私たちは3つのものを学習しました:
>ウェブ・サービスは未熟でした。

この引用記事を見るとかなり宣伝しているみたいだね。
他のプロジェクトに比べると異様なほど宣伝が多いのはなぜだ?
Tapestryで商売でもやってるん?

HTMLやXMLに限定することからJava以外にもどんな言語にも使えるんだね。

47 名前:デフォルトの名無しさん mailto:sage [03/11/06 02:09]
宣伝?

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

49 名前:デフォルトの名無しさん [03/11/06 11:25]
>>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 名前:デフォルトの名無しさん [03/11/06 12:46]
それではカスタムタグライブラリの立場が・・・・・


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

52 名前:デフォルトの名無しさん mailto:sage [03/11/06 16:12]
>>36
お前開発者なのか?
>三日あれば理解できるだろ。
3日ってなによ?3日も時間費やしてなんとも思わないの?



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



54 名前:デフォルトの名無しさん mailto:sage [03/11/06 16:45]
役に立つかたたないかは人による

55 名前:デフォルトの名無しさん mailto:sage [03/11/06 16:50]
>役に立つかたたないかは人による
その程度のもの偉そうに取り上げて欲しくないね

56 名前:デフォルトの名無しさん mailto:sage [03/11/06 17:24]
たとえばどんな?

57 名前:デフォルトの名無しさん mailto:sage [03/11/06 17:37]

他にTapestryのお勧め意見ください
>>31
>「Tapestryのいいところは、デザインとロジックの 分離がきれいにできているところじゃないかなぁ。 それぐらいだけどね。」

↑みたいにたいして説明できていない昨日今日使ってマンセーってのは参考にならん

58 名前:デフォルトの名無しさん mailto:sage [03/11/07 00:50]
>>57
へえー。
昨日、今日使ってどうなんて関係無いだろ。
別にTapestryまんせーでもないよ。
これまで、JSPとHTMLの変換で大変だったから、
こういうアプローチだとうまくいくのかと思っただけ。

>>51
現場でさ、JSP書くデザイナなんかいないって。
開発者が書いているのは別だよ。
イントラなら十分にありえる。

最新技術を使ってたら なんて
どういう技術よ。

59 名前:デフォルトの名無しさん [03/11/07 01:58]
>>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 名前:デフォルトの名無しさん [03/11/07 02:20]
これまたエスケープシーケンスの取り扱いが
面倒なことになりそうや
$や@を直に入力して使えんじゃないか
わざわざ&を&とか>を>とか<を<とかに置き換えるみたいに
$や@もエンティティ参照で置き換えねばならんかい?


61 名前:デフォルトの名無しさん mailto:sage [03/11/07 02:21]
2chブラウザがかってに置き換えた?
&を &amp; 
>を &lt;
<を &gt;
とかにおきかえるってことで



62 名前:デフォルトの名無しさん [03/11/07 02:30]
>>60
その必要はなし!
$と@を使う予約ワードはjwcid属性の値のみだから、
jwcid="$remove$"とかjwcid="@ExternalLink"
という風に数もたかだか知れている。
他の場所に$とか@があったらそのまま文字として出力されるよ

ちなみにロジックで生成した文字列の中に&、>、<、が入っていて
それを@Insertで出力する場合は自動的にHTMLエンコードして
&amp;&lt;&gt;として出力されるのは
<bean:write>と同じです。



63 名前:デフォルトの名無しさん mailto:sage [03/11/07 02:42]
しかしどこかでエスケープを気にしなければならない部分があると思うのだが
どこなんだろう?

64 名前:デフォルトの名無しさん [03/11/07 09:52]
JSP vs. Velocity
www.jajakarta.org/velocity/velocity-1.3.1/docs-ja/casestudy1.html
XMLC vs. Velocity
www.jajakarta.org/velocity/velocity-1.3.1/docs-ja/casestudy2.html

こういう比較のTapestry版があったらよろ

65 名前:デフォルトの名無しさん [03/11/07 14:08]
age

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


67 名前:デフォルトの名無しさん mailto:sage [03/11/07 20:07]
>>59
これはメリットだと思うのだけど、Struts Tilesのようにページをパーツごとに
分割している場合、ブラウザではちゃんと表示されないよね。
結局サーバを介して確認しなくちゃいけない。

68 名前:デフォルトの名無しさん [03/11/07 20:36]
age

69 名前:デフォルトの名無しさん [03/11/07 21:29]
>>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 名前:デフォルトの名無しさん [03/11/07 21:31]
>>66
うちの会社はデザイナーいないよ。
外注先デザイン会社の営業の人とは話するけど、
デザイナーとは直接コンタクト取れないね。

71 名前:Ace [03/11/08 01:30]
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 名前:デフォルトの名無しさん [03/11/08 02:16]
Tapestryのソースを見ると、
CVSでヴァージョン管理するときに
$$記号でソースコード内にヴァージョン番号などをつけるのが難しくなると
思うのだが、
そういう場合はどうすれば言いのだろうか?
Tapestryで本番JSPに変換するときだけCVSの$Id$などをはずすように
チェックアウトせなあかん?





73 名前:デフォルトの名無しさん [03/11/08 02:31]
>>72
TapestryはJSPではないのでそもそも「変換」という作業は必要ないよ
実行時に見せたくないなら
<span jwcid="$remove$">$Revision$ $Date$</span>

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

74 名前:デフォルトの名無しさん mailto:sage [03/11/08 03:54]
しかあし、たとえばこんなことをやりたいときは?
ボタンタグにヴァージョン番号をつけるんだ。

<input jwcid="$Revision 1.2$">$Revision$ $Date$</span>

これも$をエンティティ参照で$を消す?

75 名前:デフォルトの名無しさん [03/11/08 12:40]
>>74
$Revision 1.2$というコンポーネントはないから、
この書き方自体意味が無く実行時エラーが出るよ
ボタンのテキストにRevision値を書きたいなら
<input type="button" value="$Revision 1.2$">

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

76 名前:デフォルトの名無しさん [03/11/08 19:09]
age

77 名前:デフォルトの名無しさん mailto:sage [03/11/09 10:58]
13 名前:デフォルトの名無しさん 投稿日:03/11/02 18:25
おまえらさ、どうでもいいけど雑誌とかそういうものに流されすぎるのはよくないぞ

53 名前:デフォルトの名無しさん 投稿日:03/11/06 16:20
他にネタがないのだろうな多分。

78 名前:デフォルトの名無しさん [03/11/09 18:27]
>>77
部分抜き出しで多数派工作なんて君はマスコミ?w

79 名前:デフォルトの名無しさん [03/11/10 01:54]
>>71
次はいつかな?

80 名前:デフォルトの名無しさん [03/11/10 02:26]
>>71
俺も早く見たい。入門講座

81 名前:デフォルトの名無しさん [03/11/10 08:16]
Tapestryはほかにもどんな用途に使えるんだろう。
すべてのVelocityの機能をTapestryだけで実現することも可能なんだろうか?

Velocityを使った、EclipseのSimteekプラグインのように
プログラミング時のソースコードテンプレートに使える用途はあるのか?

82 名前:デフォルトの名無しさん [03/11/10 23:27]
>>71
俺も期待してるよ!



83 名前:デフォルトの名無しさん mailto:sage [03/11/11 01:58]
>>81
simteecプラグインの間違いだった
simteec.aluepke.de/

84 名前:デフォルトの名無しさん [03/11/11 20:30]
>>71
今晩あたりかな?w

85 名前:デフォルトの名無しさん [03/11/11 23:01]
>>81
TapestryとVelocityはまったく別のものだよ。

Velocityはテンプレートエンジン
TapestryはWebアプリのフレームワーク

86 名前:デフォルトの名無しさん [03/11/12 00:47]
やはりWeb用にしか使えないのか?

いやまてよHTML上にかくということは、

XMLでも使えるということか?

ならば、かなり凄いことができる!?

87 名前:デフォルトの名無しさん [03/11/12 17:37]
>>86
XMLでも
Anyコンポーネント
Foreachコンポーネント
Conditionalコンポーネント
Choose When Otherwiseコンポーネント
を使えば
XSLTと同じようなことができるね


88 名前:デフォルトの名無しさん [03/11/13 02:03]
もまいら、もちつけ

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

89 名前:デフォルトの名無しさん mailto:sage [03/11/14 02:27]
>>88
簡単Velocityはクソだったらしいな・・・。

まあVelocityの翻訳がクソだったのが問題なのだが。

90 名前:デフォルトの名無しさん [03/11/14 12:39]
>>88
>>89
簡単Velocity
へのリンク希望!

91 名前:デフォルトの名無しさん [03/11/14 21:27]
>>90
www.amazon.co.jp/exec/obidos/ASIN/4798005975/ref=sr_aps_b_15/250-3031014-3013008

92 名前:デフォルトの名無しさん [03/11/15 01:39]
>>89
いやだから、『簡単』Velocityなのです



93 名前:デフォルトの名無しさん [03/11/15 19:49]
TapestryとVelocityを比較するとTapestryの方がよく見えてきたぞ

94 名前:デフォルトの名無しさん mailto:sage [03/11/15 21:20]
>>93
例えばどういう点?

95 名前:デフォルトの名無しさん mailto:sage [03/11/15 21:34]
>>94
名前

96 名前:デフォルトの名無しさん [03/11/15 21:36]
ベム、ベラ、ベロシチィ! 
妖怪人間! ジャーン♪

97 名前:デフォルトの名無しさん [03/11/16 22:13]
>>96
今どきそんなの誰も知らないよ

98 名前:デフォルトの名無しさん [03/11/17 20:18]
今後比較予定だってー
www.spacewalker.tv/tapestry/comparison.html


99 名前:デフォルトの名無しさん [03/11/17 22:02]
>>1
先こされるぞ!早く次を書けよw

100 名前:デフォルトの名無しさん [03/11/18 09:15]
キリ番ゲット!

101 名前:デフォルトの名無しさん mailto:sage [03/11/18 12:08]
Tapestryとファンをダイレクトに結ぶ会員制オンラインファンクラブ「Tapestry club」。
ここでは、川畑・堂珍が積極的に参加して、いろんな企画をスタートさせていきます。

102 名前:デフォルトの名無しさん mailto:sage [03/11/18 17:35]
JAVA WORLDのサンプルのZIPは解凍しようとするとディレクトリ名が変だ?



103 名前:デフォルトの名無しさん [03/11/18 17:41]
>>102
ああ、やっぱり?
おれもディレクトリ名が
「ケミストリー」になる

104 名前:デフォルトの名無しさん mailto:sage [03/11/18 18:14]
appディレクトリの前にゴミディレクトリがあるみたいだし。
解凍してしまったこの変なディレクトリ消すのめんどくさ。

105 名前:102 mailto:sage [03/11/18 20:28]
サンプル動いた。(^^)

106 名前:Ace [03/11/19 16:22]
2.JSPの欠点
JSPにはさまざまな長所、短所が指摘されているが、Tapestryと比較することに焦点を絞った場合、以下の点が欠点として強調される。逆にこれらの事項の裏返しがTapestryにおいて長所と言える。
●JSPファイルにはさまざまな言語(HTML,JavaScript,スクリプトレット,ディレクティブ,拡張タグ)が同時に含まれ、デザイナーはHTML,Javascript以外、特に頻出するスクリプトレット、拡張タグを理解できない
●JSPのスクリプトレットの書き方に標準がなく、プログラマーの能力差、経験差が大きく現れる
●HTMLタグから拡張タグへの変更が機械的で単調な繰り返しが多い
●JAVAはオブジェクト指向だが、JSPにはオブジェクト指向を感じない、デザインの再利用性が低い

107 名前:デフォルトの名無しさん [03/11/20 17:31]
>>106
次は?もっと早いペースで頼むよ

108 名前:デフォルトの名無しさん mailto:sage [03/11/20 18:31]
WEBDB vol16見ながらやってるんだけど、
<input jwcid="@TextField" value="ognl:echo"/>
とか書いたら、
<input type="text" name="$TextField" value=""/>
に変換された。
これってjavascript使いたいときどうすんのさ。
name属性の値はテンプレの段階じゃわからん。
>>1は責任もって教えること。

109 名前:デフォルトの名無しさん [03/11/20 19:09]
>>108
<input type="text" jwcid="hoge@TextField" value="ognl:hoge"/>
とかすると、
<input type="text" name="hoge" value=""/>
になる。これ常識w
Form項目はすべて名前付けたほうが気持ち(・∀・)イイ!!
WEBDB vol16とかJAVA Worldの人は古いTapestry2.xの解説してるから、
Tapestryのサンプル見た方が早い場合もあるな
書くの面倒だけど、TapestryのJavaScript機能使えば別の解決法もある
それもTapestry付属のサンプル見るよろし

110 名前:デフォルトの名無しさん [03/11/20 23:49]
>>108
早く返事しろよ
  ∧_∧
( ´∀`)つゴルァ

111 名前:108 mailto:sage [03/11/21 09:38]
>>109
昨日初めてさわったんよ。もっと教えて。
"hoge"を使うようなjavascriptだと少なくとも
テンプレHTMLの段階ではエラーになるから都合悪いって話。

112 名前:デフォルトの名無しさん mailto:sage [03/11/21 09:52]
>>109
早く返事しろよ
    ∧_∧
( ´∀`)つゴルァ



113 名前:デフォルトの名無しさん [03/11/21 12:31]
おい、マキシシングル出たぞ
早く買えよ

114 名前:デフォルトの名無しさん [03/11/21 13:20]
>>111
<input type="text" jwcid="hoge@TextField" name="hoge" value="ognl:hoge"/>
とすると
<input type="text" name="hoge" name="hoge"/>
になるがJavaScriptは動くことは動く
別の書き方をするなら
<input type="text" jwcid="AAA@TextField" name="BBB" value="ognl:CCC"/>
とすると
<input type="text" name="AAA" name="BBB"/>
になる。
name属性がreserved parameterになってないTapestryのバグか仕様だな
気に入らないなら
Tapestryのソースのframeworkフォルダの
/org/apache/tapestry/form/TextField.jwc
を書き換えて、自前のプロジェクトにマイコンポーネントとして追加するべし






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<191KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef