Tapestryについて語ろうよ!

このエントリーをはてなブックマークに追加
1Ace
JakartaのTapestryフレームワーク使ってますか?
日本ではなかなか情報が手に入らず、本家のドキュメントも
古いバージョンのままなので、使いたいと思って挫折した人多くありませんか?

私はTapestry2.3あたりのころにTapestryの存在を知りました。
それまではStrutsでした。
デザイナーを内輪にかかえていない我が社では外注先から戻ってきた
HTMLからJSPへの変換および、再修正依頼が非常に困難でした。
○JSPへの変換ってつまらないよね!
○デザイナーがStrutsの拡張タグ理解できるわけないだろう!
○できたとしてどうやってデザインするの?
そんなあなたにはTapestryしかありません!
ぜひ日本でもこの2chを中心にTapestryの輪を広げて
Strutsにイカレテいる古臭いプログラマーたちを見返してやりましょうよ!

ちなみに私は携帯&PC向け有料サイトでTapestry使ってます。(^o^)v
登録ユーザ○十数万人、売上○千万円程度の規模です。
携帯は全機種対応確認済みです。
携帯のブラウザのバグ的なものに対応するために、
Tapestryのソースいくつか書き換えてるけどね(^_^;

Tapestryに興味ある人レスよろしくね!
2デフォルトの名無しさん:03/10/31 01:40
まずそれについて簡単な説明ヨロ!
期待してるぜ!
>>1
《The Jakarta Project》
http://pc2.2ch.net/test/read.cgi/tech/1019996589/
じゃあかんのか?
4デフォルトの名無しさん:03/10/31 02:46
Velocityとの併用はできまっか?
JBOSSとの併用、
Turbineとの併用、JSFとの併用もできまっか?
マルチポ (ry
6Ace:03/10/31 13:55
>>4
TapestryはTomcatから見ればただの1サーブレットなので、
他のサーブレット、フレームワークとの共存?(同じWEBアプリ内で使う意味)はもちろんできるよ!
ただTapestryはURLをフレームワークが生成するという概念なので、
Tapestryアプリ(ページ)からStrutsアプリ(ページ)へのリンク
特に動的パラメータつきのサーブレットを呼び出したりするのは、
知っていれば簡単だけど、ちと習得に時間がかかるかな。
逆(StrutsからTapestryへのリンク)は拡張タグlibがついているので簡単だよ!

ただしTapestryテンプレートの中にJSPのような<% %>は埋め込んでも無視されます!
7デフォルトの名無しさん:03/10/31 14:00
>JakartaのTapestryフレームワーク使ってますか?
>日本ではなかなか情報が手に入らず、本家のドキュメントも
>古いバージョンのままなので、使いたいと思って挫折した人多くありませんか?

こういう状況では使いたいと思っても「挫折」という感覚はないなぁ。
俺は explorer ではない単なるへたれなので、世にこなれてくるまで放っておく。
こなれてれば英語でも開発ストップしてても使う。
8Ace:03/10/31 23:38
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デフォルトの名無しさん:03/11/01 15:54
おいらも詳しく知りたいな。期待してるよ
リサの妖精伝説だな。
11デフォルトの名無しさん:03/11/01 18:36
>>8
Strutsは既存のHTMLを拡張タグに書き換える手法だから、
実行して初めてどのタグに変換されるか確認できるが、
Tapestryは既存のHTMLタグに存在しない属性にパラメータを渡すから、
実行しなくても容易に実行時のイメージがブラウザで確認できるという意味かな?
12デフォルトの名無しさん:03/11/02 18:06
Tapestryって日本で使ってるやついるの?
いいサイト教えてくれ!
13デフォルトの名無しさん:03/11/02 18:25
おまえらさ、どうでもいいけど雑誌とかそういうものに流されすぎるのはよくないぞ

いいか?これは、どのフレームワークにもいえることだが
Tapestryを使うためにアプリ作るわけじゃないだろう?
アプリ作るためにTapestryを選択するわけだ。
だけどよ、Tapestryを選択しないといけないようなアプリってどんなのよ?
スレ立てるほどの需要があるとは思わないが
>>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がページ単位で選べるのだったらいいが
それは難しいだろう。
1815: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とか当然使えないと考えての質問です
共存は出来ないんでしょ?
20Ace:03/11/02 23:22
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
21Ace: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.独自コンポーネントの作成
22Ace: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
かなり期待してます。次はいつかな?
Tapestryマンセー
まぁ、WebObjectsのWOFのパクリなわけだが、
WOは嫌いではないので期待してはいる。
いいんじゃないかい、これ。
>>22
出版するには期待しないけど、
ちゅうーかやるなよ。
Tapestryについてかたるのは、OK
27デフォルトの名無しさん:03/11/04 09:22
早く本出せるようがんばれよ!期待してるぜ
28デフォルトの名無しさん:03/11/04 09:26
ところでTapestryはサーバーサイドプログラミングの
「WEBプログラミング」板の方がいいんじゃないの?
http://pc2.2ch.net/php/
板違いモゲホゲ
29デフォルトの名無しさん:03/11/04 18:36
で、Tapestryは本当にWeb限定なのか?
30デフォルトの名無しさん:03/11/04 19:41
もう、いいだろ?
開発スピード落としてまで使うことはない。

素直にStrutsか.NET使った方が開発スピード速いよ。
>>30
開発スピードは変わらないと思われ。
変わると思うなら根拠を述べよ。

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

雑誌の記事の受け売りなのかは知らんがそんな現場あるのか?
もっと頭使って仕事分けてほしい。
>>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を使えばいいのでは?
と思うんですがどうですか?
>>32
なんだ。
技術を習得する噺家。
あんなもん、三日あれば理解できるだろ。
基本的なこと以外は、コンポーネントの設定の話だから。

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

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

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

個人的には勝ち残りフレームワークしか使いたくないし。
40デフォルトの名無しさん:03/11/06 00:55
確かにCommonsなどを見るとXML関係が妙に乱立しているね。

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

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

とりあえず、英語のリソースを翻訳することから始めよう。
…と思って見に行ったら、いきなり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で貼り付けるけど?
4541:03/11/06 01:21
>>44
俺宛のコメント?
俺は要らないよ。英語読めるから…
>>20
> ●●●メイン●●●
> ○Tapestry本家
> http://jakarta.apache.org/tapestry/
をみるとJavaScriptを使ってメリットを力説しているみたいでワラタ

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

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

HTMLやXMLに限定することからJava以外にもどんな言語にも使えるんだね。
宣伝?
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以外を使う話は聞いた(経験した)ことない。
まだあるのか?そんな職場・・・
フレームワークどうこう言うより
開発現場のやり方がおかしい
そういう分野の最新技術は追い求めないのですか?
>>36
お前開発者なのか?
>三日あれば理解できるだろ。
3日ってなによ?3日も時間費やしてなんとも思わないの?
>>39
プロジェクト乱立は別にいいんだよ
ただよ、それを記事で取り上げる雑誌が悪いと思う
他にネタがないのだろうな多分。
でもって、それを読んだ読者が影響されてしまう。
最初の頃は良かったが、どの雑誌もJakarta取り上げるようになって
大して役に立たないものまで紹介する始末。

役に立つかたたないかは人による
>役に立つかたたないかは人による
その程度のもの偉そうに取り上げて欲しくないね
たとえばどんな?

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

↑みたいにたいして説明できていない昨日今日使ってマンセーってのは参考にならん
>>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>[email protected]</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>[email protected]</td>
</tr>
は出力されない。

また@Insertで囲まれたダミーデータ(名字、名前、メール)も出力されず、
ロジックのJAVAクラスであらかじめ用意された
user.lastname、user.firstname、user.mailの実データで上書きされる。
spanタグも消去される。
完全にデザイナーがプレビューに使用するためだけの機能が標準でついているところが違う。

もちろんJSPでも<%if(0){%>ダミーデータ<%}%>と記述すればダミーデータを入れられるのだが、
そんなことする人はいないという現実を見ましょう。
60デフォルトの名無しさん:03/11/07 02:20
これまたエスケープシーケンスの取り扱いが
面倒なことになりそうや
$や@を直に入力して使えんじゃないか
わざわざ&を&とか>を>とか<を<とかに置き換えるみたいに
$や@もエンティティ参照で置き換えねばならんかい?
2chブラウザがかってに置き換えた?
&を &amp; 
>を &lt;
<を &gt;
とかにおきかえるってことで

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

ちなみにロジックで生成した文字列の中に&、>、<、が入っていて
それを@Insertで出力する場合は自動的にHTMLエンコードして
&amp;&lt;&gt;として出力されるのは
<bean:write>と同じです。
しかしどこかでエスケープを気にしなければならない部分があると思うのだが
どこなんだろう?
64デフォルトの名無しさん:03/11/07 09:52
65デフォルトの名無しさん:03/11/07 14:08
age
66デフォルトの名無しさん:03/11/07 14:11
>>58
>現場でさ、JSP書くデザイナなんかいないって。
誰もこんなことやれって言ってない。
頭使って仕事分けろ。って言ったんだ。
その答えが「デザイナがJSP書く」なら何も言わないけどよ。
おまえら、デザイナと完全に分業してるの?
話しもしないの?話するのウザイとか思っている職場ですか?
>>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
うちの会社はデザイナーいないよ。
外注先デザイン会社の営業の人とは話するけど、
デザイナーとは直接コンタクト取れないね。
71Ace: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>
とでも頭に入れるといいよ
しかあし、たとえばこんなことをやりたいときは?
ボタンタグにヴァージョン番号をつけるんだ。

<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
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
俺も期待してるよ!
>>81
simteecプラグインの間違いだった
http://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が発刊されるだろう
それまで待っても遅くないよん
>>88
簡単Velocityはクソだったらしいな・・・。

まあVelocityの翻訳がクソだったのが問題なのだが。
90デフォルトの名無しさん:03/11/14 12:39
>>88
>>89
簡単Velocity
へのリンク希望!
91デフォルトの名無しさん:03/11/14 21:27
92デフォルトの名無しさん:03/11/15 01:39
>>89
いやだから、『簡単』Velocityなのです
93デフォルトの名無しさん:03/11/15 19:49
TapestryとVelocityを比較するとTapestryの方がよく見えてきたぞ
>>93
例えばどういう点?
>>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
キリ番ゲット!
Tapestryとファンをダイレクトに結ぶ会員制オンラインファンクラブ「Tapestry club」。
ここでは、川畑・堂珍が積極的に参加して、いろんな企画をスタートさせていきます。
JAVA WORLDのサンプルのZIPは解凍しようとするとディレクトリ名が変だ?
103デフォルトの名無しさん:03/11/18 17:41
>>102
ああ、やっぱり?
おれもディレクトリ名が
「ケミストリー」になる
appディレクトリの前にゴミディレクトリがあるみたいだし。
解凍してしまったこの変なディレクトリ消すのめんどくさ。
105102:03/11/18 20:28
サンプル動いた。(^^)
106Ace: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
次は?もっと早いペースで頼むよ
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
早く返事しろよ
  ∧_∧
( ´∀`)つゴルァ
111108:03/11/21 09:38
>>109
昨日初めてさわったんよ。もっと教えて。
"hoge"を使うようなjavascriptだと少なくとも
テンプレHTMLの段階ではエラーになるから都合悪いって話。
>>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
を書き換えて、自前のプロジェクトにマイコンポーネントとして追加するべし
115デフォルトの名無しさん:03/11/21 13:21
>>111
早く返事しろよ
 ∧_∧
( ´∀`)つゴルァ
116デフォルトの名無しさん:03/11/21 13:24
>>115
もっとカツラがズレてないとダメだぞ

    ∧_∧
( ´∀`)つゴルァ
117デフォルトの名無しさん:03/11/21 13:25
みんな知ってるかい?Don't you know?
http://www.dorffweb.com/index.htm?page=taptutorial
に新しいTapestryチュートリアルが出たらしい
>>44 はこれを日本語化すること
 <input type="text" name="hoge" name="hoge"/>
なにこれ。ださっ
テンプレはPerlのHTML::Templateみたいなのがいいな。
ベロcityはイマイチだった。

>>1 は解説サイト立ち上げろ
             ∧_∧
( ´∀`)つゴルァ
>>117
あ、こりゃ嬉しいな。PDF読んでみよう。THX!
1.ボタンが押された際にクライアントサイドでの
 入力チェックをしたいのだが、実現可能?
2.同一のフォーム内に複数のボタンがあっても大丈夫だよね・・・?
121デフォルトの名無しさん:03/11/22 14:57
>>119
どういたしまして You are welcome!
122デフォルトの名無しさん:03/11/22 15:23
>>120
1.について
ValidFieldのvalidator属性に
DateValidator
EmailValidator
NumberValidator
StringValidator
のbeanに
<set-property name="clientScriptingEnabled" expression="true"/>
を入れるとクライアントサイドの入力チェックもしてくれます。
標準機能が気に入らないなら自前でコンポーネントを作りましょう。

2.について
Submitコンポーネントを使ってlistener属性に別のリスナーメソッドを関連付ければOK
<input type="submit" value="yes" jwcid="@Submit" listener="ognl:listeners.yesSubmit"/>
<input type="submit" value="no" jwcid="@Submit" listener="ognl:listeners.noSubmit"/>
この場合、Formのlistener属性は書く必要なし
123デフォルトの名無しさん:03/11/22 17:35
>>120
早く返事しろよ
      ∧_∧
( ´∀`)つゴルァ
124デフォルトの名無しさん:03/11/22 23:21
>>123
もっとカツラがズレてるぞ

 ∧_∧
( ´∀`)つゴルァ
携帯用のページみたいに
同じurlでキャリアによってテンプレートを変えるってこと
Tapestryで簡単にできますか?
126デフォルトの名無しさん:03/11/23 19:35
>>125
簡単で、やり方は3通りかそれ以上あるけど、同じurlにする理由ってあるの?
127デフォルトの名無しさん:03/11/23 19:37
>>126
↓「ズラズレモナー」わすれてるぞ!
      ∧_∧
( ´∀`)つゴルァ
>>126
深い意味はないです
毎回UserAgentを見て表示先を変えるのって
どうやるのが一番スマートかと思って
129デフォルトの名無しさん:03/11/24 12:47
>>126
やり方教えて!!
130デフォルトの名無しさん:03/11/24 23:16
        / ̄ ̄ ̄ ̄\
  ∧_∧  | でたぁ! |
 (;∀;∩)< 教えて性人! |
 (⊃   ) |          |
 人  ヽ´   \____/
 し'(__) 

131デフォルトの名無しさん:03/11/25 23:56
        / ̄ ̄ ̄ ̄\
  ∧_∧  | でたぁ!  |
 (;∀;∩)< 教えて性人! |
 (⊃   ) |          |
 人  ヽ´   \____/
 し'(__) 
132デフォルトの名無しさん:03/11/26 00:14
>>128
こんな感じで見ます

UserAgent   ←・・・・・・(・∀・ )
133デフォルトの名無しさん:03/11/26 21:31
>>130>>131

どんな時もズラせろよ↓

        / ̄ ̄ ̄ ̄\
∧_∧  | でたぁ!   |
 (;∀;∩)< 教えて性人! |
 (⊃   ) |          |
 人  ヽ´   \____/
 し'(__) 
134デフォルトの名無しさん:03/11/27 21:20
JavaWorld見たかい?
設定ファイルとサーブレットマッピング、パッケージ配置の
お作法がわからん。

■パッケージpageの下にページ設定のXMLやBasePage
 を継承したクラスをおいた場合は、web.xmlにpageという
 仮想パス名でApplicationServletを割り当てないと駄目なのですが?
■hoge.applicationファイルってWEBアプリに
 ひとつだけ配置することになるのですか?
■pagegroup1というパッケージの下に配置したページから
 pagegroup1というパッケージの下に配置したページへ
 画面遷移することは可能ですか?
136デフォルトの名無しさん:03/11/29 02:59
>>135
Tapestryのフォルダ構成の基本はこうだ。

/コンテキストルート
/WEB-INF
  web.xml
  hoge.application
  Home.html
  Home.page
  Home.properties
  /classes
    Home.class

●web.xml(全角スペース注意)
<?xml version="1.0"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
 <servlet>
  <servlet-name>hoge</servlet-name>
  <servlet-class>org.apache.tapestry.ApplicationServlet</servlet-class>
  <load-on-startup>0</load-on-startup>
 </servlet>
 <servlet-mapping>
  <servlet-name>hoge</servlet-name>
  <url-pattern>/app</url-pattern>
 </servlet-mapping>
</web-app>
137デフォルトの名無しさん:03/11/29 03:02
>>135
hoge.applicationとサーブレット名のhogeを同じにしておけばよいよ
ページクラスとページテンプレートの関係はページ使用ファイルの中に書くから
同じ名前である必要はない。もちろんパッケージ名はまったく関係がない

ページテンプレートはWEB-INFの下にフラットに置く方が、
デザイナーさんにファイルを送るときにまとまってて都合がよいよ
138135:03/11/29 21:44
>>137
なるほど。サンクス。
ボチボチサンプルアプリでも作ってみるかね。。
139デフォルトの名無しさん:03/11/30 02:05
>>98
http://www.spacewalker.tv/tapestry
消えてるんだけど(>_<)
どういうこと?責任取れ!
140デフォルトの名無しさん:03/11/30 09:34
俺達のTapestryは幻だったのか?
画面A - <submit> - submitActionメソッド - <処理OK> - <OK画面>
                          |-<処理NG> - <NG画面>

こんな処理を行ないたいのですが、参考になるサンプルなどを
教えてもらえませんか?
submitActionメソッドの中で遷移先のHTMLファイルを切り替えたいのです。
142141:03/11/30 18:59
自己レスすまそ。
requestCycle.activate("OkPage");
requestCycle.activate("NgPage");
で出来るな。
これからはヅラ直してから質問しまつ。
>>141
目を覚ませ
終わったんだよ・・・
144141:03/11/30 19:36
>>143
そっか、終わってたんか。
ww2の勉強に切り替えるかね。
145デフォルトの名無しさん:03/12/02 01:42
        / ̄ ̄ ̄ ̄\
∧_∧  | ほげらっちょ!   |
 (;∀;∩)< ほげらっちょ! |
 (⊃   ) |          |
 人  ヽ´   \____/
 し'(__) 
147デフォルトの名無しさん:03/12/04 11:32
Validationの使い方教えて!
なんかよくわからんが…
なんでわざわざsunの主流からはずれる方向を選ぶんだろ。

結局Tapestryだって、独自記述をデザイナーに理解させる必要が
あるわけだし、スクリプトレットを存在させないJSPと対して変わらんよ。
※ちなみに、初期時はともかくとして運用段階においてHTML以外を
 拒絶するデザイナー(だいたいバイト)なんて見たことない。

それに、純粋にプレゼンテーション層からビジネスロジックを
分離するのであれば、Velocityでのアプローチの方がまだましだよ。
ただ、主流じゃないからエンドユーザーへ提案しずらいのが、
そもそもの問題。
---
システムを買うのは、経営者であってデザイナーじゃないし、
経営者は知名度のある技術を好む。

どうしても分離したいのであれば、PHP+Smartyでいいじゃん。
今のところ、主流になっている組み合わせだし。
※それか、自分の趣味で遊ぶとかね。

と、ここまで書いておいて気付いたんだけど。
Tapestryの応援スレだったんだね。フレームワークスレだと思ってた…
水を差したのであれば、すいません。
気付いたならsubmitするなよ
150デフォルトの名無しさん:03/12/04 23:17
>>149
さんせいマンセー
折角書いたのを捨てるのもったいない気持ちも分かるw
それも貧乏性だろ>もったいない
153デフォルトの名無しさん:03/12/06 12:49
びんぼー(T_T)/
そもそもビンボーでなければ、オープンソースなんて使わないわけで。
>>136
その配置だとHTMLファイルを書き換えるたびに
WEBコンテナを再起動しないとだめじゃない?
156デフォルトの名無しさん:03/12/08 01:58
>>155
そうだけどそれが何か?
つづれおり、いいよね。
ユーガッタフレンド〜♪
159デフォルトの名無しさん:03/12/09 00:48
>>157
はぁ?
>157 キャロルキングだろ。たぶん
161デフォルトの名無しさん:03/12/12 00:25
age
162デフォルトの名無しさん:03/12/13 16:10
>>1
次はまだか?
163デフォルトの名無しさん:03/12/14 23:24
        / ̄ ̄ ̄ ̄\
∧_∧  | ほげらっちょ!   |
 (;∀;∩)< ほげらっちょ! |
 (⊃   ) |          |
 人  ヽ´   \____/
 し'(__) 
タペストリ
Tapestryってなんて読むの?
テープストーリー
167デフォルトの名無しさん:03/12/17 21:29
つまんねぇ
168デフォルトの名無しさん:03/12/20 03:07
>>1
次はまだかい?もう年越すぜ?
169デフォルトの名無しさん:03/12/27 00:54
age
170デフォルトの名無しさん:03/12/28 01:57
Tapestry のよさは、デザイン分離がクローズアップされがちだが、
もっとグレイトなのは、HTTPというプロトコル上ステートレスかつ
URL の連鎖で画面のコンテキストを追っかけるつくりになっちゃう
ところを、画面の構成コンポーネントのイベントハンドラで作り
こむ、まるで Swing みたいな設計をするところだと思うな。
その点、Struts とも Velocity とも比較するものではなく、JSF
と比較すべき存在だと思う。じゃなきゃ、Swing とかとの比較だ
な。まあ、クソスレの住人にはわからんだろうが。

このスレはめずらしく >>1 がまともかと思ったら、威張るだ
けで根性なしだったのがザンネンだ。マジにこの時期にTapestry
で成功事例もってるなら、金払っても話が聞きたかったものを。。
まわりもおだてて話させりゃいいものを、自分が理解もしていな
いのにヤヅでつぶしちまった。ほかに、Tapestry の読むに耐える
板はどっかにないもんかね?
171初期不良:03/12/28 03:04
>>170
激しく同意
WO 触っているせいでこの重要さは身にしみてる。
オープンソースでもこんなんできるようになったとは、
と感慨ひとしおですけど実はまだきちんと触ってないヘタレでつ...
172デフォルトの名無しさん:03/12/28 20:28
>> 171 どうもありがとう。

Tapestry も Spindle とかの IDE プラグインに可能性
の余地があって、たとえば今はハンドで書いている.page
や.jwcといったSpecificationXMLが、Dreamwaverみたい
なWYSWYGのHTMLエディタでテンプレート開いた上でダブ
ルクリックするとオートで書かれ、ページオブジェクト
のリスナーメソッドのガワが実装されるような動きをし
てくれば、まんまVBやDelphiだからね。WYSWYGなHTMLエ
ディタはすでにオープンソースでもあるし、.pageのXML
はIDEがオートで書けるレベルの内容にとどめている。
bindingの情報なんて、VBのFormファイルの中身みたい
なもんだし。JSFでもIDE充実したらそうなるだろうけど
ね。最近の両者をみていて、オイラはTapestry のほう
がJSFよりもテンプレートがHTMLということで手軽感が
あるし、力の入ったWEBデザインをするのに向いている
と感じているので、次の案件に使ってみたいと思ってる。
その点、すでに使ってるヤシの情報は漁ってるんだけ
どね。なかなか書いてくんないね。
わりい、172だが、読み直す前にぽちっと
いっちゃって、日本語がマンセーマンみ
たいに。要は、スタンドアローンなアプリ
をVBやDelphiで作るみたいな感覚で、デザ
インに力入ったHTMLが所与できちゃった案
件でもさくさくと作れる時が近いうちに実
現するんじゃないかと。Spindle 次第では。
174デフォルトの名無しさん:03/12/28 20:42

Kさん 好循環  Aさん 悪循環  
 (健康体)  (喘息)

1.(神が喘息であるかないかを決める)

2.K 喘息でない人 A 喘息の人は
は体力がある    体力がなくなる

3.K        A 行動力、
          五感(嗅覚)が鈍り感性が変化する

4.K&P 神は異常な感性の人間は本来人に迷惑をかけ
るから外に出てはいけないと思っている。

5.K 変化なし   A アトピーになる

6.K 正常な感性  A 外に出なくなりさらに異常な感性になる

7.K 正常な人間   A 異常な人間(レッテル)
175デフォルトの名無しさん:03/12/28 20:43
8.K&A 死

9.K&A      来世

10.K&A 神は異常な人間は人に迷惑をかけるので行動
を抑制する必要があると思っている。

11.K&A 神が喘息であるかないかを決める

12.K 喘息でない  A 喘息である

13.K&A    1.に戻る

これは事実。広めようぜ

解決法:体力をつけると感覚が正常に戻り、
    アトピーも快癒に向かう。
    目安としてグランドを10週くらい。
あとはウォーキング
    2.3時間を目安にウインドーショッピングや本屋めぐり

176デフォルトの名無しさん:03/12/30 17:37
おっ、Tapestry賛成派の意見が増えてきた
もうJAVA World出たよ>>1
177初期不良:03/12/30 21:21
ttp://www.geocities.co.jp/SiliconValley-SanJose/2565/tapestry/tapestry.html
spindle 使わない形のドキュメントだけどみっけた
178デフォルトの名無しさん:04/01/01 12:58
manning のアーリーアクセス+ペーパーバック後郵送の
サービスで「Tapestry in Action」買った!もちろん英
語だけど。結構いいこと書いてある。俺は買いだと思う。
>>178 はじめの2章読めるだけで、今買う価値があるの?
はじめ2章にどれだけ有用な情報があるのかレポートよろ。
海外掲示板用オフラインリーダーを作るスレ
http://pc2.2ch.net/test/read.cgi/tech/1072883528/

海外でよく使われていうる掲示板スクリプト
専用のオフラインリーダー作って下さい。

必要な条件はID、PASSを管理できること、
OpenJaneみたいな三面型の見た目。
簡単にローカライズできるように言語ファイルを採用
181デフォルトの名無しさん:04/01/06 23:32
>>178
URL希望
182デフォルトの名無しさん:04/01/08 20:47
age
183デフォルトの名無しさん:04/01/15 09:49
>>178
URL希望
185デフォルトの名無しさん:04/01/18 15:35
Tapestryホームページがリニューアル
http://jakarta.apache.org/tapestry/
Tapestry3.0beta4も出たぞ
>>178
書籍紹介サイト?
in Actionシリーズか。
いろいろシリーズがでているもんだな。
187デフォルトの名無しさん:04/01/24 02:22
age
188デフォルトの名無しさん:04/01/24 02:45
Tapestryのうまい使い方載ってるサイトない?

ソースコードサンプル付きで。


すでにStrutsで開発しているときにTapestryを導入するとしたら
どう対応すればいんだろう?



カスタムタグを使って作ったJSPファイルを
また修正しないといけないとか?
>> 188
VとCを作り直す対応だけでOKですよ〜
190デフォルトの名無しさん:04/01/24 16:49
>>188
StrutsからTapestryに移行するには、該当ページのJSPとActionを書き換えになる。
JSPの方はカスタムタグからTapestryの該当するコンポーネント指定に1対1で書き換え、
ActionはpageBeginRenderとformSubmitリスナとactivateExternalにメソッドを分割して
DBアクセスまわりのロジックはフルコピー可能。
ActionFormのresetはPageRenderListenerインタフェースを実装してpageBeginRenderにコピー可能。
ActionFormのvalidateはPageValidateListenerインターフェースを実装してpageValidateRenderにコピー可能。
return mapping.getInputForward();はreturn;にするだけ
return mapping.findForward("hoge");はcycle.activate("hoge");return;だけ
ほとんど1対1に変換可能だから、Struts→Tapestry変換ソフトも作成可能と思われる。
191デフォルトの名無しさん:04/01/24 20:48
>>188
ActionFormのプロパティは、ページクラスにabstractでget/set***を作成し、
ページ仕様ファイルにpropertyの名前と型を記述する
192デフォルトの名無しさん:04/01/28 05:40
>>190
へ〜
193デフォルトの名無しさん:04/01/29 10:29
>>193
ネタにしろってことですか?
195デフォルトの名無しさん:04/02/03 01:55
Tapestry3.0beta4ってどうやって使うの?
196デフォルトの名無しさん:04/02/08 12:45
>>195
おれもしりたい
197デフォルトの名無しさん:04/02/11 16:22
パペストリで、画面遷移とかってどういう仕組みになってるの?
いいサンプルかチュートリヤルある?
198デフォルトの名無しさん:04/02/12 22:40
>○Beginning Tapestry
>ttp://jakarta.apache.org/~hlship/Tapestry-ApacheCon.ppt

このパワポファイル、勝手に翻訳(駄訳)してみたんだけど、ほしいヤシいる?
一応、機械翻訳じゃないんで日本語になってるとは思われ(w
ただし意味不明な箇所も有り。

なんか、タペってStrutsよりも効率よさそう。
>>198
ノシ
200198:04/02/13 09:18
>>200
漏れももらった。さんきう。
>200
いただきました。ありがとう
203198:04/02/13 12:50
和訳がおかしいところも多いと思うので、
英語にオタッシャクラブなヤツがいましたら、改修オナ貝。
204199:04/02/13 18:57
ダウソロードできないよー
205198:04/02/13 19:11
消えちゃったかな?
他にどこかよさげなウプロダある?
駄訳をちょっとだけ修正したのを再ウプしたひ
>>205
Ja-Jakarta に送りつける!
208デフォルトの名無しさん:04/02/14 01:05
>>198
iriaで試したら落とせました。
ありがd
落とすには Web 割れなみのテクが必要です。
あっ、家にパワポないの忘れてた。。。
誰か PDF にしてくだっさいぃ。。。
211198:04/02/14 14:59
ちょい修正版、再ウプしますた。PDF版込みです。
ttp://marmotfarm.com/cgi-bin/upload2/source/up31226.zip
>>211
PDF ありがd! ますます Tapestry ファンになった。
Java野郎、気に入った。
213デフォルトの名無しさん:04/02/14 22:44
>>211
ダウンロードできないよ
215デフォルトの名無しさん:04/02/14 23:27
>>214
やっぱ、できないんだけど、うちのネットワークのせい?
216デフォルトの名無しさん:04/02/14 23:28
>>215
うpろだから消しただけだろ。
217198:04/02/17 10:23
うpろだから消えまくりですな。。。
とりあえずおまえら、技評から出版されてる「Jakartaプロジェクト徹底攻略2」で、
タペの特集やってますよ!これは買いでつ!
あと、併せてWEB+DB PRESSでは、O/RマッピングのHibernateも特集。
タペ+ハイバネで、楽チン開発・・・・かな?
個人的には、O/RマッピングフレームワークのCayenne(ttp://objectstyle.org/cayenne/)
も気になりマクリマクリスティですよ。

・DBMSのスキーマ情報のリバース
・リバース時にリレーションを自動解決
・DAO層のJavaクラスの自動生成

こんなんができるそうで。
スレ違いですな。。。このネタは、

Java⇔RDBのMapping-Frameworkを語るスレ
ttp://pc2.2ch.net/test/read.cgi/tech/1049030272/

向けでつね。。
218初期不良:04/02/17 13:55
>>217
スレ違いだけど WOLips 入れたら Cayenne 付いてきてた...
EOF 使うからたぶん使ってないとは思うんだけどね...
CayenneでもHibernateでも良いけれど、
WOのEOModeler + WOBuilderみたいに、ロジックとモデルの接続が
マウスグリグリで出来るようなプラグイン、でないかねぇ。
↑ここでのプラグインって、Eclipse用でつ。。
221デフォルトの名無しさん:04/02/17 21:06
age
222デフォルトの名無しさん:04/02/19 15:38
どうも今ひとつしっくりこない、書籍その他手に入れてみたがやり方が書籍やHPによって違っている。
マー複数種類のやり方があるんだろうが・・・。


どうしても理解できないのが
BaseComponentとBasePageをextendsすることの違いです。これは何が違うんでしょ?


223デフォルトの名無しさん:04/02/19 23:12
Tapestry って Struts の普及率を超えそうですか?
それとも Struts とは分野が違うものでしょうか?
TapestryとStrutsは、MVC分離によって各領域のコンフリクトを
防ぐという目的は、だいたい一緒だと思います。
ただ、アプローチが大きく違うんじゃないでしょうか。

Strutsの大きなメリットは、画面遷移周りをstruts-config.xmlという設定ファイルとして
独立させられるんで、遷移情報を一括管理できるってところ。
デメリットとしては、このファイルがでっかくなっていくってことでしょうか。
Struts1.1からは、SubApplicationという仕組みで、設定ファイルを分割できるようになりましたが。

Tapestryの大きなメリットは、テンプレート上の動的HTML生成の仕組みが
コンポーネント指向ってことでしょうか。デザイナとの連携がうまく考えられてます。
コンポーネントライブラリも必要十分だと思うので、海外なんかではStrutsからの移行組も
増えてるとか。
ただ、まだ日本語の情報はStrutsほど多くないですね。
225デフォルトの名無しさん:04/02/21 20:24
新しいTapestryのサイト発見
みんなカキコよろ!
http://www.wikiroom.com/Tapestry/
226デフォルトの名無しさん:04/02/21 21:27
Jakartaプロジェクト徹底攻略2の「Tapestry徹底入門」P71で、
-----
なお、アクセッサメソッドのうちsetXXXXX()メソッドの引数は、
どんなデータ型でもオブジェクト名(変数名)をvalueとしておかなくてはなりません。
-----
と、書いてあるんだけど、意味がわかりません。
引数の変数名に決まりがあるなんて、JAVAではありえないんだけど?
著者の沖林氏、この文の意味を解説もしくは修正してください。
それは「Javaでは」ってよりも、
タペ自身が動的にアクセッサメソッドを処理するための
ルールってことではないの?
>>226
リフレクション使えばありえんことは無い。
ってかリフレクションはフレームワークでは結構使われるでしょ。

で、Tapestry ではどうなのってのは知りまそん。
今日から試してみてるんだけど、
WOみたいにURLはSessionIDだけにならないのかな?

http://localhost/app?service=page/xxxx
だと、任意のページに自由にアクセスできてしまうよね?
Mevericは?
231デフォルトの名無しさん:04/02/23 19:10
>>229
自由にアクセスしてもらっちゃ困る全ページにvalidateかValidateListenerつけて
セッションかVisitを確認して、もし認識できなかったらログインページに
PageRedirectExceptionすればよろし。

AbstractPageをextendsしたAbstractAuthPageでも作ると楽できるっす
232229:04/02/23 19:33
>>231
なるほど、そういう工夫が必要なんだね。

WOを参考にしてるとはいえ、やっぱり結構違うな〜。
233デフォルトの名無しさん:04/02/27 03:16
>>198
最近このスレ知りました。
PDFも一回うpしてもらうことかのうでせうか。。?
>>233
漏れがパワポの駄訳&PDF変換してみたんだけど、
こんなクソ資料見るよりも、「Jakartaプロジェクト徹底攻略2」を買ったほうが
なんぼもマシ(w
235233:04/02/27 15:15
>>234
そうですか。「Jakartaプロジェクト徹底攻略2」は買いました。
あれだけだとなんか痒いところに手が届いてない感じがして。
今までずっとStrutsだったので乗り換え考え中です。
HTML テンプレートから Page クラスのアクセッサのコードを生成したり
できますか?
237デフォルトの名無しさん:04/03/05 05:30
>>236
出来ません!
ああ、キャロル=キングね。懐かしいなぁ。

You've gotta friendとか大好きだよ。
239デフォルトの名無しさん:04/03/06 16:57
You've gotta hivemind
JSFとどっちがすごいの?
Tapestry のほうがすごい。
これで満足か?
242デフォルトの名無しさん:04/03/08 21:02
Eclipse Plugin Spindle の Hello World
ttp://www.wikiroom.com/Tapestry/?HelloWorld
@ShowErrorって、Strutsでいう<html:errors />なんだろうけど
saveErrors() に対応する方法がよくワカラン。
とりあえずdelegateを定義して、delegate.record("エラーですよ", 〜) にしてるけど
公式ドキュメントすら作りかけだからなぁ。 workbench.warを分析しつつ悩む俺。
なんか *.page 書くの面倒だね。もうちょっと簡単にならないものだろうか。

ページ用のクラス内のメソッド名の接頭辞と、jwcid の接頭辞を関連付けて、
さらにコンポーネントタイプもその接頭辞で決め打ちしてしまって *.page の
コンポーネント宣言は必要なし、とかにならないかなあ。

使い始めてまだ間がないので、おかしなことを言ってたらすいません。
245初期不良:04/03/09 13:28
>>244
どういう事を望んでいるのかいまいち分からんけど
spindle 使ってもだめなん?
246244:04/03/09 14:34
まさに Spindle を使っているのですが…。.html とクラスを関連づけるもの
として .page を見たとき、なんか微妙に冗長な気がしたんですよね。

でも html にロジック記述がめちゃくちゃ減るので、これはこれでいいのか。
XML に慣れてないだけなのかな?

この仕様だと、Spindle でクラスを書いて、getter とか setter のメソッド
名を選択して .page に反映とか、 .page に存在しない name を使ったコンポー
ネントを書くと×印が出て、対応するクラスにメソッドを作ることができる、
とかすると嬉しいなあ、と。

(使いはじめて 5 時間でそんなことを言いだして…)
Eclipseプラグインでさ、
Tapestryのコンポーネントと、Hibernate側オブジェクトと、ビジネスロジック中のオブジェクトを
Drag&Dropでグリグリっとバインドできるようなものがあったら面白そうだなぁ。
フリーなWebObjectsって感じで。
>>246
> .page に存在しない name を使ったコンポー
> ネントを書くと×印が出て、対応するクラスにメソッドを作ることができる

X印だけは出るね。 存在しないクラスにもX印が出る。
Ctrl+Spaceで補完すると、ちゃんとjavadocみたいな説明が出るんで、だいぶ助けになってるな。
ただ、htmlとpage、pageとクラスみたいな連携が弱い。 コンポーネント、プロパティ、リスナーを定義して
こっちはabstract、こっちはこのロジック、これはVisitへ、とか付け替えできると嬉しいなぁ。
249デフォルトの名無しさん:04/03/10 15:31
WEB-DBのTapestry徹底入門を読んだ。
あの例題だけでは、submitで呼び出される
メソッドの中で遷移するページを指定する方法が
わからない。

誰か教えて。
public void formSubmit( IRequestCycle cycle ) {
  cycle.activate( "hogehoge" );
}
>>250
Thanks!

StrutsもTapestryも使ったことがないのだが、
雑誌を読んだ限りでは、Tapestryのほうが良い
感じがした。
252デフォルトの名無しさん:04/03/11 23:40
>>249
PageLinkの場合は>>250でいいけど、
ExternalLinkやDirectLinkのようにパラメータを渡したい場合はこういう方法もあるよ
NextPage page=(NextPage)cycle.getPage("NextPage");
page.setMail(getMail());
page.setTel(getTel());
cycle.activate(page);
page.formSubmit(cycle);
253デフォルトの名無しさん:04/03/15 13:29
Tapestry のRelease 版ってまだ出ていないのでしょうか?
MileStone 版だけ?
Validateってどうすんのよ
>>254
ValidFieldコンポーネントなどを使う。
でも、ちょっとめんどくさいな。
エラーメッセージをロケールによって変える方法が分かんねぇ。
>255
β版についてた、User'sGuideになんか載ってた気がする……>ローカライズに関して
自宅なもんで資料みつからねぇ。すまん。
257デフォルトの名無しさん:04/03/20 17:25
Joey ってどうよ。定義ファイルから pageクラス、ページ仕様、
ページテンプレート、DAO 自動生成。

ttp://joey.sourceforge.jp/features.htm

見る限りスゲーと思ったけど・・・
定型的な画面構成だったらいい楽そうだ。
>257
んーーー。
とりあえず、Tutrial印刷して読んで見るわ。
俺は、こういうの好きだけど。
259258:04/03/20 21:41
とりあえずチュートリアルは読んだ。
面白い取り組みだな。こういういたせりつくせりなのは日本人向けだと思う。
ただ、まぁまだ全然できてねぇじゃん?文書とか。サイトとか。
3ヵ月後を楽しみにしとくよ。
>>259
出来て間がなさそうだから、いろいろ方向転換しそうだね。
他色々ググってたんだけど、これタペと組み合わせどう?

ttp://seasar.sourceforge.jp/
ttp://lists.sourceforge.jp/mailman/archives/seasar-user/2004-March/thread.html

Seasar って前は AP 鯖だったけど Seasar2(S2) でコンテナに
なってタペと組み合わせやすいみたい。未完成だけど。
ML になぜかタペ好きが集まってきてる。
261254:04/03/20 22:11
>>255
レスさんくす。
例のJakarta本2にはValidateについて
書かれてなかったから気になってた。

あとは例外処理だけかな、気になるのは。

一応、どこかに書かれたHelloworldを試してみたけど
なかなか簡単に出来た。で、気になってきた。
あと S2 の作者は 2chネラーみたい。ML の中で
もまいら自由に書き込め とか。
S2のRC1でたね
264102:04/03/21 22:09
3.0-rc-1でてる
265258:04/03/21 22:22
Spindleもrc-1にあわせた内容(Ver3.041)になってるな。
updateサイトでいかんとVerUPできないが。
すまん、教えてくれ。
>249 みたいにsubmitで飛ばす時、外部にすっとばす(Yahoo!とか)場合はどうするんだろう?
267デフォルトの名無しさん:04/03/23 01:33
>>266
public void formSubmit(IRequestCycle cycle){
throw new RedirectException("http://www.yahoo.co.jp");
}
268デフォルトの名無しさん:04/03/23 09:09
すでにNECから同じコンセプトのデザインシンセサイザという製品が出ているが、特許とか大丈夫なの?
元ネタはApple (旧NeXT)なワケだが
WebObjectsが内包している、WebObjects Framework(WOF)に
触発されたって開発者自ら名言してるしね。
「テンプレ+対応ソースコード」
っていう構成はよくあるけど、
「テンプレ+対応ソースコード+オブジェクトとテンプレ内要素のマッピング」
っていうのは、柔軟で(・∀・)イイ!
でも、管理ツールが無いと、ファイルが増えてきたときに大変。
271デフォルトの名無しさん:04/03/25 01:17
age
272デフォルトの名無しさん:04/03/29 05:50
復旧おめでとう(・∀・)イイ
273 :04/03/29 20:01
Jakartaプロジェクト徹底攻略2の「Tapestry徹底入門」のサンプルが動かないよ・・・。
誌面の手順どおりに作成しているのに、404だ。

Tomcatのweb.xmlにも設定が必要なの?
274デフォルトの名無しさん:04/03/30 22:17
復旧おめでとう(・∀・)イイ
275273:04/03/31 00:11
ognlとjavaassistが無かったことが原因だった。
いつ、別パッケージになったの?

ていうか、Spindleの方は全部はいっとるやんけ!
保守age
3.0RC3出てるね
278デフォルトの名無しさん:04/04/13 08:19
>>275
Tapestry配布アーカイブ内のlib以下の全jarファイルをコンテナのクラスパス中に含めろって記事に書いてあったような。。。
そんなおいらは記事のEclipse開発のところを参考に
プロジェクトフォルダをTomcatのコンテキストとして登録してみましたが、
Degesterの例外でTomcat4.1がTomcatプラグインから起動できなくなりました。

まだ枯れてない技術、か。
279 :04/04/17 08:15
Tapestryと相性が良いO/Rマッピングフレームワークって、Hibernate? Cayenne?

Googleでのヒット件数はTapestry+Hibernateの方が多いけど、
WebObjects 的な作りが為されているのは Cayenne らしいし。
Cayenneは、自身にDBスキーマ構造をリバースしてくる機能があるみたいだからね。
WebObjectsってよりは、EOF的ってことなんだろうかね。
282デフォルトの名無しさん:04/04/19 22:19
未アナウンスですが。

3.0キタ━━━━(゚∀゚)━━━━ッ!!
既に幾つかの鯖に上がってるYO!!
Tapestryの場合







欲しいのは最新バージョンではなくてドキュメント類
ドキュメントさえそろえばstrutsより遙かにいいのに・・・
284デフォルトの名無しさん:04/04/20 00:46
あと知名度&実績モナー

開発者から支持されても、採用にはちっともつながらん

公式ドキュメントも新しいのは殆ど無くて、「ソース読め」 って感じだと
中々追いかける時間も取れないので、採用しようにも判断しようがない。
286初期不良:04/04/20 03:02
やっと触り始めたーよ。
何とか Tomcat プラグインと Spindle で
Eclipse から Tomcat を起動させて開発中のものを
動作させるところまできた。
Tomcat の設定で JVM オプションに
-Dorg.apache.tapestry.disable-caching=true
を追加して HTML のキャッシングもオフに。
Tomcat の再起動も少なくなって、これでガシガシ
テストできるかな?
287初期不良:04/04/20 03:14
あ、参考文献
ttp://www.wikiroom.com/Tapestry/?HelloWorld
ttp://www.saisse.jp/pukiwiki/pukiwiki.php?Tapestry

それと、Tapestry の jar ファイル配置の問題だけど
http://www.wikiroom.com/Tapestry/?HelloWorld#content_1_9
に書いてある
context/WEB-INF/lib
TOMCAT_HOME/shared/lib
のどちらかに置くという二つの方法があるらしいけど
どっちにしてます?
288デフォルトの名無しさん:04/04/20 04:48
shared/lib派です。(^o^)/
起動が早いよ
289デフォルトの名無しさん:04/04/20 04:51
というか日本語のTapestry,Spindle関係の情報って
Tapestryの最も簡単に使えて便利なRedirectFilterについて
まったく触れてないよね
web.xmlに書くだけなのになー
Spindleが標準対応するのを強く希望ですね
>>289
なんだか /hoge/app にトンじゃうあれのことね。

Google で全言語248件 / 日本語0件ってすごいな。
あと遅レスだが

>>226

特集記事の筆者が仕様を 思 い っ き り 誤 訳 してるだけの話らしい。

あとuploadの例で \n 出力するのは(あのケースだと)ちゃんと意味が有るのに、
あたかも意味が無いような注釈入れております。

>>291
やっぱそうだったのか >変数名をvalueにしておかなければならない

なんでリフレクションなのにローカル変数名まで限定できるんだ? と謎だったが。
293& ◆D3ra0B2LiQ :04/04/22 00:22
スピソjの話題もここでよいのか?
>293
いいともー。

TapestryのWikiにも同じ間違い書いてる奴いたなw>value
spindle プラグイン入れた状態で、
配下の web.xml にTapestryのApplicationServlet を複数指定すると
×印だされるんだけど、これって Tapestry のほうの仕様なのか、
spindle のほうのバグなんか、どっちなのでせうか?
296デフォルトの名無しさん:04/04/23 01:22
>>295
Spindleのバグではなくて、Spindleの仕様だよ
テンプレートのチェックするためにはサーブレット1つじゃないとめんどくさいのさ
https://betterpetshop.dev.java.net/
Tapestry, Spring, Hibernateで作り直したPetShopだそうな。
298295:04/04/24 07:30
>>296 サンクス。
>>297
そんなあなたに the National Hockey League

http://www.nhl.com/

Cayenne もあるでよ。
300& ◆LMRaV4nJQQ :04/05/04 22:40
さて、4/29にTapestry 3.1( & hiveMind)がスタートしたわけだが。
301デフォルトの名無しさん:04/05/06 03:17
Tapestryでは、StrutsのTilesみたいな機能はないのでしょうか?

Webサイトで共通のヘッダーやフッターも全てのHTMLテンプレートに書かなければ
いけないのでしょうか?
もうサーバサイドJavaは勘弁して欲しいよ
なんでこんな複雑なものが必要なんだ?
冷静に考えれ
馬鹿発見

難しくしならないようにフレームワークがある
そしてTapestryは結構よくできている用に見える

反面、まったくできてないのはドキュメント

個人で作ったツールは出来がよくてもドキュメントがないとか
そういうのはよくあるがそんなイメージに近い

単なる一ライブラリならともかくその上で動かそうってんだから
ドキュメント無いとお仕事にならないよ
本質が見えていないバカは303だ。
サーバサイドJava、俺も面倒だと思うよ・・・
全然スマートじゃない。
何がどう面倒なのよ?
自分の理解不足を、面倒という考え方に転嫁してるやつがいるな。
客観的に見て、Webアプリ組むのに、Javaが一番楽チンか?
EJBってカンタン&楽チン?
TapestryとかVelocityとかStrutsとか誰でも簡単にすぐ使える?
俺は人にも教えてるし、書籍の執筆や翻訳したり雑誌記事も書くが
そのたびに内心「あ〜面倒!」と思うよ
逆に、ちゃんと理解してないヤツが何となく「簡単そう」と
思いこんでるだけじゃないの?
やればやるほどマンドクセ
EJBが必要なレベルのWEBアプリってあんま無いと思うが

フレームワーク開発はプログラマの品質がピンキリなために
業務ロジックだけに集中させるという目的があるはず

分業考えるとstrutsよりTapestryとかのほうがいいとかそういうお話かと

ちょっとした動的コンテンツ程度ならPHPだろうがなんだろうがいいし
その程度なら豊富なライブラリもあるしjsp一本でいいだろう
ただある程度の規模になったとき困る
書籍の執筆で扱うサンプル程度の規模じゃ面倒になるだけなのは当たり前
>>301
http://dorffweb.com/?page=taptutorial
このチュートリアルの第7章のサンプル見ればわかる。


ってだけでもアレなんで。結論からいうと、

  ・ヘッダー/フッターを司るJWCを自分で作って、テンプレートから呼ぶ。
  ・そのJWCの中では、呼ばれたテンプレートの内容を丸ごと書き出す
   Tapestry謹製のJWC "RenderBody" を呼ぶ。

という方法です。

RenderBodyのもっと詳しい説明はコチラ↓
http://jakarta.apache.org/tapestry/doc/ComponentReference/RenderBody.html
×呼ばれたテンプレートの内容
○呼ばれたjwcidを持つタグの内容

スンマソン
311デフォルトの名無しさん:04/05/07 01:55
StrutsやTapestryを一ヶ月の超短納期prjで採用するのが
間違ってる。。。
>>311
ばりばり使いこなせるメンバーのみの少数精鋭ならいいけどね・・・
313初期不良:04/05/07 04:37
>>307
WebObjects とか初心者に使わせることを考えたらどうだ?
凝ったことをしなければ非常に簡単に、しかも従っていれば
基本的にきれいな方向に持っていってくれる。そんなフレームワークが
できるならがんばって作ってもいいじゃないか。

そんな WebObjects のフレームワークに一番近い感じの
Tapestry age
314301:04/05/07 09:03
>>309
なるほど。分かりやすい説明サンクスです。
>>311
メンバ全員が使うフレームワークを熟知してれば問題ないんでは。
見た事無いけど。
316デフォルトの名無しさん:04/05/07 21:20
>>315
Tapestryに限らないと思うけどフレームワーク熟知してる人間は少数で
いいのでわ?
んで、フレームワークとかわかんないけどJavaはかけるぐらいのPGに
ちゃんとした仕様書渡してビジネスロジックを実装させる(もちろん単体テストも)。
あとはフレームワークわかってる人間が組み込めと。
317301:04/05/07 21:56
教えてクンで申し訳ないのだけど、
HTMLテンプレートやpage specification等のファイルの配置ディレクトリを
カスタマイズするにはどうすればよいのでしょうか?

いくつかのサンプルアプリを見てみたのだけど、常にHTMLテンプレートファイルは
context直下のディレクトリに、それ以外はcontext/WEB-INFのディレクトリに
置かれてた。

それと、
複数の階層(ディレクトリ)を設けて、ページの内容に応じてHTMLテンプレート
ファイルを管理したいのだけど、そんなわがままは許されないのでしょうか?
ひとつのディレクトリにしか置けないと、規模が大きくなったときに管理が
不便じゃない? 複数人での制作だとファイル名がダブらないようにするだけでも
大変かも知れないし。
318デフォルトの名無しさん:04/05/08 00:52
なんでTapestryを使うの?

ってお客さんに問われたらどう答えますか?
JSP拡張で効率化できますよ〜
とでも逝っておけ
>>317
だな。
それは漏れも尻鯛w

イソアクショソ読めば、どっかに書いてありそうな希ガス。
>>318
開発工数を削減できます。とこたえます。


でも、本当にそれを実現できるには、開発メンバー全員が
Tapestryのことを或る程度まで知っていなければならない罠。
>>321
新しいものなんてだいたいそんなもんだ。
そこを乗り越えてなけりゃ未だにみんなアセンブラおんりーで50年前から進歩してないわけだし。

>>321
じゃあ削減分、値引いてね♪と言われる罠w
>>323
納期短縮をせまられたり。うぅ・・・
そうじゃない、そうじゃないんだ・・・。
新技術を使って前より少ない工数でできました(生産性向上)

じゃあ次は値引いて、
じゃあ次は機能増やすね、
、、、


人月の弊害だよなぁ。。。
生産性向上の利益がエンジニアに配分されない。。。
スレズレスマソ
>>307
そうなんだよ。激しく面倒。

>>308
勘弁してよ。全員が仕組み理解してないと生産性は上がんないよ。
だからできるだけシンプルに作るべきなんだ。だからEJBは絶対だめ。
自前で必要な分だけ作ったほうが絶対シンプルになる。

>>325
それは模前が選んだ組織の問題だ・・・
Javaのサーバサイド系の技術のほとんどは生産性は上がらないんだよ・・・
定期的に湧くアンチがいるな

フレームワークがなかったらあとで修正したりするの大変じゃないか?
みんな好き勝手にdoGetとかでガリガリ書いたりするのか?
開発者が1人2人くらいならともかく100人超える規模とかでそれやられたらたまらんな

初期の開発だけじゃなくて運用後の修正のコストなどもトータルで考えるべきだろう

もちろんEJBが必要な案件もあれば必要がないものだってあるさ
そのへんをかまわずにとにかくJ2EE技術すべて使わなければ損とか
いいつつ開発にコストかかりすぎてjavaダメだぁとかあほなやつがいるのも事実
小規模、短納期にJ2EEは使うなってことで
>>327
フレームワークはそのアプリケーションに合わせたものを作ればよいということ。
その方がスマートかつシンプル。

フレームワークが必要なのは、ウェブのリクエストを処理するところだけじゃなく、
コアな部分においてアプリケーション毎にいくつか出てくるでしょ。100人だろうが
1000人だろうが好き勝手やらないのは当たり前。

フレームワーク作らなきゃいけないところをサボって、どうでもいいフレームワーク
を使おうと一所懸命な感じがしてる。サーバサイドアプリケーションの作り方
ってのをもう一度ゼロベースから考え直してみたらどうだろうか。
もちろん俺の仕事はちゃんと規模にあわせて選択、自作してるさ

あほな連中がそういうことやらないで(というか新しいこと勉強してない連中は
フレームワークという単語を知らないらしい)みんなガリガリやるのに慣れているとか
そういうことらしい

まぁ、チームとか会社とか場所によって面白いほど考え方が様々で
そのへん整備されてないところに回されると大変だぞ、と

んでこのスレらしい話に戻すとwebはなんでもあわないのにstrutsそのままとか
そういう話もかなり多い(雑誌で単語を目にしたしったか上司が多い)ので
Tapestryもがんばって欲しいなと
>>329
最初にまず、すでにあるもので簡単にできるなら利用しないのは損、ってことだろ。
その上でいいものを探して、選択する。

ただ、通常、どのフレームワークでも、いろいろなケースに対応するために、
すごく複雑な設定まで出来るようになってる。
それを切り落として、自分が利用するケースで必要十分なところまで絞り込んで、
ここまで出来れば十分、というところまで絞り込めばいい、ということ。
本当に基本的なところだけなら、実はどのフレームワークも意外に簡単。
作るべきものも定型化しやすいものがおおい。

って、正直Tapestryが本当にいいかどうかはまだ分からないし、
Strutsにはだいぶ苦労させられた口だが。

まあ、そうは言っても、StrutsやTapestryなどのフレームワークを使わないのは損だ、
という認識に変わりはない。自分で作ろうと思うと、以外に大変な割りに、
結局どれかの既存のフレームワークに似たようなつくりになること多いし。

覚えるのが面倒だからという理由なら、ドキュメントが出るのをまってもいいし、
なんなら、コンサルでもいれなよ。一度、カタにはまった開発、ってのをやってみれば、
楽なのが分かる。面白いかどうかは別にしてね。
>>331
長いしわかりずらいよ、文章が
>>331
コンサルって奴は一般的に何をしてくれるものなんですか?
フレームワークの使い方を教えてくれるの?
>>321-325

あとは、『保守作業がえらく簡単になりますぜ旦那』くらいかな。
Strutsは、開発はJSPガリガリ君より簡単になったけど、
保守はむしろ煩雑化した記憶しかない。。。
>>334
でも「Tapestry知ってる人」をアサインするのが大変なような・・・
>>334
JavaScriptをスクリプトレットで制御するようなJSPを書かれる心配が無くなるぶん
Tapestryには導入メリットがありますね。
 
なんてな・・・
337301:04/05/12 04:35
317の件はやっぱり無理?
>>337
ドキュメントが少ない&
その少ないドキュメントを読みきった香具師が少ないので、

「可能か無理か判断する」のが無理な状態。
339デフォルトの名無しさん:04/05/12 12:59
>>333 少なくとも型にはまった開発、っていうのは見られるかな。
おまいらスピソjがRC1になりますたよ。

Redirect Filter も扱えるようになりましたよ。
341デフォルトの名無しさん:04/05/19 00:32
age
342デフォルトの名無しさん:04/05/19 07:22
>>338
同じ事悩んでるヤシがいたか。漏れもかなり探したよ。で、出来た。

WEB-INF/config/Home.page
/comp/ShowProducts.jwc
/contents/Home.html
/comp/ShowProducts.html
みたいなとき、

.applicationに、
<page name="Home" specification-path="config/Home.page"/>
とか
<component-type type="ShowProducts" specification-path="config/comp/ShowProducts.jwc"/>
みたいに書く。

.pageや.jwcには、
<context-asset name="$template" path="WEB-INF/contents/Home.html">
という風に書く。

さらに、templateのデフォルトのsearch pathも変えられるらしいが、
まだ、試してない。317やってみてくれ。
http://www.caddr.com/macho/archives/tapestry-users/2003-12/2948.html
343317:04/05/20 03:00
>>342
ナイス。時間ができたら試してみます。
344デフォルトの名無しさん:04/05/20 03:51
>>317
なんだよ、そっちかよ
標準Documentに乗ってるじゃねーか
TemplateSourceDelegateを使ってsearch pathを変更することを期待してるのかと思って
必死でサンプル作って試していたのがショック!!!(T_T)
>>344
既知のTipsだとしても、それを情報として知るのと、
自ら試してみるのとでは理解度がまったく違うと思うよ。
決して無駄骨ではないと思われ。
その心意気に、敢えてGJ!!
346342:04/05/21 16:05
>>344
それ、教えて欲しい。
サンプル公開きぼんぬ
>>344
オラも見てみたいズラ。
おれはどっちでもいーや
見せてもらえるものは見せてもらった方がいいわね、アータ。
350デフォルトの名無しさん:04/05/23 22:34
3.0リリースから、もう一ヶ月たつのに、一向に盛り上がってこないなあ。

やってるー? みんなー?
351デフォルトの名無しさん:04/05/23 22:41
つうかFlashMXにはまってるからもういいや
>>350
一応MLが立ち上がっているみたいだけど、
2週間でレス2通(ML開設者の挨拶等)、参加者13人、技術的な
質問0。既に廃墟だね…。

ttp://www.freeml.com/ctrl/html/MLInfoForm/[email protected]

所詮、ニッチなわけで
悪くないと思ったんだが、だめかなー。

Strutsより現実的でいいと思うんだがなー。
355デフォルトの名無しさん:04/05/24 00:22
>>352
場の空気の読めない人が2番目のTapestryのML立ち上げてんだよね
"leader19731221" <[email protected]>
YahooのTapestryのMLに
--------------------
FreeMLにてTapestry-Japan MLを開設しました。

以下のURLにて閲覧、投稿ができますので、是非とも参加下さい。
http://www.freeml.com/info/[email protected]
--------------------
何なのこの人?
356デフォルトの名無しさん:04/05/24 00:38
>>342
できたよ
決定事項
●テンプレート置き場:アプリケーションコンテキストの下の/sample/hoge/
●作成するDelegateクラス名:test.SampleTemplateSourceDelegate

手順
●1.TemplateSourceDelegateの登録
sample.applicationに
<extension name="org.apache.tapestry.template-source-delegate" class="test.SampleTemplateSourceDelegate"/>
を追加
●2.SampleTemplateSourceDelegate.javaにDefaultTemplateSourceのソースをコピー
 2.1 クラス名をDefaultTemplateSourceからSampleTemplateSourceDelegate書き換え
 2.2 インターフェースにITemplateSourceDelegateを追加
 2.3 LOGの引数を「DefaultTemplateSource.class」から「SampleTemplateSourceDelegate.class」に書き換え 2.4 以下のfindTemplateメソッドを追加
●3.テンプレートを書いておしまい
 /WEB-INF/Home.page
 /sample/hoge/Home.html
357デフォルトの名無しさん:04/05/24 00:38
public class SampleTemplateSourceDelegate implements ITemplateSourceDelegate,ITemplateSource {
    public static final String SAMPLETEMPLATEDIRECTORY="sample/hoge/";
    private IResourceLocation _sampleResourceLocation;
    public ComponentTemplate findTemplate(
        IRequestCycle cycle,
        IComponent component,
        Locale locale)
    {
        IResourceLocation location=component.getSpecification().getSpecificationLocation();
        String name = location.getName();
        int dotx = name.lastIndexOf('.');
        String templateBaseName = name.substring(0, dotx + 1) + getTemplateExtension(component);
        LOG.debug("component="+templateBaseName);
        
        if (_sampleResourceLocation == null){
            IResourceLocation _applicationRootLocation = Tapestry.getApplicationRootLocation(cycle);
            _sampleResourceLocation=_applicationRootLocation.getRelativeLocation(SAMPLETEMPLATEDIRECTORY);
        }
        
        IResourceLocation baseLocation =
            _sampleResourceLocation.getRelativeLocation(templateBaseName);
        IResourceLocation localizedLocation = baseLocation.getLocalization(locale);

        LOG.debug("location="+localizedLocation);
        if (localizedLocation == null)
            return null;
            
        return getOrParseTemplate(cycle, localizedLocation, component);
    }
-------------------------------
358デフォルトの名無しさん:04/05/24 00:38
public class SampleTemplateSourceDelegate implements ITemplateSourceDelegate,ITemplateSource {
    public static final String SAMPLETEMPLATEDIRECTORY="sample/hoge/";
    private IResourceLocation _sampleResourceLocation;
    public ComponentTemplate findTemplate(
        IRequestCycle cycle,
        IComponent component,
        Locale locale)
    {
        IResourceLocation location=component.getSpecification().getSpecificationLocation();
        String name = location.getName();
        int dotx = name.lastIndexOf('.');
        String templateBaseName = name.substring(0, dotx + 1) + getTemplateExtension(component);
        LOG.debug("component="+templateBaseName);
        
        if (_sampleResourceLocation == null){
            IResourceLocation _applicationRootLocation = Tapestry.getApplicationRootLocation(cycle);
            _sampleResourceLocation=_applicationRootLocation.getRelativeLocation(SAMPLETEMPLATEDIRECTORY);
        }
        
        IResourceLocation baseLocation =
            _sampleResourceLocation.getRelativeLocation(templateBaseName);
        IResourceLocation localizedLocation = baseLocation.getLocalization(locale);

        LOG.debug("location="+localizedLocation);
        if (localizedLocation == null)
            return null;
            
        return getOrParseTemplate(cycle, localizedLocation, component);
    }
-------------------------------
359デフォルトの名無しさん:04/05/24 00:40
このサンプルはコンポーネントのテンプレートにも使えるよ(^o^)v
/WEB-INF/Hoge.jwc
/sample/hoge/Hoge.html
360デフォルトの名無しさん:04/05/24 13:43
age
日本語ドキュメント整備されればとびつくけどな
362デフォルトの名無しさん:04/05/24 20:40
このスレも50毎に>>361の結論が出て、その繰り返しで1000行きそうだな。
>>354
Strutsから乗り換える教育投資に見合うメリットがあるのか?

おれは、ないと思うんだが。
乗り換えるんじゃなくて方向がまったく違う

でも結局>>361
>>363
乗り換えるなら、JSPから。
366342:04/05/25 05:15
>>356
おー、すげぇ。
明日にでも、さっそく試してみるよ。

しかし、こういうの書かなくてもサクサクっと設定出来ないと
普及は厳しいかなぁ、という気がしないでもないなぁ。
>>363
Strutsをメンバーの過半数が、機能をフルに使いこなせていたら、
意味は無いだろうね。

Strutsを使っているのになぜかJSPにスクリプトレットを
多用しているようなところだったら、まだ、ある。






でも結局>>361
今やってる仕事、strutsなんだけど、ご多分に漏れず、
struts-config.xmlが肥大化。
DynaActionBeanの設定とか、もういやすぎ。
例の分割管理とかそういう対策はアフォみたいだし。。。鬱。
タペットマペット使いたいYO!!
369デフォルトの名無しさん:04/05/25 10:11
オブジェクト指向の分散管理思想に真っ向から反するStrutsの設定ファイル。
フレームワークが滅びるには十分な理由だ。
370デフォルトの名無しさん:04/05/25 12:29
同じようなやり方で、ISpecificationResolverを実装する方法もあるよ
こちらの場合.page,.jwcと.htmlは同じフォルダに置ける
>>368
XDoclet使えば?
Strutsコンフィグファイルなんてほとんどさわらなくなった。
>>369
すでにXDocletのようなものもあるし、J2SE1.5からはメタデータという仕組みも組み込まれて同様のフレームワークの設定がやりやすくなるから、いまとなってはあまり問題ないね。
ListEditコンポーネント(とKistEditMapクラス)を使って、
Stale Link状態を事前に検出できるようになる仕組みが、

  Java Doc API を読んでも
  Component Reference を読んでも
  Tapestry In Action を読んでも

なぜだかサパーリわからません。
そんな俺はおhる?
374デフォルトの名無しさん:04/05/26 21:15
age
作者が「テスト助けてくれ〜」と悲鳴ageてるわけだが。
名前は結構好きだな。
378デフォルトの名無しさん:04/05/29 08:34
>>377
企業での開発経験がない、学生だとあんなもんだろ。

わたしの現場では派遣先が開発した独自フレームワークしか流行っていない
作るのいいけどさ、もっとマシなの作ってよ
なんかソース見てると一部のクラスは「ほ〜」という感じでかなりレベル高いのに
のこりのほとんどのクラスは「ヘンなやり方〜」ってかんじ
内緒でインナークラス使って自分達のわかりやすいやり方(てか普通のJavaのやり方)に変えてます

Tapestry
383デフォルトの名無しさん:04/05/29 10:05
Tagestry
T
Tanasinn
tapestory
387デフォルトの名無しさん:04/05/29 13:37
>>377

ナイスだなー
だいたい、高度なアプリケーションにデザイナーがDreamweaver使いたいからという
だらけた理由でプログラマが苦労すること無いんだよ
ページのデザインくらいプログラマだってできるだろ

よって、Tapestryは存在価値なし
>>387
ページのデザインってデザイナが(ユーザーの要望により)ちょくちょく変えるもんだから
そのたびにhtmlいじったりjsp化は非現実的

struts使うのならたとえばJBuilderについてるstrutsコンバータとか使わないと大変

現場知らないお子さまはカエレ
Spindleってそんなにええのんか?

しかし、ブツを落とさないと稼動前提条件とかインストールの仕方がわからんのは
致命的。はやらす気はなさそう。
>>387
Dreamweaverの生産性は異常
だらけた理由とかいって、おまえ、
あ、ごめん、DQNデザイナーを起用してる、DQNプロジェクトの話でしたかpgr
ただいま、>>387は顔を真っ赤にしてDreamweaverの体験版を落としております
>>390
単なるHTMLエディタだろ?
何がそんなにいいのん?
>>392

387?

まずは体験版おとしてやってみろ
Tomcat連携機能とか検証機能とかスタイルシートまわりとかいろいろありすぎてな
>>392
カスタムタグなんかにも対応してたりもする
>>394
それじゃ、Tapestryいらないじゃん。
>>395
実際にやってみろ
カスタムタグはあくまでも解釈されない程度だ
Dreamweaverが効果的なのはデザインが重要なウェブサイトだろ?
そんなところにそもそもJavaが絡む余地ないだろ。
ページのデザインってデザイナーが必要なほど、難しいもんじゃないし

Dreamweaverの何が生産性高いのかさっぱりわからん
>>397
普通のWebサイトでもJava使うだろ。
>>398
短期の仕事でデザインとプログラムなんて両方やってられるわけがないだろうに
web方面で短気じゃない仕事なんて聞いたこと無いぞ

あとデザイン能力というかセンスは人それぞれ
htmlをプログラマのほうが熟知していてデザイナはあんまりよくしらない
という状況は多いが、それでも成り立つのはタグが綺麗かどうかとか
htmlの知識とかそんなところじゃないしな

しかし現場知らないお子さまの反DreamWeaver厨は気楽でいいよな
401デフォルトの名無しさん:04/05/31 10:33
というか単純に「Java」と聞いて
サーブレットじゃなくてアプレットを思い浮かべているだけの
厨が紛れ込んでる希ガス。
>>400
短期過ぎるから両方やらざるを得ないのでは
>>401
いや、DW使いのやつらは、JavaScriptをJavaと呼ぶケースがほとんど。
"Java"が実際どのようなものか、まったく理解してないケースも多い。
デザインが必要か必要じゃないかに、短期か短期じゃないかなんて関係ないのにね。
> Dreamweaverが効果的なのはデザインが重要なウェブサイトだろ?
> そんなところにそもそもJavaが絡む余地ないだろ。
デザインが重要なWebサイトにどうしてJavaが絡む余地がないと思えるのか
不思議で仕方がない。
デザインが重要かどうかとJavaを使うか使わないかの関連性が全く見えない。
デザインが必要か必要じゃないかと、短期か短期じゃないかと、Javaを使うか使わないかなんて関係ないのにね。
こことかは、結構凝ったデザインになってるし。
ttp://www.junkudo.co.jp/
タペのスレですよー。
話題はJavaの話になってるし。
とりあえず、デザイン要素が生じる動的サイト制作には、
生JSPよりもStrutsよりもタペが剥いてると思う。
特に、デザイナーとのコラボが必要な場合。

また、デザイナは特に割り当てられていなくとも、
Webのインタフェースの完成に近い形がプレビューできるというメリットと、
Webインタフェースをコンポーネント指向で作成できるという点でも
タペにメリットあると思われ。

あとは、日本では猫も杓子もStrutsという流れの中で、いかにして
タペの流れを作っていけるかってところだよね。日本語ドキュメント含めてさ。
別に英語ドキュメントだけでもいいけど、それだとやっぱりとっつきにくいんだろうな。。。

たぶん、Tapestry + Cayenne(Hibernate) + Springあたりが、フリーでは最強なんだろうな。
有償製品ではWebObjectsってのが対抗馬だろうね。
結局Strutsにしても、JSFまでの時間つぶしだしなぁ。
俺struts使ってんだが、タペについて教えてくれ。

1)HTMLのデザインとJavaの開発を切り離してできるって以外にStrutsじゃなくてタペを使うメリットって何かある?

2)Hibernate以外のマッピングツールも使えるの?

3)これから主流になるかもしれないJSFやJSTLとかとタペの関係ってのはどうなの?
1)
(イソアクショソの受け売りだが)
・WYSIWYGプレビューを保持したまま動的コンテンツを開発できる。
・JSPコンパイル時間不要

2)むしろCayenneとの相性が良い。

3)すまん知らない_| ̄|○
タペもStrutsもあるオプソココミュが作ったフレームワークに過ぎん。
JSFやJSTLは標準仕様だからな。
そもそもの位置づけからして違う
標準仕様で実装もあるのに、使われる気配のないJDO
JDOはウンコ。
417412:04/06/01 21:20
>>413
WYSIWYGプレビューってのが不要ならあんまりメリットないのかな。
GUIで開発できるってのなら別だろうけど。

>>414
だからタペでもJSFやJSTLは取り入れる方向に行くのかなと思ってね。
JSFはまだこれからだけど、JSTLはタペでは使えません。これから先もってのならちょっとね。
418デフォルトの名無しさん:04/06/02 02:59
TapestryのいいところはHTMLとオブジェクトの世界を見事に接続しているところで、
デザインとロジックの分離はその副産物だと思ってます。
(大きなアドバンテージだとは思いますが)

逆にStrutsがダメなのはHTMLの煩雑さをそのままサーバ側に持ち込んで、
さらにコードで書いたほうが速そうなことをわざわざ設定ファイル記述して...
結局一番助けて欲しいところを助けてくれてない。
何のためのフレームワークなのかよくわからないところです。

フレームワークと言うものを世に知らしめた時点でStrutsの役割は終わったと思ってます。

JSFはSunがEclipseに合流するのをあきらめた時点でダメですね。
SunはGUI作るのが下手なんで。
>>418
> さらにコードで書いたほうが速そうなことをわざわざ設定ファイル記述して...

XDoclet使えば?
たしかにstruts-config.xmlの生成はxdocletに任せてだいぶ楽になった。
あれいちいち手書きしてたときは間違い多くてまいったよ
Tapestryもstrutsみたいに実行時エラーがウザイので
設定ファイルのチェックは必須かな。自分はAntを使用。

<!-- DTDレベルで設定ファイルをチェック -->
<target name="checkconf">
 <xmlvalidate>
  <fileset dir=".">
   <include name="**/*.application" />
   <include name="**/*.page" />
   <include name="**/*.jwc" />
  </fileset>
 </xmlvalidate>
</target>

これ+自作のXML内クラス名チェッカーでXMLファイル内の
クラス名を検証して実行時前に徹底的に誤りを検出してまつ。
jwcidを簡単に入れられる。WebObjectsみたいなGUIがあったらどうですか?
ドラッグ&ドロップで名前を付けることができるツールが
dream weaverのプラグインでついたりすればいいのになぁ。
結局id付けなきゃいけないような気がしてます。
もうidとか付けるのVBライクなコピー&ペーストから卒業しようよ。
とかいてみるテスト
>>420
他にコードで書いたほうが速そうなことをわざわざ設定ファイル記述してるの?
<html:message>のこと?

>逆にStrutsがダメなのはHTMLの煩雑さをそのままサーバ側に持ち込んで、

ごめん。意味分からん。もうちょっと具体的に教えて。
それに対してタペのアプローチ方法も教えて。
> JSFはSunがEclipseに合流するのをあきらめた時点でダメですね。
> SunはGUI作るのが下手なんで。

JSFはSunだけのものではないんだが。
IBMの方が先に製品版出したしな。


そして忘れられてるタペ
もともと存在を認識されていなタペ
427デフォルトの名無しさん:04/06/03 01:16
ところで、barracudaと比較したヤシはおらんのか?
しばらく意味がわからんかった。
写真集について語るか。
Tapestry in Actionの一部がPDFで公開されているね。

ttp://today.java.net/today/2004/05/13/Tapestry.pdf
>>430
2章と5章でしょ。
マニング社のサイトでも公開されてるよ
432デフォルトの名無しさん:04/06/06 19:07
age
433デフォルトの名無しさん:04/06/08 21:43
agege
434デフォルトの名無しさん:04/06/08 23:02
すみません、SPRING板でも同じ質問をさせていただいたのですが、
どなたか、SUN APP サーバー8とWEBWORKを上手に
使う方法御存じないでしょうか。GRANTの設定を少々変更することは
マニュアルにありますが、
私、APPサーバー付属のDEPLOYTOOLをANTの替りにしたいのです。
CMPーEJBとWEBWORKで開発が上手にできたらと、考えております。

御存じの方がいらっしゃいましたら、どうぞよろしくおねがいします。 かしこ。
いつの間にSprint板ができたんだろう・・・
(ノ∀`)アチャー
こんなマイナーな技術で板ができるなら、Strutsなんて、ひとつのカテゴリですよ、と。
438デフォルトの名無しさん:04/06/11 22:11
age
439デフォルトの名無しさん:04/06/13 19:06
Spindle 3.0 Final ってのがリリースされてるぽいんだけど。


興味ない?
スピンドルってなんだっけ?
CD重ねるやつ?
442名無しさん:04/06/16 15:24
>>440
マジレスしていいのやら....
Eclipse 用の Tapestry プラグイン。
http://spindle.sourceforge.net/
>>442
Sunクス
444デフォルトの名無しさん:04/06/19 14:11
age
445デフォルトの名無しさん:04/06/19 21:23
>>377
ダウンロードできねえぞ。
消えやがった。きになってしまうじゃねえか
>>445
PGが楽できないフレームワークは流行らない、らしい。
447デフォルトの名無しさん:04/06/20 00:06
PGはフレームワークの選定なんてやらないが・・・。
そういう意味ではなくて?
まあそこはそれ、学生さんの言うことだから・・
449デフォルトの名無しさん:04/06/20 18:38
やっぱり、いまいちこないのかなあ・・・。

そもそも、HTMLとして編集して、JSPとして動作させられるって言っても、
CSSのリンクとか、JSファイルのリンクとか、どうするんだろう?
ローカルで検証するときは、そのままダブルクリックして開いたファイルが見れる、
というなら便利だとは思うが、リンクは全て相対パスで書かないといけない、ということになるのか。
まあ、AタグやSubmit先が見れない、というのは仕方ないにしても、
どれほどいい感じに作成したHTMLを見れるか、というのはまず、重要だな。

それに加えて、JWCの使い勝手はどうなんだろう?
機能のカスタマイズとか簡単にできるんだろうか?
プログラマの問題だと思うよ。
JSPでもメンテナンス性の高いコードは書けるし、そうするのが現実的。

Tapestryはね、あまりに複雑で、もうそんなお遊びにはつきあってられん。
みんなシンプルなフレームワーク自作して満足してるんじゃない?

そういう俺もstrutsをさらにシンプルにしてさらにデザイナが嫌う埋め込みjspではなく
Velocityのようなテンプレートのようなものを組み込んでる
>>450
>Tapestryはね、あまりに複雑で、もうそんなお遊びにはつきあってられん。
複雑ってゆーか訳わからんことだらけなんだが。

例えば設定ファイルに関して
 ・*.applicationファイルの有無、配置場所、読み込まれるタイミング、ファイル名とアプリケーション名の関係。
 ・*.pageファイル、*.htmlの関係、配置場所。Homeという特別な意味を持つファイル名。
 ・*.jwcファイルって何をするもの?

技術雑誌で紹介されていて手を出してみたものの、導入記事毎にTapestryのバージョンやファイル構成がことごとく
異なり、さらにworkbenchを参照しても導入記事とファイル構成が異なるためパニックになり、英語のチュートリアルを
頑張って参照しても、コードとファイル名があるだけで、そのコードとファイルをどこに配置してよいのか
途方にくれ、3.0の正式版がやっとリリースしたと思ったら各種jarファイル(javassist.jar ognl-2.6.3.jar)を
かき集めなければならなかったり、workbench.warをビルドするのに手間どったりと、なかなか楽しませていただきました。


・・・・・・つーか、俺がヘタレなだけか。_| ̄|○
453デフォルトの名無しさん:04/06/20 21:23
>>452
わかるとどうってことないよ(^_^;
1.静的な画像ファイルはコンテキストの直下の好きなフォルダに置く
2.*.applicationはWEB-INFに置く
3.*.page,*.htmlはWEB-INFに置く、もしくはWEB-INFの下のサーブレット名のフォルダに置く
4.*.jwc,*.htmlは*.pageと同じ場所に置く
これだけよ♪この情報を信じなさい♪
やっぱり問題はドキュメントの量だけだな
とくに日本語となるとまるでなし
455452:04/06/20 23:30
実験してみた。Tapestry3.0 Tomcat4.1.30
見づらくてスマン。

============= *.applicationの配置に関して =============
(1):web.xmlの/web-app/servlet/init-param/param-valueがhello.applicationの場合
applicationのパス:WEB-INF/classes/hello.application
Homeの値:hello.applicationの/application/page/name[@Home='Home']/@specification-pathで指定
Homeのパス:WEB-INF/classes/Homeの値

(2):web.xmlの/web-app/servlet/init-param/param-valueが/hello.applicationの場合
(1)と同一の結果

(3):web.xmlでapplicationファイルを指定しない場合
applicationのパス:WEB-INF/サーブレット名.application
Homeの値:サーブレット名.applicationの/application/page/name[@Home='Home']/@specification-pathで指定
Homeのパス:WEB-INF/Homeの値
※サーブレット名は、web.xmlで/web-app/servlet[servlet-class='org.apache.tapestry.ApplicationServlet']/servlet-nameの値

(4):(3)の状態で、WEB-INF/サーブレット名.applicationが存在しない場合
Homeの値:-
Homeのパス:WEB-INF/Home.page
=======================================================

>>453の助言はうれしいんですが、*applicationをweb.xmlで指定した場合(つまり(1)(2)の場合)、Tomcat起動時に
「Resource at classpath:/hello.application does not exist.」とエラーが発生して、頭を抱えることに
なりそうな予感がしたので実験して補足しときました。(ヘタレなんで結果が合ってるかどうか保証できんが)

つーか、(2)はJavaWorld2003/12、Web+db16、(3)はworkbench、(4)はそのへんのサンプルと、
まったく統一とれてないんでもう大変。
456デフォルトの名無しさん:04/06/20 23:51
最近Tapestry-ML活発だね
http://groups.yahoo.co.jp/group/tapestry-japan/
457デフォルトの名無しさん:04/06/21 00:31
TapestryはちゃんとXSLTに対応しているのかな?

デザイナはCSSだけ使ってりゃええって最近思えるようになってきた。
HTML直打ちだけで済むって、そうは行かないケースも有るんだが。
デザイナはXSLTの事も考慮すべき。
458デフォルトの名無しさん:04/06/21 11:42
>>452,>>453,>>455
strutsが集中型設定ファイル地獄なのに対して
Tapestryは分散型設定ファイル地獄ってところか。
459デフォルトの名無しさん:04/06/21 12:47
同じ地獄なら分散の方がいいと考えてTapeな俺。 でもStrutsでも対応したんだっけ?
>>459
StrutsはXDoclet使えばほぼ解決。
タペは普及度が低いためそんなツールの対応も未だに無し。
>>460
ちなみにStruts + XDocletなら、Mavenがデフォルトで対応している。

$ maven -Dtemplate=struts genappで、Strutsプロジェクトを生成。
$ maven war:webappや、 $ maven war:warで、XDocletを適用してstruts-config.xmlを生成・ビルド。

Strutsは各種ツールのおかげで結構楽に開発できるようになった気がする。


で、Tapestry関係のツールってSpindle以外になんかないのー。
Strutsは、金出せば出すだけ便利になるね。
463デフォルトの名無しさん:04/06/21 21:49
mavenって何に使うの?
>>463
オープンソースのプロジェクト管理。
スケジュール管理がないのはオープンソースだからw
>>459
1.1からはstruts-cocnfig.xmlの子供xmlを幾らでも作れる。


ども肝心要のサーバ運用管理者に
その事を知らない人が多い罠。
466デフォルトの名無しさん:04/06/28 23:53
age
Struts等をやっていて、
手続きを記述した居場所でXMLを利用することが馬鹿げていることだと
感じるようニナリマシタ…
Pure Servlet/JSP
マンセー
まあ、狼人間を撃つ銀の弾はないってことだ・・・
まあ、日本にはハリウッドは無いってことだ・・・
471デフォルトの名無しさん:04/06/29 23:42
age
>>470
こいつは>>469の意味がわかってないってことだ。
ごめん。俺も意味わかんない。教えて。
そもそも狼人間などこの世にいないからな。都市伝説だ。
 
 
 
 
つまりデスマも都市伝説ってわけだ。
475デフォルトの名無しさん:04/06/30 23:07
>>474
いや、狼に育てられた、狼人間はいた。
>>473
「人月の神話」っていう本の副題だよ。
まあ、もう結構昔の本だけど、機会があれば読んでみな。
>>474
デスマは心の中にあります。
おまいら現実を見ようぜw
まぁいくら良い?道具を使ったところで、万能じゃないってことだな。
479デフォルトの名無しさん:04/07/03 00:00
age
>>475
アフリカでオオカミに育てられ人間に拾われ人間の生活に戻そうとしたが
10歳で死んでしまった少女アヴェロン野生児か
481デフォルトの名無しさん:04/07/04 01:14
Strutsスレを復活させた

△△さらにStrutsの良さを教えて下さいSession3
http://pc5.2ch.net/test/read.cgi/tech/1088870989/
482デフォルトの名無しさん:04/07/04 19:36
age
ネタがないってことだな。
関連プログラムのネタならあるぞ。

HiveMind 1.0-βリリースとか、
O-R Mappingフレームワークスレでの、祭りの後のCayenneの静けさとか…。
>>484
燃料がなくなったからね。
>>485
また再燃してきてるぞw
>>486
燃えカスみたいなもんだね。
こっちにもおいで。

Java⇔RDBのMapping-Frameworkを語るスレ Vol.2
ttp://pc5.2ch.net/test/read.cgi/tech/1086315004/
>>484
Cayenneって、Tapestry関連なの?
WebとDBの連携やるのに、
TapestryとCayenneの相性がいいらしいって話しだろ。
ちょっと日本語資料少ないな。
>>489-490
Cayenne公式のUser's Guideに、
Tapestryへの設定の仕方の章がある。
>>491
それだったら、Strutsのもあるからなぁ。
>>488のスレに、Cayenneの日本語資料作ってくれた人が現れますたよ。
>>492
書き方が足りなかった(スマソ)

WebServiceから使われることを想定しているフレームワークで、
Strutsへの設定を章立てし説明しているプロダクトは多々あれど、
Tapestryへの設定を章立てし説明しているプロダクトはCayenneくらい?

ということ。
>>494
技術的な話題でWebServiceっていったときにはStrutsとかTapestryは当てはまらないと思われ。
いわんとすることはわかるが。
でも、Cayenne使えネっていう結論になってそうだぞ。
496デフォルトの名無しさん:04/07/10 14:33
age
497デフォルトの名無しさん:04/07/15 01:04
age
498デフォルトの名無しさん:04/07/15 09:09
エイジ
あじぇ
500デフォルトの名無しさん:04/07/20 21:34
age
@Select とか @Optionで
@Foreach使って

<option value="1月">1月</option>
<option value="2月">2月</option>
<option value="3月">3月</option>
<option value="4月">4月</option>
<option value="5月">5月</option>
<option value="6月">6月</option>

っていうのはできないの????
valueの値が連番になってしまう

公式のリファレンス見てもわからんかった... orz


502501:04/07/22 15:13
>>501
すいません自己解決しました.
基本的にこんなこと気にしなくて良かったんだな.

しかしいつも選択されたかどうかを示すフラグが必要になる・・・?

そりはHTMLの仕様の問題であ?
504デフォルトの名無しさん:04/07/29 15:45
age
505デフォルトの名無しさん:04/08/04 02:13
sage
なんか詳しい資料少ないよねぇ・・・・

一行ごとに色を切り替えて縞々模様に
なるテーブル作りたいんだけど
どうやって書けば良いんでしょ・・・・
507デフォルトの名無しさん:04/08/04 16:57
>>506
ttp://www.sandcastsoftware.com/articlesandtutorials/brownbag/index.html#tapestry
英語だけど、ここのPDF落としてみてごらん。
一行ごとに色換えしてるサンプルのチュートリアルを含むみたい。
もちろん、ソースもダウソできるぞ。
508デフォルトの名無しさん:04/08/07 21:48
age
509デフォルトの名無しさん:04/08/15 15:27
Tapestryのおもしろい話題ないかね〜?
510506:04/08/17 19:32
>>507
ありがとう
亀レスになってしまった

英語苦手ながら一通り呼んでみたのだけど,
縞々のリストは最初のサンプルに提示してる画面だけで,
その後チュートリアルとして実際作り出したら背景色なんて
気にしてないみたい…多分.
漏れの英語力が著しく欠如してるのかもしれないけども

とりあえずその問題は参照するたびにTrue/Falseが切り替わる
プロパティで何とかすることにしたよ…なんか納得いかないけど….


で,新しい疑問がでてきてしまったんですが
HTMLのプロパティに可変値を設定したいときはどうすれば良いのだろう

可変長リストの左側に柱をつけたいときとか
<td rowspan="xx">
とかやるよね.xxを件数に応じて帰る必要があるんだけども
どうやって指定すれば良いのか・・・.
OGNLかとおもったけど違うみたいだし
511506:04/08/17 21:05
>>510
ああ,Anyだったか・・・・?

すいません,上記のrowspanの話は自己解決しました.(良いやり方なのかどうか知らんが)

ちなみに *.pageに以下を定義(hogeCollectionは適当なコレクション.sizeは長さ)

<component id="verticalLine" type="Any">
<binding name="rowspan" expression="hogeCollection.size"/>
</component>

*.htmlのほうで
<td jwcid="verticalLine" >

としました.

お騒がせしました.
512デフォルトの名無しさん:04/08/26 22:38
さて、HiveMindがRCになったわけだが。
>>512
何それ?
なんか組み立てロボット。
ラジコンになった。
>>514
ああ、ロボコンか。
>>515
そう。
このスレは、それについて語るスレ。
板違い。
517デフォルトの名無しさん:04/08/29 11:22
age
518デフォルトの名無しさん:04/09/08 22:28
あげ
519デフォルトの名無しさん:04/09/09 02:50
age
Tabesptryって消えそうですね。少なくとも日本じゃ流行らなそう・・。
流行ってなくてもおれは使う!!
何故なら楽だし楽しいから。
523デフォルトの名無しさん:04/09/10 14:18
JavaScriptをTapastryScriptで記述するのって手間じゃないですか?
JavaScriptで画面遷移の制御している画面では書き換えが面倒な気がします。

ちなみに、TapestryScriptを使用するとHTML画面でのJavaScriptチェックはできなくなりますよね?
524デフォルトの名無しさん:04/09/10 18:36:54
これからはYSFですよ。
525デフォルトの名無しさん:04/09/10 20:09:26
>>524
YSFとS2JSFが一緒になるらしい。

9/9の日記参照
http://d.hatena.ne.jp/higayasuo/


どっちでもいいが、使いやすくしてくれ。
526デフォルトの名無しさん:04/09/10 22:22:06
FRAMESETの使い方教えてください。
527デフォルトの名無しさん:04/09/12 16:49:30
age
528デフォルトの名無しさん:04/09/12 22:05:24
TapestryアプリケーションでURLを一般的な***.html風にする一番きれいな方法は
どうすればいいでしょうか?
1.PageLinkを使わず、自作のFilterで***.htmlがきたら/app?service=page/***にフォワードする
  欠点:ステートフルやセッションを使うのが一苦労
2.AbstractEngine#extractServiceName,EngineServiceLink#constructURLなどを書き換える
3.BaseEngine,AbstractService,EngineServiceLinkを継承してextractServiceName,constructURLをオーバーライトする
4.他の方法あったら教えて
529デフォルトの名無しさん:04/09/13 21:22:06
真っ黒メディアFLEXは?
530デフォルトの名無しさん:04/09/13 22:33:17
>528
3.1で対応する、とMLにあった。
531デフォルトの名無しさん:04/09/13 23:38:03
>>529
Flex 面白そうだよね。JSP ライクなタグってのが気になるが...
トライアル版登録して試してみようかな。
532デフォルトの名無しさん:04/09/13 23:46:21
flexって157万か・・・
533デフォルトの名無しさん:04/09/14 21:20:13
>>528
アドレスバーを偽装する。
534デフォルトの名無しさん:04/09/14 23:47:26
>>532
真っ黒メディアだ・・・
535デフォルトの名無しさん:04/09/17 03:42:06
age
536デフォルトの名無しさん:04/09/22 00:11:01
age
537デフォルトの名無しさん:04/09/22 09:39:09
Tapestryのコンポーネントをパレット表示するEclipseプラグイン
http://www.behindthesite.com/blog/C1931765677/E1305840788/index.html
538デフォルトの名無しさん:04/09/22 15:08:50
>>537
ぬぬ!これは激しく便利なヨカン!
539デフォルトの名無しさん:04/09/23 02:25:00
Tapestry3.0.1が近いね
540デフォルトの名無しさん:04/09/24 16:17:17
Tapestry3.1 and HiveMind1.0キタ━(゚∀゚)━( ゚∀)━(  ゚)━(  )━(゚  )━(∀゚ )━(゚∀゚)━!!!!
541デフォルトの名無しさん:04/09/24 22:00:30
>>540
Tapestry3.1はまだだろ!どこの情報だ???
542デフォルトの名無しさん:04/10/02 20:50:20
age
543デフォルトの名無しさん:04/10/05 20:27:34
age
544デフォルトの名無しさん:04/10/11 14:04:42
age
545デフォルトの名無しさん:04/10/17 23:17:04
age
546デフォルトの名無しさん:04/10/19 08:56:27
Tapestry3.0.1出たよ
547デフォルトの名無しさん:04/10/24 05:37:59
age
548デフォルトの名無しさん:04/11/04 16:58:07
tapestry 3.0.1 です。
<form>
 <input jwcid="@TextField" value="ognl:foo"/>
 <input jwcid="@Submit" listener="ognl:listeners.hogeAction"/>
 <input jwcid="@TextField" value="ognl:bar"/>
 <input jwcid="@Submit" listener="ognl:listeners.fugaAction"/>
</form>
という構造で、上の submit が押された場合、
setFoo → hogeAction → setBar という順でメソッドが呼ばれるようなのですが、
これの回避方法はありますか?
foo の内容を hogeAction で使いたいのですが。
549デフォルトの名無しさん:04/11/04 19:50:52
>>548
呼出しが setFoo, hogeAction の順なら、foo の内容を hogeAction で
使えるような気がするんですが、"bar の内容を hogeAction で使いたい" の
書き損じでしょうか...?
550548:04/11/04 19:57:53
>>549
typo でした。
「bar の内容を、 hogeAction で使いたい」が、やりたい事です。

誰か教えてage!
551デフォルトの名無しさん:04/11/04 20:34:15
>>550
試してないので憶測ですが、もしページテンプレート中に書かれた順番で
メソッドが呼び出されるんだとしたら、
<form>
 <input jwcid="@TextField" value="ognl:foo"/>
 <input jwcid="@TextField" value="ognl:bar"/>
 <input jwcid="@Submit" listener="ognl:listeners.hogeAction"/>
 <input jwcid="@Submit" listener="ognl:listeners.fugaAction"/>
</form>
という順になるように書くのではダメですかね?
↑だとページがレンダリングされたときに TextField と Submit の
位置関係が...というのであれば、あんま好みじゃないですけど例えば
<form>
 <table>
  <tr>
   <td>
    <input 中略 value="ognl:foo" /><br />
    <input value="ognl:bar" />
   </td>
   <td>
    <input listener="ognl:listeners.hogeAction" /><br />
    <input listener="ognl:listeners.fugaAction" />
   </td>
  </tr>
 </table>
</form>
とか。
(個人的には div ブロックで float にするとかの方が好みですが)
552デフォルトの名無しさん:04/11/05 02:31:08
タペストリーでhttpsで接続するにはどうしたらよいでしょうか?
例えばcycle.activate( pageA );としてpagaAを表示する際にhttpsで接続するにはです。

やっぱりweb.xmlに記述するんですかねー? その場合の記述方法は?
553デフォルトの名無しさん:04/11/06 13:14:33
RedirectExceptionでhttpsなURLにリダイレクトするというのは駄目?
554デフォルトの名無しさん:04/11/09 23:11:46
TiA本を読み終わっての、Tapestryのいい所といまいちな
感じの所をつらつらと。

いい所:
デザイン完全分離、コンポーネント、ドメインロジックとの
容易なグルーイング、アセット管理、イベントベース処理、OGNL

いまいち?:
直感的でないフォームのwinding/rewinding、認証サポート、
クライアントサイドスクリプトのサポート

どっちとも言えず:
バリデーション

かなりというか Struts みたいな原始的なのと比べるのが
馬鹿らしいほど高水準な割に、見通しも悪くなくて結構好みな感じ。
コンポーネントも結構簡単に作れるから、自前コンポーネント
ライブラリの整備も結構急ピッチにできそう。


555デフォルトの名無しさん:04/11/09 23:32:57
学習中です。jwc を作ってみたりしています。
BaseComponent を extend したコンポーネントクラスで、
与えられた parameter を元に、かくかくしかじかの前処理を行ってから
コンポーネントの表示を行いたい場合、
renderComponent をオーバーライドして、かくかくしかじかを行ってから
super.renderComponent を呼べばOKでしょうか。
556デフォルトの名無しさん:04/11/09 23:53:53
Tapestryって、なんでいいものなのに広まらなかったんだろうね。
557デフォルトの名無しさん:04/11/10 00:32:57
558デフォルトの名無しさん:04/11/10 01:17:58
日本語の資料ってないの?
JavaWorldの去年の特集くらい?
559デフォルトの名無しさん:04/11/10 01:41:33
びっくりするくらいにない
560デフォルトの名無しさん:04/11/10 01:50:42
タペ専門書ってないの?
「Jakartaナントカ」とか「オープンソースナントカ」みたいな本の1コーナーでしかないのかな。
561デフォルトの名無しさん:04/11/10 02:21:41
Tapestry in Action の和訳版が出れば嬉しいんだけどねー。
562デフォルトの名無しさん:04/11/10 02:24:21
inActionが訳されないようなモノは、専門書も出ないってことだな。
563デフォルトの名無しさん:04/11/10 13:50:17
セッションタイムアウト時の
Your session has timed out.
Web applications store information about what you are doing on the server. ....
という画面を別の画面に差し替えたいのだが
どうすればよいのだろう。
564デフォルトの名無しさん:04/11/12 19:02:22
.page や .html を、.application と同じディレクトリにずらずら並べないで、
アプリケーションの機能ごとにディレクトリを作ってその下に置いた場合、

.application で
<page name="Pagename" specification-path="/path/to/Pagefile.page"/>
を沢山書かなくてはダメですか?
<a jwcid="@PageLink" page="/path/to/Pagefile.page">aaa</a>
って書きたい…。
565デフォルトの名無しさん:04/11/13 21:07:32
>>564
そのとおりなので、Tapestry は欠陥品。
ちなみに
requestCycle.activate("path/to/Pagefile");
となら書ける。謎。
566デフォルトの名無しさん:04/11/13 23:39:03
ハローTapestry Fun!
TapestryのPageLinkクラスを修正して、
<a href="Hoge.html" jwcid="@PageLink">gotohoge</a>

<a href="app?service=page/Hoge">
と出力するのは簡単ですよ
567デフォルトの名無しさん:04/11/14 01:42:11
>>566
じゃあそういうクラスと jwc 書いて公開して。
ついでに >>564 を解決する jwc も公開して。
568566:04/11/14 06:54:21
>>567
●org.apache.tapestry.link.PageLink.jwc
1.hrefをreserved-parameterからformalParameterにする
<reserved-parameter name="href">
→<parameter name="href" type="java.lang.String" direction="in" required="no"/>
2.pageパラメータの必須属性を消す
<parameter name="page" type="java.lang.String" required="yes" property-name="targetPage" direction="in"/>
→<parameter name="page" type="java.lang.String" required="no" property-name="targetPage" direction="in"/>

●org.apache.tapestry.link.PageLink.java
1.hrefパラメータのgetterメソッドを追加
 public abstract String getHref();
2.pageパラメータが指定されないときhrefパラメータを取得し、スラッシュと拡張子を切る
 下記を挿入
 ...
 if(parameter == null){
  parameter = getHref();
  parameter = parameter.substring(parameter.lastIndexOf("/") + 1);
  parameter = parameter.substring(0, parameter.lastIndexOf('.'));
 }
 return getLink(cycle, Tapestry.PAGE_SERVICE, new String[] { parameter });

ちなみにおいらはPageServiceとかAbstractEngineとかweb.xmlを書き換えて
<a href="Hoge.html" jwcid="@PageLink">gotohoge</a>を
<a href="Hoge.html">gotohoge</a>と出力させるようにしてるっす
569デフォルトの名無しさん:04/11/14 11:57:42
>>106
Aceはどこ行った?
570デフォルトの名無しさん:04/11/14 15:58:08
PageLink を書き換えるんじゃなくて、継承とオーバーライドで別のクラスにしないのはなぜ?
あと >>564 は、PageLink 以外にも Page を参照する Component がありそうだから面倒だなぁ、
と思いました(例えば Frame。ほかにあるかは知らない)
571デフォルトの名無しさん:04/11/14 19:17:49
>>570
なんでってできあがってるHTML内の大量のリンクタグの
jwcidを書き換えるのめんどくさいからでしょ?
それからプログラマーにいちいち別途技術資料作成して、
@PageLinkより@HogeLinkの方が機能が上だから使いましょうねと
教育する時間がもったいない。
完全上位互換ですから。
後付け機能ですから、ギリ!!!
572デフォルトの名無しさん:04/11/14 19:26:22
>>570
基本コンポーネントとかぶる同じ名前のコンポーネントを.application内に記述ってできるのかな?
できるのならクラスとjwcを別にして、「PageLink」コンポーネントを再定義するって方法もあるね
573デフォルトの名無しさん:04/11/15 20:24:14
age
574デフォルトの名無しさん:04/11/16 16:12:42
ぶっちゃけ、Tapestry使ってる人って何人ぐらいのチームでやってるの?
575デフォルトの名無しさん:04/11/17 20:24:41
>>574
マネージャ1人、プログラマー5人、デザイナーは外部なのでわからずです。
576デフォルトの名無しさん:04/11/17 20:49:18
Tapestry in Actionを読み進めているが、
一人でTapeるのは無謀か…
577デフォルトの名無しさん:04/11/17 21:17:39
ひとりならいいんじゃない?
578デフォルトの名無しさん:04/11/18 01:41:00
>>576
オラ、1人で Tapestry + Cayenne なプロジェクト切り盛りしてるよ。
ってか絶対的なコーディング量を考えると、素の JSP + Servlet で
1人なのより楽でない? (最初の学習コストはちょっとあるけどさ)
579デフォルトの名無しさん:04/11/18 02:38:11
せめてStruts+Hibernate+Springぐらいと比べてくれ。
580デフォルトの名無しさん:04/11/18 07:13:55
比較の対象はPHPかもしれん
581デフォルトの名無しさん:04/11/19 00:38:52
Groovystryはもう使い物になるの?
582デフォルトの名無しさん:04/11/22 04:39:10
age
583デフォルトの名無しさん:04/11/23 11:01:18
頑張ってるのはわかるけど、まだ冗長な感じがするなあ。
584デフォルトの名無しさん:04/11/26 21:12:12
age
585age:04/11/27 00:13:52
コンポーネントの in-out なプロパティの大半は String とかプリミティブな型わけで、
getHost して setHoge されますね。(そうせざるを得ないわけですが)

MultiplePropertySelection の selectedList プロパティは、
型が List で Direction が in-out なんだけど、getHogeList で List を取って、
そのリストを書き換えてしまう。setHogeList が呼ばれない。
確かにその方が効率的。

で、これに気がつかなかったわけで、しばらく嵌ってしまった、という話でした。
586デフォルトの名無しさん:04/12/03 18:57:45
age
587デフォルトの名無しさん:04/12/11 23:31:13
age
588デフォルトの名無しさん:04/12/12 00:37:47
589デフォルトの名無しさん:04/12/16 01:06:23
age
590デフォルトの名無しさん:04/12/26 06:12:44
どうでもいい事なんだけど、Tapestry in action
で作者が使っているHTMLエディタ、同じの使ってみたいと思って
調べてみたら、MacroMediaのHomeSite(しかも4.0)ですね。
もう販売中止で売ってないじゃん。。。
591デフォルトの名無しさん:04/12/31 10:55:01
age
592デフォルトの名無しさん:05/01/02 22:54:26
>>590
一応DreamWeaverMX以降でHomeSiteの機能が統合されているけどね。
重さという意味では比べものにならないな。値段も(以下略)。
英語版は開発続行らしいから、英語版買うというのもあり。

まぁこの業界、DWは使いこなせると損にはならないから、
割り切って乗り換えるのも手かも。

http://www.macromedia.com/jp/software/homesite/

TapestryなHTMLを書きやすいタグ補完とかほしいもんだけど、
どこかにないのかねぇ。
593デフォルトの名無しさん:05/01/05 00:03:40
>> 592
そういえば、Intelli-JがTapestryに対応していたような。
594デフォルトの名無しさん:05/01/05 09:50:38
595デフォルトの名無しさん:05/01/08 12:30:56
>>594
ツッコミがくることを承知で書くが、とてもデザイナさんにEclipse入れて
その上でHTML書け、なんて言えない(汗)。
DWかGoLiveのExtensionみたいな形で使えればベターなんだが。

埋め込みくらいプログラマがやれって話もあるが、動的表示要素が
ほとんどなページとかだと、ある程度埋めてくれないとうざくて
やってられないー。
596初期不良:05/01/08 20:53:16
埋め込み作業はバイト君にやらせたいね
597デフォルトの名無しさん:05/01/09 02:12:15
>> 595
たしかに、Webデザイナーとの分業を考えるのであれば、
DWとかにadd-onであってほしいですね。
そうすると少しは普及速度があがるかな。。
っていうかその前にドキュメントの充実が先って気がするけど。
598デフォルトの名無しさん:05/01/09 02:31:03
いまさら普及しないだろ。
599タペつかっているよ:05/01/12 15:56:38
ページを見ていたら偶然このサイトもtapestryを使っているのを発見
結構よくできていた。http://www.it-evangelist.com/MeetEntre/

600デフォルトの名無しさん:05/01/12 16:16:58
601デフォルトの名無しさん:05/01/20 21:07:04
HiveMind-1.1 alpha が出たわけだが
602デフォルトの名無しさん:05/01/22 00:15:51
> 601
HiveMindって、なんかTapestryと関係あんの?
603デフォルトの名無しさん:05/01/22 00:37:17
サクヤが同じ
604デフォルトの名無しさん:05/01/23 00:56:31
age
605デフォルトの名無しさん:05/01/23 11:39:45
>>602
Tapestry3.1 からは、HiveMind と統合とか、
内部処理に HiveMind の DI を利用するとか
そんな噂あり
606デフォルトの名無しさん:05/01/23 20:43:42
(Tapestryではなく)Cayenne のサンプルの中に、Blogサンプルがあったよ
607デフォルトの名無しさん:05/01/24 03:05:47
>> 603,605
なるほど。
そういえば、TapestryのWikiかなにかに3.1からDI機能が入るとか書いてあった気がする。
Springを勉強しないで良くなる代わりに、HiveMindを勉強する必要があるのかな。。
608デフォルトの名無しさん:05/01/30 17:37:44
609デフォルトの名無しさん:05/02/12 14:23:18
Tapestry使ったコンテストがあるんだね。
誰か参加してるヤシいる?

賞金100万円いいよな。

http://www.dena.ne.jp/other/index.html
610デフォルトの名無しさん:05/02/12 23:06:52
> 609
URL見たけど、どのあたりがTapestryに関係しているの?
611デフォルトの名無しさん:05/02/16 21:59:17
Tapestry 3.0.2 Released
612デフォルトの名無しさん:05/02/19 01:10:26
613デフォルトの名無しさん:05/02/19 01:41:37
The ServerSide.com(TSS)はTapestryで
リライトされたらしいよん。既出かな?

ttp://www.theserverside.com
614デフォルトの名無しさん:05/02/19 01:57:40
> 613
これだな。
ttp://www.theserverside.com/articles/article.tss?l=TSSTapestry

TSSは結構有名でアクセス数が多いサイトなので、このサイト構築に耐えられた
(HLS自らがリライトした?)というのは、Tapestryの良い事例になった訳だ。
615デフォルトの名無しさん:05/02/19 02:20:11
Spindle 3.1.16(unstable)が出てる。で、Tapestry 3.0.2 が含まれているみたい。
ttp://www.jroller.com/page/glongman/20050217#spindle_3_1_16_now

616デフォルトの名無しさん:05/02/19 11:17:15
そしてNHL公式サイトは、
このまま無かったことにされそうな悪寒
617デフォルトの名無しさん:05/02/19 12:13:08
> 616
何の誤爆?

それはともかく、JavaWorldで3号連続で連載していた「Tapestryの全て」がWEBで掲載されている。結構分かりやすい。

ttp://www.duo.co.jp/column/index.html
618デフォルトの名無しさん:05/03/02 00:01:19
作者、語ってます。
ttp://www.theserverside.com/talks/index.tss
619デフォルトの名無しさん:05/03/02 00:18:27
日本語で語らないから日本で普及しないんだよ。
620デフォルトの名無しさん:05/03/02 00:20:06
>>619
そのわりに Seasar は普及しないな。
621デフォルトの名無しさん:05/03/02 00:34:24
わかりやすい日本語で語らないから日本で普及しないんだよ。
622デフォルトの名無しさん:05/03/02 20:22:35
わかりにくい英語で流行ってるやつってあるのかな?
623デフォルトの名無しさん:05/03/04 04:26:57
age
624デフォルトの名無しさん:2005/03/22(火) 22:50:12
>>617
遅レスだが、NHL公式サイトはTapestry制だったらすぃ
625デフォルトの名無しさん:2005/03/28(月) 12:38:40
age
626デフォルトの名無しさん:int 2ch =05/04/02(土) 11:31:25
Spindle 3.1.20出てます。

http://www.jroller.com/page/glongman

New Features:
* no new features this release other than updating to Tapestry 3.0.3
(Spindle同梱のTapestryが3.0.3に更新されたって事です)
627デフォルトの名無しさん:2005/04/16(土) 23:51:40
ageますよ。

ttp://howardlewisship.com/blog/

次期Tapestry(Picasso)は、Ver 4.0になるそうな。
628デフォルトの名無しさん:2005/04/17(日) 00:12:49
629デフォルトの名無しさん:2005/04/24(日) 13:31:17
age
630デフォルトの名無しさん:2005/05/11(水) 22:56:16
4.0αage
631デフォルトの名無しさん:2005/05/11(水) 23:00:09
http://y130200.ppp.dion.ne.jp/
www
ww
うはっwwww
っうぇwwwwwwおkwww
おkwwwっうぇwっうぇうぇwwwうはっwww
うぇwwwうぇwwwっwwwwwwwwwwww
632デフォルトの名無しさん:2005/05/13(金) 17:44:07
TapestryでFrameってどうやって使うの?
633デフォルトの名無しさん:2005/05/16(月) 22:23:54
ビジュアルエディターってあるの?
634デフォルトの名無しさん:2005/05/22(日) 13:13:37
>>633
Tapestryの良いところは、普通のHTMLエディタでTapestry用のVIEWを
作成できる事なんで、お好きなエディタを使えばいいんじゃないでしょうか。

それともObjectとのマッピングまでGUIで作成できるように
したいって事?(Spindleの機能じゃ足りない?)
635デフォルトの名無しさん:2005/05/22(日) 13:16:17
連投でごめん。最近のtapestry開発状況

# 17 May 2005 - Tapestry 4.0-alpha-3 Released
# 06 May 2005 - Tapestry 4.0-alpha-2 Released
# 29 April 2005 - HiveMind 1.1-beta-1 Released
# 29 March 2005 - Tapestry 3.0.3 Released
# 25 March 2005 - HiveMind 1.1-alpha-3 Released
# 24 February 2005 - HiveMind 1.1-alpha-2 Released
# 22 February 2005 - Tapestry 3.1-alpha-1 Released
# 15 February 2005 - Tapestry 3.0.2 Released

4.0 betaは間近かな。
636デフォルトの名無しさん:2005/05/23(月) 10:27:43
637デフォルトの名無しさん:2005/06/17(金) 22:53:50
Tapestryは1つのjwcidに対して複数のコンポーネントを適用できますか?
638637:2005/06/17(金) 23:58:58
>>637
これだけでは何なので。
自分で調べた限りではできないみたいで、ひとつのタグに複数のコンポーネントを適用しようとしたら、
どうしてもダミーのspanタグが必要みたいでした。
なにか裏技でもあれば教えてください。
639デフォルトの名無しさん:2005/06/26(日) 02:40:31
640デフォルトの名無しさん:2005/06/26(日) 12:29:44
日本語資料のまとめキボン
641デフォルトの名無しさん:2005/06/26(日) 12:42:27
>>361
たしかに普及したライブラリはすべて日本語の資料がどこかにはあるからなぁ
642デフォルトの名無しさん:2005/06/26(日) 16:38:00
>>640
んじゃ、とりあえずML。

tapestry-japan 
http://groups.yahoo.co.jp/group/tapestry-japan/

Tapestry Japan ML
http://www.freeml.com/info/[email protected]

どっちも閑古鳥だがな。
643デフォルトの名無しさん:2005/07/16(土) 16:04:13
4.0 Beta 2
644デフォルトの名無しさん:2005/07/26(火) 12:05:16
4.0 Beta 3
645デフォルトの名無しさん:2005/08/26(金) 01:52:38
Tapestry 4.0-beta-4の報告もないってことは、tapestryはこれにて終了ってことで。
646初期不良:2005/08/26(金) 15:04:53
けど、Spring フレームワークの開発者はこれから注目すべき
フレームワークの中に Struts2 と並べて Tapestry を挙げていた。
盛り上がってないのはもしかして日本だけ?
647デフォルトの名無しさん:2005/08/26(金) 15:18:39
原因は>>361
648デフォルトの名無しさん:2005/08/29(月) 22:14:25
http://jakarta.apache.org/site/news/news-2005-q3.html

ちゃんとTapestry 4.0-beta-4(とHiveMind 1.1-beta-3)について書いてあるがな(´・ω・`)
649デフォルトの名無しさん:2005/08/29(月) 23:07:08
>>648
いや、>>643でBeta2の報告、>>644でBeta3の報告の書き込みがあって、なんでBeta4の書き込みがなかったのかと。
で、4.0Beta5がリリースされた訳だが。
誰かリリースノートとか日本語に訳してくれないかな……。
650デフォルトの名無しさん:2005/08/30(火) 00:16:40
そしてついでにドキュメントを
651デフォルトの名無しさん:2005/09/02(金) 20:04:20
>>649
意訳するとだな

「おまいら正式版マダーとか言い杉。バグつぶしは小さいのしか残ってないが
 ドキュメントが追いつかねぇんだよゴルァ。9月中には出してやるからモチツケ。」

って感じですわ。
652デフォルトの名無しさん:2005/09/08(木) 23:35:04
Tapestry 4.0-beta-6 released
653デフォルトの名無しさん:2005/09/20(火) 04:31:56
Tapestry 4.0-beta-7 released
654デフォルトの名無しさん:2005/09/20(火) 15:12:27
betaの使用感とかはだれも書かないのね。
655デフォルトの名無しさん:2005/09/20(火) 19:40:27
>>654
言い出しっぺ乙
656デフォルトの名無しさん:2005/09/21(水) 05:33:07
つかってないも〜ん
657デフォルトの名無しさん:2005/09/21(水) 19:49:56
♪首から下は〜 Howard Lewis Ship
658デフォルトの名無しさん:2005/09/25(日) 10:18:46
4.0-beta でアプリを開発し始めた者です。
3.0のころに比べると、ページをサブディレクトリで管理できたり、
生成されるURLがシンプルになったりいい感じです。
50画面くらい作りこみましたが、とりあえず実用上の問題はなさそうです。

あと、4.0に限らないけど、
htmlテンプレートをキャッシュしないようにして開発すると
動作がもっさりもっさりして厳しいですな。
ページの作りこみはトライアンドエラーの作業が多いから
これは開発効率にダイレクトに響きます。
659デフォルトの名無しさん:2005/09/25(日) 11:50:02
ttp://www.agileskills2.org/EWDT/
Tapestry 4初の解説本。1-4章が無料でダウンロード可
660デフォルトの名無しさん:2005/09/25(日) 17:15:18
661デフォルトの名無しさん:2005/09/26(月) 06:39:30
5人で開発するとして、2人くらいは英語のドキュメント読めても残りの3人は日本語じゃないと読まないんだよね。
しかも、英語が読めるやつは手探りでだいたいの使い方をわかったりするからドキュメント自体があまり必要なかったり。
日本語しか読めない開発者ほどドキュメントを必要とするんだよね。
662デフォルトの名無しさん:2005/09/26(月) 07:46:53
Tapestry 1.1-beta-8 Released
663デフォルトの名無しさん:2005/09/26(月) 12:31:03
概要でも日本語化されていれば日本語しか分からなくても
ソースコード見て納得できるけど
なにもわからず手探り状態だと厳しい

それに英語読めるといっても日本語と違って斜め読みまでできるやつはそう多くない
膨大なドキュメントから特定の場所を探すのはむずかしい
664デフォルトの名無しさん:2005/09/26(月) 23:45:24
いつまでベータ版なんじゃ、ゴルァー
665デフォルトの名無しさん:2005/09/27(火) 00:20:58
4.0正式リリースは年末くらいじゃない?
このあとまだRCシリーズが出るはずだし。
666デフォルトの名無しさん:2005/10/03(月) 01:14:51
Tapestry 1.1-beta-9 Released
667デフォルトの名無しさん:2005/10/03(月) 02:01:24
>>662 >>666
Tapestry 1.1ってなんじゃぁぁぁぁぁぁぁぁぁぁぁぁぁぁぁ
668デフォルトの名無しさん:2005/10/03(月) 02:23:47
だって Jakarta のトップページが。
669デフォルトの名無しさん:2005/10/04(火) 21:11:31
きっともうHoward Lewis ShipもHiveMindのことでいっぱいいっぱいなんだよ
670デフォルトの名無しさん:2005/10/10(月) 01:14:44
Tapestry 4.0-beta-10 Released
671デフォルトの名無しさん:2005/10/10(月) 17:08:31
なんかTapestry4.0のドキュメントを翻訳をしてる人がいるみたいだね。
でも最終更新は2005/06/23か。
非公式ユーザーリファレンスもWikiも更新止まってるみたいだし、こちらにも期待したいところなんだが……。

ttp://www.javable.jp/notes/tapestry.html
672デフォルトの名無しさん:2005/10/18(火) 07:49:57
Tapestry 4.0-beta-11 released
673デフォルトの名無しさん:2005/10/28(金) 17:05:13
FaceletsがあればTapestry要らなくなる?

674デフォルトの名無しさん:2005/10/28(金) 17:23:46
Faceletsの開発者による紹介記事の日本語訳
ttp://homepage1.nifty.com/algafield/facelet-ja1.html
675デフォルトの名無しさん:2005/10/28(金) 20:08:52
つか、S2JSFが滅亡
676デフォルトの名無しさん:2005/10/29(土) 01:59:44
で、ぶっちゃけ戦闘力の方はどうなのよ。
コンポーネント開発ってIDEの能力が大きいからなぁ
677デフォルトの名無しさん:2005/10/29(土) 12:33:48
ぶっちゃけたぺも日本語資料が大量に出ていたらそれなりに普及はしてたはず
678デフォルトの名無しさん:2005/10/30(日) 04:44:21
タペって企業がバックにいたりしないの?
Strutsって結局Sunがバックにいたからあんなヒドい作りなのに広まったんだよね。
679デフォルトの名無しさん:2005/10/30(日) 12:53:40
Strutsとsunは関係ねーべ
680デフォルトの名無しさん:2005/10/30(日) 14:28:34
開発者はSunの社員
681デフォルトの名無しさん:2005/10/30(日) 15:54:39
社員であることとバックアップとは関係ねーべ
JSFならSunと関係があるが
682デフォルトの名無しさん:2005/10/30(日) 17:02:35
結果を見ると、関係があったといえるんじゃないかと。
JSFみたいに組織的なバックアップはしてないけど、バックにサンがいることは大きいかったと思う。
683デフォルトの名無しさん:2005/10/30(日) 17:11:03
IBMとNTTじゃなかったっけ?Strutsをバックアップしてたの
684デフォルトの名無しさん:2005/10/30(日) 20:33:32
Tapestryって、そういう噂レベルでもいいから企業が後押ししてるっていうのないの?
685デフォルトの名無しさん:2005/11/06(日) 03:19:15
Tapestry 4.0-beta-12 released
686デフォルトの名無しさん:2005/11/13(日) 02:39:15
作者BLOGに、OGNLを使わないように変更すると10倍速くなるってのが載ってる。
まあベンチマークなんで、本番環境の数字とは違うんだろうけど。
687デフォルトの名無しさん:2005/11/14(月) 13:00:15
Tapestry 4.0-beta-13 released
688デフォルトの名無しさん:2005/11/28(月) 20:21:21
ApacheConからハブられた件
689デフォルトの名無しさん:2005/11/30(水) 20:39:10
Tapestry 4.0-beta-14 released
690デフォルトの名無しさん:2005/12/01(木) 05:45:37
ってか、WebWorksもStrutsに参加して、HTMLテンプレートとしてWicketが流行ってて、標準フレームワークはJSF+EJB3で、Tapeってどういう位置付けになるの?
691デフォルトの名無しさん:2005/12/02(金) 19:36:34
質問なんですけど、
Tapestryの開発って、.htmlを変更したのを反映させる方法って、
Tomcat(コンテナ)を再起動するしかないんですかね?
server.xmlのreloadable設定も効かないみたいだし…。
692デフォルトの名無しさん:2005/12/02(金) 23:32:36
>>691
-Dorg.apache.tapestry.enable-reset-service=true
693デフォルトの名無しさん:2005/12/03(土) 10:28:54
>>692
サンクス。
これでInspectorButtonを使うのですね。
694デフォルトの名無しさん:2005/12/06(火) 11:01:30
ちょっと前だけどJSFとTapestryの比較記事があった。

ttp://www.theserverside.com/articles/article.tss?l=JSFTapestry
695デフォルトの名無しさん:2005/12/09(金) 21:09:38
Tapestry 4.0-rc-1 released
やっとこさRCキタ
696デフォルトの名無しさん:2005/12/21(水) 01:53:24
Tapestry 4.0-rc-2 released
697デフォルトの名無しさん:2005/12/30(金) 04:15:45
Tapestry 4.0-rc-3 released
698 【大吉】 :2006/01/01(日) 01:40:59
↑Tapestry 4.0 の命運
699デフォルトの名無しさん:2006/01/01(日) 22:35:59
> 698 : 【大吉】 :2006/01/01(日) 01:40:59
ばっちりだな
700ハーピィ:2006/01/02(月) 02:25:15
E・∇・ヨノシ <700ゲット♫
701デフォルトの名無しさん:2006/01/05(木) 23:01:51
DirectLinkだけで間に合うと思うのですが、
ActionLinkを使った方がいいケースってありますか?
702デフォルトの名無しさん:2006/01/08(日) 12:27:22
Tapestry 4.0 Released
703デフォルトの名無しさん:2006/01/08(日) 12:58:12
>>702
やっときたか
704デフォルトの名無しさん:2006/01/08(日) 23:20:44
705デフォルトの名無しさん:2006/01/11(水) 07:56:01
リリースされたら話題が途切れるって、
誰も使ってないんじゃ……
706デフォルトの名無しさん:2006/01/11(水) 21:11:26
ヒント:年始休暇明けでテライソガシス
707デフォルトの名無しさん:2006/01/11(水) 21:19:15
ヒント:Tapestry使いはいつもイソガシス
708デフォルトの名無しさん:2006/01/11(水) 21:35:03
使ってるよ。

contribにあるXTileってコンポーネント
ドキュメントになってないみたいだけど、
もともと http://www.t-deli.com/ にあったのが
気がついたらcontribに含まれてた。

で、これ日本語うまく通らないみたいで、
自分でパッチあてて使ってるんだけど、
AjaxもJavaScriptもあんまり詳しくないんで、
正しいのかどうかよくわからない。

--- orig/org/apache/tapestry/contrib/ajax/XTile.script 2005-11-08 13:09:29.000000000 +0900
+++ new/org/apache/tapestry/contrib/ajax/XTile.script 2005-11-08 13:09:45.000000000 +0900
@@ -88,7 +88,7 @@

function quoteUrl(text)
{
- return escape(text).replace(/\+/g, '%2C').replace(/\"/g,'%22').replace(/\'/g, '%27');
+ return encodeURIComponent(text).replace(/\'/g, '%27');
}

function extractData(response)

これでとりあえず動いてるんで、
そのうちきちんと調べようと思ってそのままになってた。
誰か詳しい人教えて。
っていうかスレ違いか。
もうTapestryの話じゃないね。
709デフォルトの名無しさん:2006/02/24(金) 20:25:51
http://pcweb.mycom.co.jp/news/2006/02/23/365.html

デザイナとのやり取りを考えればStrutsやJSFなんて目じゃないのに
日本語資料がないだけに流行らんね

結局>>361
710デフォルトの名無しさん:2006/02/24(金) 22:16:33
TapestryってTomcat無くても動くの?
711デフォルトの名無しさん:2006/02/24(金) 23:14:05
Resinとかで。
712デフォルトの名無しさん:2006/04/02(日) 22:18:13
Tapestry 4.0.1 released
713デフォルトの名無しさん:2006/04/14(金) 10:40:38
OGNL自体の解説サイトってないですかね?
714デフォルトの名無しさん:2006/04/14(金) 11:10:48
http://www.ognl.org/ じゃダメですか?
715デフォルトの名無しさん:2006/04/14(金) 11:22:19
ありがとう。
具体的なサンプルコードが見たいんだけど、
探してもあまり無いんだよね。。。
とりあえずこれまで探したURLを。

ttp://d.hatena.ne.jp/winebarrel/archive?word=OGNL
ttp://t-katochin.air-nifty.com/nongreasy/2005/03/ognl.html
ttp://amateras.sourceforge.jp/cgi-bin/fswiki/wiki.cgi/free?page=OGNL

OgnlContextの具体的な使い方とか、そういう情報を探してます。
716デフォルトの名無しさん:2006/04/23(日) 21:57:35
相棒のCayyeneはどうなってますか?
717デフォルトの名無しさん:2006/06/03(土) 18:15:10
TapestryってStrutsと統合して使用できるの?
ActionとかActionFormは使うけど、ビューはHTMLのまま(JSP使わない)というような感じに。
718デフォルトの名無しさん:2006/06/03(土) 22:36:18
>>717
無理です。Tapestryの構造は、プレゼンテーション層だけを切り離して使うことはできません。
Strutsと統合したいならSeasarプロダクツをお使いください。
719デフォルトの名無しさん:2006/06/04(日) 00:20:27
S2Containerを介して両者を連携させるなんて余計ややこしいことになりそうなので現実的ではないな。
720デフォルトの名無しさん:2006/06/04(日) 09:44:18
>>719
Mayaaなら、S2Containerとは関係なく使えるよ。
721デフォルトの名無しさん:2006/06/04(日) 10:17:09
S2信者うぜえな
722デフォルトの名無しさん:2006/06/04(日) 10:28:42
Mayaaは実装上S2とは関係ないからS2非信者でもおっけ。
ホームページも独立してるしね。
723デフォルトの名無しさん:2006/06/06(火) 09:44:44
>>717

strutsのコントローラーを使いたい、だけどJSPは嫌だ。

君の言う趣旨がそーゆーことなら、Freemarke、あるいは
velocityをviewに採用するというのが一番素直な方法だと
思う。

スレ違いスマソ
724デフォルトの名無しさん:2006/06/26(月) 06:57:34
21 June 2006 - Tapestry TLP move
Tapestry has moved to a TLP at its new address, http://tapestry.apache.org.
725デフォルトの名無しさん:2006/07/15(土) 01:04:24
今更だが、日本でTapestryが普及しない2番目の理由に(もちろん1番目は日本語ドキュメント)、
付属してくるサンプルがバギーで使い道がないモノだらけだから、てのがあると思うの
726デフォルトの名無しさん:2006/07/15(土) 13:50:25
それだと日本とそれ以外とで違う理由にはならないような……。
727デフォルトの名無しさん:2006/07/15(土) 13:53:47
>>725
IT業界とかJavaとか、そんなんが流行ってないような。
728デフォルトの名無しさん:2006/09/09(土) 10:14:36
浮上
729デフォルトの名無しさん:2006/09/23(土) 12:39:43
age
730デフォルトの名無しさん:2006/10/02(月) 22:36:42
StrutsやJSFは捨ててこっちに移ることにした。
疎結合マニアの俺としては、あれらは肌に合わない。
デザイナに「はぁ?何そのルールw」とか
いわれることを想像すると泣きたくなっちゃうしね。
731デフォルトの名無しさん:2006/10/19(木) 21:00:55
age
732デフォルトの名無しさん:2006/10/20(金) 22:09:03
ゴメス チェンバレンです・・・
4.1から、unstableの文字が、取れたとか取れないとか・・・
733デフォルトの名無しさん:2006/12/10(日) 02:19:41
734デフォルトの名無しさん:2006/12/23(土) 17:56:42
来年の今ごろも新スレ移行してはいないよかん
735デフォルトの名無しさん:2006/12/24(日) 11:46:20
これとかWicketの方がVisual Web Packに向いてると思ったんだけど
それっぽいツールとか出てないのかい?for HomepageBuilderみたいな感じで。
736デフォルトの名無しさん:2007/02/06(火) 18:15:36
tapestry5のPreviewが出ていたけどどうなん?
737デフォルトの名無しさん:2007/02/06(火) 19:50:41
>>736
かわいそう
738デフォルトの名無しさん:2007/02/08(木) 10:57:57
>>736
maven2ですぐに試せるから試してみるといいよ。
http://tapestry.apache.org/tapestry5/tapestry-simple/ とか
http://tapestry.apache.org/tapestry5/t5-tutorial.pdf に書いてあるけど、

mvn archetype:create -DarchetypeGroupId=org.apache.tapestry -DarchetypeArtifactId=tapestry-simple -DarchetypeVersion=5.0.1 -DgroupId=org.example -DartifactId=myapp -DpackageName=org.example.myapp -Dversion=1.0.0-SNAPSHOT

cd myapp; mvn jetty:run

http://localhost:8080/myapp にアクセス。
739デフォルトの名無しさん:2007/02/19(月) 21:24:04
Tapestry5最高!
740デフォルトの名無しさん:2007/02/26(月) 15:08:38
何がどう最高なの?

いまやStrutsどころかJSFやSeasar2がでてきて
わけわかめな俺によさを教えてくださいな
741デフォルトの名無しさん:2007/02/26(月) 15:10:08
うーむ、スレがたってから3年も経っているのか。

当時、これをネタに卒論で研究している香具師いなかった?
742デフォルトの名無しさん:2007/02/26(月) 15:43:51
>>10
はじめ何のことだかぜんぜんわからなかった。
ディスクシステムか!

なんでそんなもんが!
ぐぐったら意味不明なクソゲーだ


ゲーム内にtapestryという単語がでてくるわけね

立花理沙って誰だ?

743デフォルトの名無しさん:2007/02/26(月) 15:44:28
age
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デフォルトの名無しさん: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();
    }
  };
}
747745: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に戻してたんだけど、そういうことだったのか。
748Tapestry5ページ更新情報:2007/03/31(土) 03:20:22
Last Published: 29 Mar 2007
@Inject使用方法変更
@Path,@Serviceアノテーション追加
749Tapestry5ページ更新情報:2007/05/03(木) 16:02:25
750デフォルトの名無しさん:2007/05/25(金) 18:08:48
age
751デフォルトの名無しさん:2007/06/07(木) 22:41:40
age
752Tapestry5ページ更新情報:2007/06/30(土) 21:14:52
753745:2007/08/18(土) 17:40:55
寂れてるけど一応書いとく。

@Meta("tapestry.response-encoding=Shift_JIS")

をページクラスにアノテーションすれば良くなったので、
AppModule.javaいじる必要なくなった。
754デフォルトの名無しさん:2007/09/06(木) 14:48:29
apache projectにturbine、tapestryとあるけど、
それぞれどう違うの?
両方ともプレゼンテーション層のフレームワーク?
755デフォルトの名無しさん:2007/09/12(水) 16:56:09
Tapestryで、WicketとかTeedaみたいに
HTMLとロジックを完全に分離してしまう事って可能ですか?
756デフォルトの名無しさん:2007/09/15(土) 09:31:44
WicketとかTeedaがTapestryみたいにHTMLとロジックを分離できる。じゃないのか?
そしてTapestryはWebObjectみたいに・・・となるわけだが。
757デフォルトの名無しさん:2007/09/15(土) 20:41:28
>>756
確かにTapestryの方が「生HTMLっぽいTemplate」を使う考え方は
早かったかもしれませんが、WicketやTeedaほどキレイに分離できるのでしょうか?

テンプレートとして使用するHTMLが、
それ単体でブラウザから見ることができるのか?

というとこまではできそうに無いなあ、と思っているのですが。
758デフォルトの名無しさん:2007/09/15(土) 21:40:17
>>757
それは普通にできるでしょ。それらコンポーネント方式組はほとんど兄弟。
正直、

・デザインテンプレート部分
・裏側のコンポーネントモデル
・それらを結合させるグルー言語

は標準化して、エンジンがJavaで書かれてようがなんだろうとOKにして
欲しい。汎用言語と違うグルー言語記述を導入した時点でベースエンジンから
完全に切り離し可能になってるわけで。

759デフォルトの名無しさん:2007/09/15(土) 21:42:29
「〜ほどキレイか」という部分については、Tapestryの方が今となっては
シンプルさに劣ると思うけど、それはHTML/ロジック分離の所にはあんま
影響してないと思う。
760757: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」
http://www.thedailytube.com/bestoftoday
762デフォルトの名無しさん:2007/10/12(金) 00:28:28
いつのまに5まで!
763デフォルトの名無しさん:2007/10/26(金) 23:54:18
5.0.6
764デフォルトの名無しさん:2008/01/07(月) 20:07:11
http://www.kensayoyaku.mlit.go.jp/CarAnswer/app
国交省の車検予約しようとしたら偶然見つけた
HTMLのソースを見るとTapestry使ってるっぽい。

それにしてもTomcatモロ出しとは。。。
765デフォルトの名無しさん:2008/01/07(月) 23:32:36
作った奴このスレ絶対読んでるだろ。
小規模案件だから実戦体験を兼ねて使ってみたのかな・・・
766デフォルトの名無しさん:2008/02/01(金) 19:24:41
JSF2.0の策定にTapestryの中の人が誘われてるって話はどうなったんだろう。
中の人はアンチJSFらしいけど、ことがうまく運べば素晴らしい相互運用性が得られるね。
767デフォルトの名無しさん: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デフォルトの名無しさん: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デフォルトの名無しさん:2008/04/04(金) 22:58:37
>>766
ソースは?
771デフォルトの名無しさん:2008/07/09(水) 14:48:24
Tapestryが使われている日本語のサイトはあるのか?
特にTapaestry5
772デフォルトの名無しさん:2008/07/09(水) 20:16:43
>>771
764にあがってる国交省の車検予約。
5ってまだベータだよね?さすがに無いんじゃね。
773デフォルトの名無しさん:2008/09/26(金) 16:58:24
tapestry5.0.15がリリース。
まだベータだが。
774デフォルトの名無しさん:2008/11/04(火) 14:33:37
Tapestryが日本で使われない理由はやはり>>361ですか?

自分が働いている企業は主にTapestry4.1-hibernateを使っています。
学生でもあるので卒業後日本に戻る気ですがTapestryでは仕事もらえそうにないですね。
個人的に好みなのに。残念。
775デフォルトの名無しさん:2008/11/05(水) 00:53:41
4→5の動き方が気になりすぎて選択できない
776デフォルトの名無しさん:2008/11/15(土) 01:58:35
まだリリースされていないけどTapestry5は行けていると思うよ。
Wicketに比べるとコード量もだんぜん少ないし。
やはり日本語ドキュメントが無さ過ぎる感じがする。
ttp://kuramo.ch/tapestry5/ja/
にがんばってもらいたいのだが...
777デフォルトの名無しさん: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のサンプルを見れば英語に自信がなくても作れるだろう
http://jumpstart.doublenegative.com.au:8080/jumpstart/
781デフォルトの名無しさん: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デフォルトの名無しさん: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デフォルトの名無しさん:2008/11/19(水) 18:30:25
Springとはtapestry-spring使えば簡単に連携できる。
Guiceとの連携はだいぶ前にMLで話題になってたようだけどよくわからん。

>>784
必要性がない、は言い過ぎではないかしら。
786デフォルトの名無しさん:2009/02/15(日) 20:44:29
Tapestry5.1はリリースされているTapestry5.0.8と比べて何が良いかな?
787デフォルトの名無しさん:2009/02/17(火) 21:17:58
788デフォルトの名無しさん:2009/02/20(金) 11:57:15
Tapestry5.0.18の日本語の情報がなさすぎだ

789デフォルトの名無しさん:2009/02/21(土) 21:30:03
>>788
ttp://kuramo.ch/tapestry5/ja/

はどうだ?
5.0.18に対応していなが良く訳している。十分だろう。
790デフォルトの名無しさん:2009/03/25(水) 00:18:08
Tapestry5の勉強会をするらしい。

ttp://d.hatena.ne.jp/yone098/20090321/1237731138
791デフォルトの名無しさん:2009/03/25(水) 11:29:16
792デフォルトの名無しさん:2009/04/01(水) 11:34:36
■Google、AppEngineでJavaのサポートを開始■
http://jp.techcrunch.com/archives/20090326get-ready-for-java-on-appengine/
793デフォルトの名無しさん:2009/04/09(木) 14:38:00
>>792

きたー
Tapestry5万歳!
794デフォルトの名無しさん:2009/04/09(木) 19:56:30
>>793
AppEngineってTapestryなの?
795デフォルトの名無しさん:2009/04/26(日) 21:13:15
flockというRSS ReaderがTapestryで作られていた。
796デフォルトの名無しさん:2009/05/01(金) 00:46:37
flock設置してみた
http://flock.morphexchange.com/
797tor.rootkit.de:2009/08/17(月) 17:57:42
自動焼人 ★ = 自動保守 ◆KAWORUKOFI = 自動保守#K9K?_D[L

名言集 その1
『アパッチ砲はワシが作った』

http://jbbs.livedoor.jp/bbs/read.cgi/internet/134/1229674638/5062
自分の管理するしたらばで借りた掲示板にて

> 5062 :自動保守 ◆AOIMAD.NZM [] :2009/08/16(日) 00:46:29 ID:nQYgq9jg0
> そもそも、アパッチ砲っていうのは、私が指揮官になった時代に私の先輩たちが導入して
> 先輩たちが命名したもの、っていうかまぁ、そういう砲は今まで存在してないから
> 名前つけなくちゃいけないしw
>
> ってことで、使っているうちに広まった名前なので、それが正式名称になるんじゃないかと。
>
> http://www.paradisearmy.com/doujin/pasok_apache.htm(俺の先輩が命名)
> http://www.paradisearmy.com/doujin/pasok_hping.htm(俺が命名?)

※注 「アパッチ砲」の正式名称は「Apache Jmeter」で、もちろん自動焼人の先輩が作ったものではありません


----------------------------------------------
この自動焼人 ★メールマガジンの配信停止をご希望される方は
http://qb5.2ch.net/test/read.cgi/sec2chd/1250169591/
にて自動焼人 ★までご連絡ください
798デフォルトの名無しさん:2010/12/28(火) 05:22:20
弾幕薄い
799デフォルトの名無しさん:2011/04/30(土) 15:36:51.24
2011年にようこそ(本当に流行らなかったな・・・
800デフォルトの名無しさん:2011/05/01(日) 18:02:59.88
wo事態が消えちゃったからな。
801天使 ◆uL5esZLBSE :2011/07/02(土) 20:30:01.48
↓↓↓
「「「「「「「 ■Google、AppEngineでJavaのサポートを開始■ 」」」」」」」(キリッッッッ!!!キリッッ!!!!!!
↑↑↑(キリッッきリ!!


ゴミって意味わかってんのかなこいつら
802天使 ◆uL5esZLBSE :2011/07/04(月) 22:39:25.94
>>794
↑↑↑ハッアアアアアアアアアアァアァアアァアアアアアアアアァアアァ??????????????

死ねよゴミ
ゴミグラマって気持ち悪いんだな
803デフォルトの名無しさん:2011/11/22(火) 19:13:28.01
sage
804デフォルトの名無しさん:2011/11/23(水) 21:24:40.16
Apache的には、Apacheプロジェクト内のJavaのWebフレームワークって
何が本命なのかね
805 忍法帖【Lv=25,xxxPT】 :2012/04/23(月) 10:56:29.89
k
806デフォルトの名無しさん:2012/06/03(日) 16:30:41.98
2003年からTapestryスレあったとは。
こっちにもコピペ

630 名前:デフォルトの名無しさん[sage] 投稿日:2012/06/03(日) 16:25:12.45
>>1
Java用Webアプリケーションフレームワークの総合スレもできたよ

【Java】 Java Web Application Framework 総合
http://toro.2ch.net/test/read.cgi/tech/1338707919/
807デフォルトの名無しさん:2012/06/24(日) 05:41:46.42

1000 :uy ◆xVOGOO9ev6 :2012/06/23(土) 12:35:29.68
俺は動的言語の問題点をいくつあげてもwwwww
静的言語よりはマシだと確信してるわwwwwwwwwwwwwwwwww


静的言語の問題点をなぜ挙げないかって??

見放してるから、問題点を指摘さえしないってことだよwwwwwwwwwww
気づけバカwwwwwwwwwwwwwww
808デフォルトの名無しさん:2012/08/08(水) 11:04:34.18
a
809デフォルトの名無しさん:2013/04/21(日) 09:42:13.13
            _
        r-、' ´   `ヽr-、
       ィ7 /l: ハヽハ トヾ    駄スレを沈めることはこの俺が許さん!
        '|l |'´_` ´_ `| ||    信念に基づいて行動する、
        | |´ヒ}   ヒ}`! l |   それを人は正義と言う。
   __ノ゙). 从 l,  _'_.  |从   今俺が行ってることは、上げ荒らしではないっ
 ,_'(_ ノ_ヽ ヾl.> - ,イ;リ     正義という名の粛清だぁ!
 { f:テ} {'f:テ}',/\ヽ--//ヽ    
 ヽ,r─‐ 、ィ .、、 i l>Y<! i '、    バーニング!
 / iゝ_ノ iヽ /l   |l  l   ',
 lンヽ/ムノじ
810デフォルトの名無しさん:2014/02/28(金) 03:53:10.11
>>799
これから流行るかもしれないじゃん
811デフォルトの名無しさん:2014/02/28(金) 03:55:59.98
TapestryはFaceletsの構想上の親でしょ
役目は果たしたんだから恥じることなく畳めばいいよ
812デフォルトの名無しさん:2014/03/01(土) 06:41:33.42
タペストリーって名前がかっこいいな
813デフォルトの名無しさん:2014/03/02(日) 17:54:41.86
>>804
Webフレームワーク?
814デフォルトの名無しさん:2014/03/05(水) 21:55:33.44
好きなんだけどな。
815デフォルトの名無しさん:2014/03/08(土) 21:03:38.91
好きならもっと布教しろよw
816デフォルトの名無しさん
★2ch勢いランキングサイトリスト★

☆ +ニュース板
・ 2NN
・ 2chTimes
☆ +ニュース板新着
・ 2NN新着
・ Headline BBY
・ Unker
☆ +ニュース板他
・ Desktop2ch
・ 記者別一覧
☆ 全板
・ 全板縦断勢いランキング
・ スレッドランキング総合ランキング
☆ 実況板
・ 2勢
・ READ2CH
・ i-ikioi

※ 要サイト名検索