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
まずそれについて簡単な説明ヨロ! 期待してるぜ!
4 :
デフォルトの名無しさん :03/10/31 02:46
Velocityとの併用はできまっか? JBOSSとの併用、 Turbineとの併用、JSFとの併用もできまっか?
マルチポ (ry
>>4 TapestryはTomcatから見ればただの1サーブレットなので、
他のサーブレット、フレームワークとの共存?(同じWEBアプリ内で使う意味)はもちろんできるよ!
ただTapestryはURLをフレームワークが生成するという概念なので、
Tapestryアプリ(ページ)からStrutsアプリ(ページ)へのリンク
特に動的パラメータつきのサーブレットを呼び出したりするのは、
知っていれば簡単だけど、ちと習得に時間がかかるかな。
逆(StrutsからTapestryへのリンク)は拡張タグlibがついているので簡単だよ!
ただしTapestryテンプレートの中にJSPのような<% %>は埋め込んでも無視されます!
7 :
デフォルトの名無しさん :03/10/31 14:00
>JakartaのTapestryフレームワーク使ってますか? >日本ではなかなか情報が手に入らず、本家のドキュメントも >古いバージョンのままなので、使いたいと思って挫折した人多くありませんか? こういう状況では使いたいと思っても「挫折」という感覚はないなぁ。 俺は explorer ではない単なるへたれなので、世にこなれてくるまで放っておく。 こなれてれば英語でも開発ストップしてても使う。
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を選択しないといけないようなアプリってどんなのよ? スレ立てるほどの需要があるとは思わないが
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がページ単位で選べるのだったらいいが
それは難しいだろう。
>>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とか当然使えないと考えての質問です
共存は出来ないんでしょ?
●●●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.独自コンポーネントの作成
以下を知りたい人は私が本を出版するのに賛同して下さい。(^_^; 有料情報 ○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
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で貼り付けるけど?
>>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 うちの会社はデザイナーいないよ。
外注先デザイン会社の営業の人とは話するけど、
デザイナーとは直接コンタクト取れないね。
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
80 :
デフォルトの名無しさん :03/11/10 02:26
81 :
デフォルトの名無しさん :03/11/10 08:16
Tapestryはほかにもどんな用途に使えるんだろう。 すべてのVelocityの機能をTapestryだけで実現することも可能なんだろうか? Velocityを使った、EclipseのSimteekプラグインのように プログラミング時のソースコードテンプレートに使える用途はあるのか?
82 :
デフォルトの名無しさん :03/11/10 23:27
84 :
デフォルトの名無しさん :03/11/11 20:30
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
91 :
デフォルトの名無しさん :03/11/14 21:27
92 :
デフォルトの名無しさん :03/11/15 01:39
>>89 いやだから、『簡単』Velocityなのです
93 :
デフォルトの名無しさん :03/11/15 19:49
TapestryとVelocityを比較するとTapestryの方がよく見えてきたぞ
96 :
デフォルトの名無しさん :03/11/15 21:36
ベム、ベラ、ベロシチィ! 妖怪人間! ジャーン♪
97 :
デフォルトの名無しさん :03/11/16 22:13
98 :
デフォルトの名無しさん :03/11/17 20:18
今後比較予定だってー www.spacewalker.tv/tapestry/comparison.html
99 :
デフォルトの名無しさん :03/11/17 22:02
100 :
デフォルトの名無しさん :03/11/18 09:15
キリ番ゲット!
Tapestryとファンをダイレクトに結ぶ会員制オンラインファンクラブ「Tapestry club」。 ここでは、川畑・堂珍が積極的に参加して、いろんな企画をスタートさせていきます。
JAVA WORLDのサンプルのZIPは解凍しようとするとディレクトリ名が変だ?
103 :
デフォルトの名無しさん :03/11/18 17:41
>>102 ああ、やっぱり?
おれもディレクトリ名が
「ケミストリー」になる
appディレクトリの前にゴミディレクトリがあるみたいだし。 解凍してしまったこの変なディレクトリ消すのめんどくさ。
サンプル動いた。(^^)
2.JSPの欠点 JSPにはさまざまな長所、短所が指摘されているが、Tapestryと比較することに焦点を絞った場合、以下の点が欠点として強調される。逆にこれらの事項の裏返しがTapestryにおいて長所と言える。 ●JSPファイルにはさまざまな言語(HTML,JavaScript,スクリプトレット,ディレクティブ,拡張タグ)が同時に含まれ、デザイナーはHTML,Javascript以外、特に頻出するスクリプトレット、拡張タグを理解できない ●JSPのスクリプトレットの書き方に標準がなく、プログラマーの能力差、経験差が大きく現れる ●HTMLタグから拡張タグへの変更が機械的で単調な繰り返しが多い ●JAVAはオブジェクト指向だが、JSPにはオブジェクト指向を感じない、デザインの再利用性が低い
107 :
デフォルトの名無しさん :03/11/20 17:31
WEBDB vol16見ながらやってるんだけど、
<input jwcid="@TextField" value="ognl:echo"/>
とか書いたら、
<input type="text" name="$TextField" value=""/>
に変換された。
これってjavascript使いたいときどうすんのさ。
name属性の値はテンプレの段階じゃわからん。
>>1 は責任もって教えること。
109 :
デフォルトの名無しさん :03/11/20 19:09
>>108 <input type="text" jwcid="hoge@TextField" value="ognl:hoge"/>
とかすると、
<input type="text" name="hoge" value=""/>
になる。これ常識w
Form項目はすべて名前付けたほうが気持ち(・∀・)イイ!!
WEBDB vol16とかJAVA Worldの人は古いTapestry2.xの解説してるから、
Tapestryのサンプル見た方が早い場合もあるな
書くの面倒だけど、TapestryのJavaScript機能使えば別の解決法もある
それもTapestry付属のサンプル見るよろし
110 :
デフォルトの名無しさん :03/11/20 23:49
>>108 早く返事しろよ
∧_∧
( ´∀`)つゴルァ
>>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
<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
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の下にフラットに置く方が、
デザイナーさんにファイルを送るときにまとまってて都合がよいよ
>>137 なるほど。サンクス。
ボチボチサンプルアプリでも作ってみるかね。。
139 :
デフォルトの名無しさん :03/11/30 02:05
140 :
デフォルトの名無しさん :03/11/30 09:34
俺達のTapestryは幻だったのか?
画面A - <submit> - submitActionメソッド - <処理OK> - <OK画面> |-<処理NG> - <NG画面> こんな処理を行ないたいのですが、参考になるサンプルなどを 教えてもらえませんか? submitActionメソッドの中で遷移先のHTMLファイルを切り替えたいのです。
自己レスすまそ。 requestCycle.activate("OkPage"); requestCycle.activate("NgPage"); で出来るな。 これからはヅラ直してから質問しまつ。
>>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
折角書いたのを捨てるのもったいない気持ちも分かるw
それも貧乏性だろ>もったいない
153 :
デフォルトの名無しさん :03/12/06 12:49
びんぼー(T_T)/
そもそもビンボーでなければ、オープンソースなんて使わないわけで。
>>136 その配置だとHTMLファイルを書き換えるたびに
WEBコンテナを再起動しないとだめじゃない?
156 :
デフォルトの名無しさん :03/12/08 01:58
つづれおり、いいよね。
ユーガッタフレンド〜♪
159 :
デフォルトの名無しさん :03/12/09 00:48
>157 キャロルキングだろ。たぶん
161 :
デフォルトの名無しさん :03/12/12 00:25
age
162 :
デフォルトの名無しさん :03/12/13 16:10
163 :
デフォルトの名無しさん :03/12/14 23:24
/ ̄ ̄ ̄ ̄\ ∧_∧ | ほげらっちょ! | (;∀;∩)< ほげらっちょ! | (⊃ ) | | 人 ヽ´ \____/ し'(__)
タペストリ
Tapestryってなんて読むの?
テープストーリー
167 :
デフォルトの名無しさん :03/12/17 21:29
つまんねぇ
168 :
デフォルトの名無しさん :03/12/20 03:07
169 :
デフォルトの名無しさん :03/12/27 00:54
age
170 :
デフォルトの名無しさん :03/12/28 01:57
Tapestry のよさは、デザイン分離がクローズアップされがちだが、
もっとグレイトなのは、HTTPというプロトコル上ステートレスかつ
URL の連鎖で画面のコンテキストを追っかけるつくりになっちゃう
ところを、画面の構成コンポーネントのイベントハンドラで作り
こむ、まるで Swing みたいな設計をするところだと思うな。
その点、Struts とも Velocity とも比較するものではなく、JSF
と比較すべき存在だと思う。じゃなきゃ、Swing とかとの比較だ
な。まあ、クソスレの住人にはわからんだろうが。
このスレはめずらしく
>>1 がまともかと思ったら、威張るだ
けで根性なしだったのがザンネンだ。マジにこの時期にTapestry
で成功事例もってるなら、金払っても話が聞きたかったものを。。
まわりもおだてて話させりゃいいものを、自分が理解もしていな
いのにヤヅでつぶしちまった。ほかに、Tapestry の読むに耐える
板はどっかにないもんかね?
>>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
178 :
デフォルトの名無しさん :04/01/01 12:58
manning のアーリーアクセス+ペーパーバック後郵送の サービスで「Tapestry in Action」買った!もちろん英 語だけど。結構いいこと書いてある。俺は買いだと思う。
>>178 はじめの2章読めるだけで、今買う価値があるの?
はじめ2章にどれだけ有用な情報があるのかレポートよろ。
181 :
デフォルトの名無しさん :04/01/06 23:32
182 :
デフォルトの名無しさん :04/01/08 20:47
age
183 :
デフォルトの名無しさん :04/01/15 09:49
185 :
デフォルトの名無しさん :04/01/18 15:35
>>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
193 :
デフォルトの名無しさん :04/01/29 10:29
195 :
デフォルトの名無しさん :04/02/03 01:55
Tapestry3.0beta4ってどうやって使うの?
196 :
デフォルトの名無しさん :04/02/08 12:45
197 :
デフォルトの名無しさん :04/02/11 16:22
パペストリで、画面遷移とかってどういう仕組みになってるの? いいサンプルかチュートリヤルある?
198 :
デフォルトの名無しさん :04/02/12 22:40
>200 いただきました。ありがとう
和訳がおかしいところも多いと思うので、 英語にオタッシャクラブなヤツがいましたら、改修オナ貝。
ダウソロードできないよー
消えちゃったかな? 他にどこかよさげなウプロダある? 駄訳をちょっとだけ修正したのを再ウプしたひ
208 :
デフォルトの名無しさん :04/02/14 01:05
>>198 iriaで試したら落とせました。
ありがd
落とすには Web 割れなみのテクが必要です。
あっ、家にパワポないの忘れてた。。。 誰か PDF にしてくだっさいぃ。。。
>>211 PDF ありがd! ますます Tapestry ファンになった。
Java野郎、気に入った。
213 :
デフォルトの名無しさん :04/02/14 22:44
215 :
デフォルトの名無しさん :04/02/14 23:27
>>214 やっぱ、できないんだけど、うちのネットワークのせい?
216 :
デフォルトの名無しさん :04/02/14 23:28
う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/ 向けでつね。。
>>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
226 :
デフォルトの名無しさん :04/02/21 21:27
Jakartaプロジェクト徹底攻略2の「Tapestry徹底入門」P71で、 ----- なお、アクセッサメソッドのうちsetXXXXX()メソッドの引数は、 どんなデータ型でもオブジェクト名(変数名)をvalueとしておかなくてはなりません。 ----- と、書いてあるんだけど、意味がわかりません。 引数の変数名に決まりがあるなんて、JAVAではありえないんだけど? 著者の沖林氏、この文の意味を解説もしくは修正してください。
それは「Javaでは」ってよりも、 タペ自身が動的にアクセッサメソッドを処理するための ルールってことではないの?
>>226 リフレクション使えばありえんことは無い。
ってかリフレクションはフレームワークでは結構使われるでしょ。
で、Tapestry ではどうなのってのは知りまそん。
Mevericは?
231 :
デフォルトの名無しさん :04/02/23 19:10
>>229 自由にアクセスしてもらっちゃ困る全ページにvalidateかValidateListenerつけて
セッションかVisitを確認して、もし認識できなかったらログインページに
PageRedirectExceptionすればよろし。
AbstractPageをextendsしたAbstractAuthPageでも作ると楽できるっす
>>231 なるほど、そういう工夫が必要なんだね。
WOを参考にしてるとはいえ、やっぱり結構違うな〜。
233 :
デフォルトの名無しさん :04/02/27 03:16
>>198 最近このスレ知りました。
PDFも一回うpしてもらうことかのうでせうか。。?
>>233 漏れがパワポの駄訳&PDF変換してみたんだけど、
こんなクソ資料見るよりも、「Jakartaプロジェクト徹底攻略2」を買ったほうが
なんぼもマシ(w
>>234 そうですか。「Jakartaプロジェクト徹底攻略2」は買いました。
あれだけだとなんか痒いところに手が届いてない感じがして。
今までずっとStrutsだったので乗り換え考え中です。
HTML テンプレートから Page クラスのアクセッサのコードを生成したり できますか?
237 :
デフォルトの名無しさん :04/03/05 05:30
ああ、キャロル=キングね。懐かしいなぁ。 You've gotta friendとか大好きだよ。
239 :
デフォルトの名無しさん :04/03/06 16:57
You've gotta hivemind
JSFとどっちがすごいの?
Tapestry のほうがすごい。 これで満足か?
242 :
デフォルトの名無しさん :04/03/08 21:02
@ShowErrorって、Strutsでいう<html:errors />なんだろうけど saveErrors() に対応する方法がよくワカラン。 とりあえずdelegateを定義して、delegate.record("エラーですよ", 〜) にしてるけど 公式ドキュメントすら作りかけだからなぁ。 workbench.warを分析しつつ悩む俺。
なんか *.page 書くの面倒だね。もうちょっと簡単にならないものだろうか。 ページ用のクラス内のメソッド名の接頭辞と、jwcid の接頭辞を関連付けて、 さらにコンポーネントタイプもその接頭辞で決め打ちしてしまって *.page の コンポーネント宣言は必要なし、とかにならないかなあ。 使い始めてまだ間がないので、おかしなことを言ってたらすいません。
>>244 どういう事を望んでいるのかいまいち分からんけど
spindle 使ってもだめなん?
まさに 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
>257 んーーー。 とりあえず、Tutrial印刷して読んで見るわ。 俺は、こういうの好きだけど。
とりあえずチュートリアルは読んだ。 面白い取り組みだな。こういういたせりつくせりなのは日本人向けだと思う。 ただ、まぁまだ全然できてねぇじゃん?文書とか。サイトとか。 3ヵ月後を楽しみにしとくよ。
>>255 レスさんくす。
例のJakarta本2にはValidateについて
書かれてなかったから気になってた。
あとは例外処理だけかな、気になるのは。
一応、どこかに書かれたHelloworldを試してみたけど
なかなか簡単に出来た。で、気になってきた。
あと S2 の作者は 2chネラーみたい。ML の中で もまいら自由に書き込め とか。
S2のRC1でたね
3.0-rc-1でてる
Spindleもrc-1にあわせた内容(Ver3.041)になってるな。 updateサイトでいかんとVerUPできないが。
すまん、教えてくれ。 >249 みたいにsubmitで飛ばす時、外部にすっとばす(Yahoo!とか)場合はどうするんだろう?
267 :
デフォルトの名無しさん :04/03/23 01:33
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
復旧おめでとう(・∀・)イイ
Jakartaプロジェクト徹底攻略2の「Tapestry徹底入門」のサンプルが動かないよ・・・。 誌面の手順どおりに作成しているのに、404だ。 Tomcatのweb.xmlにも設定が必要なの?
274 :
デフォルトの名無しさん :04/03/30 22:17
復旧おめでとう(・∀・)イイ
ognlとjavaassistが無かったことが原因だった。 いつ、別パッケージになったの? ていうか、Spindleの方は全部はいっとるやんけ!
保守age
3.0RC3出てるね
278 :
デフォルトの名無しさん :04/04/13 08:19
>>275 Tapestry配布アーカイブ内のlib以下の全jarファイルをコンテナのクラスパス中に含めろって記事に書いてあったような。。。
そんなおいらは記事のEclipse開発のところを参考に
プロジェクトフォルダをTomcatのコンテキストとして登録してみましたが、
Degesterの例外でTomcat4.1がTomcatプラグインから起動できなくなりました。
まだ枯れてない技術、か。
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
あと知名度&実績モナー 開発者から支持されても、採用にはちっともつながらん
公式ドキュメントも新しいのは殆ど無くて、「ソース読め」 って感じだと 中々追いかける時間も取れないので、採用しようにも判断しようがない。
やっと触り始めたーよ。 何とか Tomcat プラグインと Spindle で Eclipse から Tomcat を起動させて開発中のものを 動作させるところまできた。 Tomcat の設定で JVM オプションに -Dorg.apache.tapestry.disable-caching=true を追加して HTML のキャッシングもオフに。 Tomcat の再起動も少なくなって、これでガシガシ テストできるかな?
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つじゃないとめんどくさいのさ
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一本でいいだろう ただある程度の規模になったとき困る 書籍の執筆で扱うサンプル程度の規模じゃ面倒になるだけなのは当たり前
×呼ばれたテンプレートの内容 ○呼ばれたjwcidを持つタグの内容 スンマソン
311 :
デフォルトの名無しさん :04/05/07 01:55
StrutsやTapestryを一ヶ月の超短納期prjで採用するのが 間違ってる。。。
>>311 ばりばり使いこなせるメンバーのみの少数精鋭ならいいけどね・・・
>>307 WebObjects とか初心者に使わせることを考えたらどうだ?
凝ったことをしなければ非常に簡単に、しかも従っていれば
基本的にきれいな方向に持っていってくれる。そんなフレームワークが
できるならがんばって作ってもいいじゃないか。
そんな WebObjects のフレームワークに一番近い感じの
Tapestry age
>>309 なるほど。分かりやすい説明サンクスです。
>>311 メンバ全員が使うフレームワークを熟知してれば問題ないんでは。
見た事無いけど。
316 :
デフォルトの名無しさん :04/05/07 21:20
>>315 Tapestryに限らないと思うけどフレームワーク熟知してる人間は少数で
いいのでわ?
んで、フレームワークとかわかんないけどJavaはかけるぐらいのPGに
ちゃんとした仕様書渡してビジネスロジックを実装させる(もちろん単体テストも)。
あとはフレームワークわかってる人間が組み込めと。
教えてクンで申し訳ないのだけど、 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 コンサルって奴は一般的に何をしてくれるものなんですか?
フレームワークの使い方を教えてくれるの?
>>321-325 あとは、『保守作業がえらく簡単になりますぜ旦那』くらいかな。
Strutsは、開発はJSPガリガリ君より簡単になったけど、
保守はむしろ煩雑化した記憶しかない。。。
>>334 でも「Tapestry知ってる人」をアサインするのが大変なような・・・
>>334 JavaScriptをスクリプトレットで制御するようなJSPを書かれる心配が無くなるぶん
Tapestryには導入メリットがありますね。
なんてな・・・
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
344 :
デフォルトの名無しさん :04/05/20 03:51
>>317 なんだよ、そっちかよ
標準Documentに乗ってるじゃねーか
TemplateSourceDelegateを使ってsearch pathを変更することを期待してるのかと思って
必死でサンプル作って試していたのがショック!!!(T_T)
>>344 既知のTipsだとしても、それを情報として知るのと、
自ら試してみるのとでは理解度がまったく違うと思うよ。
決して無駄骨ではないと思われ。
その心意気に、敢えてGJ!!
>>344 それ、教えて欲しい。
サンプル公開きぼんぬ
おれはどっちでもいーや
見せてもらえるものは見せてもらった方がいいわね、アータ。
350 :
デフォルトの名無しさん :04/05/23 22:34
3.0リリースから、もう一ヶ月たつのに、一向に盛り上がってこないなあ。 やってるー? みんなー?
351 :
デフォルトの名無しさん :04/05/23 22:41
つうかFlashMXにはまってるからもういいや
所詮、ニッチなわけで
悪くないと思ったんだが、だめかなー。 Strutsより現実的でいいと思うんだがなー。
355 :
デフォルトの名無しさん :04/05/24 00:22
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
>>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を使うか使わないかなんて関係ないのにね。
タペのスレですよー。
話題は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はウンコ。
>>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と比較したヤシはおらんのか?
しばらく意味がわからんかった。 写真集について語るか。
>>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重ねるやつ?
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と同じ場所に置く
これだけよ♪この情報を信じなさい♪
やっぱり問題はドキュメントの量だけだな とくに日本語となるとまるでなし
実験してみた。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
457 :
デフォルトの名無しさん :04/06/21 00:31
TapestryはちゃんとXSLTに対応しているのかな? デザイナはCSSだけ使ってりゃええって最近思えるようになってきた。 HTML直打ちだけで済むって、そうは行かないケースも有るんだが。 デザイナはXSLTの事も考慮すべき。
458 :
デフォルトの名無しさん :04/06/21 11:42
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
ごめん。俺も意味わかんない。教えて。
そもそも狼人間などこの世にいないからな。都市伝説だ。 つまりデスマも都市伝説ってわけだ。
475 :
デフォルトの名無しさん :04/06/30 23:07
>>473 「人月の神話」っていう本の副題だよ。
まあ、もう結構昔の本だけど、機会があれば読んでみな。
おまいら現実を見ようぜw まぁいくら良い?道具を使ったところで、万能じゃないってことだな。
479 :
デフォルトの名無しさん :04/07/03 00:00
age
>>475 アフリカでオオカミに育てられ人間に拾われ人間の生活に戻そうとしたが
10歳で死んでしまった少女アヴェロン野生児か
481 :
デフォルトの名無しさん :04/07/04 01:14
482 :
デフォルトの名無しさん :04/07/04 19:36
age
ネタがないってことだな。
関連プログラムのネタならあるぞ。 HiveMind 1.0-βリリースとか、 O-R Mappingフレームワークスレでの、祭りの後のCayenneの静けさとか…。
>>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
>>501 すいません自己解決しました.
基本的にこんなこと気にしなくて良かったんだな.
しかしいつも選択されたかどうかを示すフラグが必要になる・・・?
そりはHTMLの仕様の問題であ?
504 :
デフォルトの名無しさん :04/07/29 15:45
age
505 :
デフォルトの名無しさん :04/08/04 02:13
sage
なんか詳しい資料少ないよねぇ・・・・ 一行ごとに色を切り替えて縞々模様に なるテーブル作りたいんだけど どうやって書けば良いんでしょ・・・・
507 :
デフォルトの名無しさん :04/08/04 16:57
508 :
デフォルトの名無しさん :04/08/07 21:48
age
509 :
デフォルトの名無しさん :04/08/15 15:27
Tapestryのおもしろい話題ないかね〜?
>>507 ありがとう
亀レスになってしまった
英語苦手ながら一通り呼んでみたのだけど,
縞々のリストは最初のサンプルに提示してる画面だけで,
その後チュートリアルとして実際作り出したら背景色なんて
気にしてないみたい…多分.
漏れの英語力が著しく欠如してるのかもしれないけども
とりあえずその問題は参照するたびにTrue/Falseが切り替わる
プロパティで何とかすることにしたよ…なんか納得いかないけど….
で,新しい疑問がでてきてしまったんですが
HTMLのプロパティに可変値を設定したいときはどうすれば良いのだろう
可変長リストの左側に柱をつけたいときとか
<td rowspan="xx">
とかやるよね.xxを件数に応じて帰る必要があるんだけども
どうやって指定すれば良いのか・・・.
OGNLかとおもったけど違うみたいだし
>>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になったわけだが。
なんか組み立てロボット。 ラジコンになった。
>>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チェックはできなくなりますよね?
これからはYSFですよ。
525 :
デフォルトの名無しさん :04/09/10 20:09:26
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.他の方法あったら教えて
真っ黒メディアFLEXは?
530 :
デフォルトの名無しさん :04/09/13 22:33:17
>528 3.1で対応する、とMLにあった。
>>529 Flex 面白そうだよね。JSP ライクなタグってのが気になるが...
トライアル版登録して試してみようかな。
flexって157万か・・・
535 :
デフォルトの名無しさん :04/09/17 03:42:06
age
536 :
デフォルトの名無しさん :04/09/22 00:11:01
age
537 :
デフォルトの名無しさん :04/09/22 09:39:09
539 :
デフォルトの名無しさん :04/09/23 02:25:00
Tapestry3.0.1が近いね
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 で使いたいのですが。
>>548 呼出しが setFoo, hogeAction の順なら、foo の内容を hogeAction で
使えるような気がするんですが、"bar の内容を hogeAction で使いたい" の
書き損じでしょうか...?
>>549 typo でした。
「bar の内容を、 hogeAction で使いたい」が、やりたい事です。
誰か教えてage!
>>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でしょうか。
Tapestryって、なんでいいものなのに広まらなかったんだろうね。
日本語の資料ってないの? JavaWorldの去年の特集くらい?
びっくりするくらいにない
タペ専門書ってないの? 「Jakartaナントカ」とか「オープンソースナントカ」みたいな本の1コーナーでしかないのかな。
Tapestry in Action の和訳版が出れば嬉しいんだけどねー。
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"> と出力するのは簡単ですよ
>>566 じゃあそういうクラスと jwc 書いて公開して。
ついでに
>>564 を解決する jwc も公開して。
568 :
566 :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>と出力させるようにしてるっす
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
ぶっちゃけ、Tapestry使ってる人って何人ぐらいのチームでやってるの?
575 :
デフォルトの名無しさん :04/11/17 20:24:41
>>574 マネージャ1人、プログラマー5人、デザイナーは外部なのでわからずです。
Tapestry in Actionを読み進めているが、 一人でTapeるのは無謀か…
ひとりならいいんじゃない?
>>576 オラ、1人で Tapestry + Cayenne なプロジェクト切り盛りしてるよ。
ってか絶対的なコーディング量を考えると、素の JSP + Servlet で
1人なのより楽でない? (最初の学習コストはちょっとあるけどさ)
せめてStruts+Hibernate+Springぐらいと比べてくれ。
比較の対象はPHPかもしれん
Groovystryはもう使い物になるの?
582 :
デフォルトの名無しさん :04/11/22 04:39:10
age
頑張ってるのはわかるけど、まだ冗長な感じがするなあ。
584 :
デフォルトの名無しさん :04/11/26 21:12:12
age
コンポーネントの 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
589 :
デフォルトの名無しさん :04/12/16 01:06:23
age
どうでもいい事なんだけど、Tapestry in action で作者が使っているHTMLエディタ、同じの使ってみたいと思って 調べてみたら、MacroMediaのHomeSite(しかも4.0)ですね。 もう販売中止で売ってないじゃん。。。
591 :
デフォルトの名無しさん :04/12/31 10:55:01
age
>> 592 そういえば、Intelli-JがTapestryに対応していたような。
>>594 ツッコミがくることを承知で書くが、とてもデザイナさんにEclipse入れて
その上でHTML書け、なんて言えない(汗)。
DWかGoLiveのExtensionみたいな形で使えればベターなんだが。
埋め込みくらいプログラマがやれって話もあるが、動的表示要素が
ほとんどなページとかだと、ある程度埋めてくれないとうざくて
やってられないー。
埋め込み作業はバイト君にやらせたいね
>> 595 たしかに、Webデザイナーとの分業を考えるのであれば、 DWとかにadd-onであってほしいですね。 そうすると少しは普及速度があがるかな。。 っていうかその前にドキュメントの充実が先って気がするけど。
いまさら普及しないだろ。
599 :
タペつかっているよ :05/01/12 15:56:38
601 :
デフォルトの名無しさん :05/01/20 21:07:04
HiveMind-1.1 alpha が出たわけだが
> 601 HiveMindって、なんかTapestryと関係あんの?
サクヤが同じ
604 :
デフォルトの名無しさん :05/01/23 00:56:31
age
>>602 Tapestry3.1 からは、HiveMind と統合とか、
内部処理に HiveMind の DI を利用するとか
そんな噂あり
606 :
デフォルトの名無しさん :05/01/23 20:43:42
(Tapestryではなく)Cayenne のサンプルの中に、Blogサンプルがあったよ
>> 603,605 なるほど。 そういえば、TapestryのWikiかなにかに3.1からDI機能が入るとか書いてあった気がする。 Springを勉強しないで良くなる代わりに、HiveMindを勉強する必要があるのかな。。
608 :
デフォルトの名無しさん :05/01/30 17:37:44
> 609 URL見たけど、どのあたりがTapestryに関係しているの?
611 :
デフォルトの名無しさん :05/02/16 21:59:17
Tapestry 3.0.2 Released
そしてNHL公式サイトは、 このまま無かったことにされそうな悪寒
日本語で語らないから日本で普及しないんだよ。
>>619 そのわりに Seasar は普及しないな。
わかりやすい日本語で語らないから日本で普及しないんだよ。
わかりにくい英語で流行ってるやつってあるのかな?
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
627 :
デフォルトの名無しさん :2005/04/16(土) 23:51:40
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
632 :
デフォルトの名無しさん :2005/05/13(金) 17:44:07
TapestryでFrameってどうやって使うの?
ビジュアルエディターってあるの?
>>633 Tapestryの良いところは、普通のHTMLエディタでTapestry用のVIEWを
作成できる事なんで、お好きなエディタを使えばいいんじゃないでしょうか。
それともObjectとのマッピングまでGUIで作成できるように
したいって事?(Spindleの機能じゃ足りない?)
連投でごめん。最近の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に対して複数のコンポーネントを適用できますか?
638 :
637 :2005/06/17(金) 23:58:58
>>637 これだけでは何なので。
自分で調べた限りではできないみたいで、ひとつのタグに複数のコンポーネントを適用しようとしたら、
どうしてもダミーのspanタグが必要みたいでした。
なにか裏技でもあれば教えてください。
639 :
デフォルトの名無しさん :2005/06/26(日) 02:40:31
日本語資料のまとめキボン
>>361 か
たしかに普及したライブラリはすべて日本語の資料がどこかにはあるからなぁ
643 :
デフォルトの名無しさん :2005/07/16(土) 16:04:13
4.0 Beta 2
644 :
デフォルトの名無しさん :2005/07/26(火) 12:05:16
4.0 Beta 3
Tapestry 4.0-beta-4の報告もないってことは、tapestryはこれにて終了ってことで。
けど、Spring フレームワークの開発者はこれから注目すべき フレームワークの中に Struts2 と並べて Tapestry を挙げていた。 盛り上がってないのはもしかして日本だけ?
>>648 いや、
>>643 でBeta2の報告、
>>644 でBeta3の報告の書き込みがあって、なんでBeta4の書き込みがなかったのかと。
で、4.0Beta5がリリースされた訳だが。
誰かリリースノートとか日本語に訳してくれないかな……。
そしてついでにドキュメントを
>>649 意訳するとだな
「おまいら正式版マダーとか言い杉。バグつぶしは小さいのしか残ってないが
ドキュメントが追いつかねぇんだよゴルァ。9月中には出してやるからモチツケ。」
って感じですわ。
Tapestry 4.0-beta-6 released
Tapestry 4.0-beta-7 released
betaの使用感とかはだれも書かないのね。
つかってないも〜ん
♪首から下は〜 Howard Lewis Ship
4.0-beta でアプリを開発し始めた者です。 3.0のころに比べると、ページをサブディレクトリで管理できたり、 生成されるURLがシンプルになったりいい感じです。 50画面くらい作りこみましたが、とりあえず実用上の問題はなさそうです。 あと、4.0に限らないけど、 htmlテンプレートをキャッシュしないようにして開発すると 動作がもっさりもっさりして厳しいですな。 ページの作りこみはトライアンドエラーの作業が多いから これは開発効率にダイレクトに響きます。
5人で開発するとして、2人くらいは英語のドキュメント読めても残りの3人は日本語じゃないと読まないんだよね。 しかも、英語が読めるやつは手探りでだいたいの使い方をわかったりするからドキュメント自体があまり必要なかったり。 日本語しか読めない開発者ほどドキュメントを必要とするんだよね。
Tapestry 1.1-beta-8 Released
概要でも日本語化されていれば日本語しか分からなくても ソースコード見て納得できるけど なにもわからず手探り状態だと厳しい それに英語読めるといっても日本語と違って斜め読みまでできるやつはそう多くない 膨大なドキュメントから特定の場所を探すのはむずかしい
いつまでベータ版なんじゃ、ゴルァー
4.0正式リリースは年末くらいじゃない? このあとまだRCシリーズが出るはずだし。
Tapestry 1.1-beta-9 Released
だって Jakarta のトップページが。
きっともうHoward Lewis ShipもHiveMindのことでいっぱいいっぱいなんだよ
Tapestry 4.0-beta-10 Released
Tapestry 4.0-beta-11 released
673 :
デフォルトの名無しさん :2005/10/28(金) 17:05:13
FaceletsがあればTapestry要らなくなる?
675 :
デフォルトの名無しさん :2005/10/28(金) 20:08:52
つか、S2JSFが滅亡
で、ぶっちゃけ戦闘力の方はどうなのよ。 コンポーネント開発ってIDEの能力が大きいからなぁ
ぶっちゃけたぺも日本語資料が大量に出ていたらそれなりに普及はしてたはず
タペって企業がバックにいたりしないの? Strutsって結局Sunがバックにいたからあんなヒドい作りなのに広まったんだよね。
Strutsとsunは関係ねーべ
開発者はSunの社員
社員であることとバックアップとは関係ねーべ JSFならSunと関係があるが
結果を見ると、関係があったといえるんじゃないかと。 JSFみたいに組織的なバックアップはしてないけど、バックにサンがいることは大きいかったと思う。
IBMとNTTじゃなかったっけ?Strutsをバックアップしてたの
Tapestryって、そういう噂レベルでもいいから企業が後押ししてるっていうのないの?
Tapestry 4.0-beta-12 released
作者BLOGに、OGNLを使わないように変更すると10倍速くなるってのが載ってる。 まあベンチマークなんで、本番環境の数字とは違うんだろうけど。
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
ってか、WebWorksもStrutsに参加して、HTMLテンプレートとしてWicketが流行ってて、標準フレームワークはJSF+EJB3で、Tapeってどういう位置付けになるの?
質問なんですけど、 Tapestryの開発って、.htmlを変更したのを反映させる方法って、 Tomcat(コンテナ)を再起動するしかないんですかね? server.xmlのreloadable設定も効かないみたいだし…。
>>691 -Dorg.apache.tapestry.enable-reset-service=true
>>692 サンクス。
これでInspectorButtonを使うのですね。
Tapestry 4.0-rc-1 released やっとこさRCキタ
Tapestry 4.0-rc-2 released
Tapestry 4.0-rc-3 released
↑Tapestry 4.0 の命運
> 698 : 【大吉】 :2006/01/01(日) 01:40:59 ばっちりだな
E・∇・ヨノシ <700ゲット♫
DirectLinkだけで間に合うと思うのですが、 ActionLinkを使った方がいいケースってありますか?
702 :
デフォルトの名無しさん :2006/01/08(日) 12:27:22
Tapestry 4.0 Released
リリースされたら話題が途切れるって、 誰も使ってないんじゃ……
ヒント:年始休暇明けでテライソガシス
ヒント:Tapestry使いはいつもイソガシス
使ってるよ。
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
710 :
デフォルトの名無しさん :2006/02/24(金) 22:16:33
TapestryってTomcat無くても動くの?
Resinとかで。
712 :
デフォルトの名無しさん :2006/04/02(日) 22:18:13
Tapestry 4.0.1 released
713 :
デフォルトの名無しさん :2006/04/14(金) 10:40:38
OGNL自体の解説サイトってないですかね?
相棒のCayyeneはどうなってますか?
717 :
デフォルトの名無しさん :2006/06/03(土) 18:15:10
TapestryってStrutsと統合して使用できるの? ActionとかActionFormは使うけど、ビューはHTMLのまま(JSP使わない)というような感じに。
>>717 無理です。Tapestryの構造は、プレゼンテーション層だけを切り離して使うことはできません。
Strutsと統合したいならSeasarプロダクツをお使いください。
719 :
デフォルトの名無しさん :2006/06/04(日) 00:20:27
S2Containerを介して両者を連携させるなんて余計ややこしいことになりそうなので現実的ではないな。
>>719 Mayaaなら、S2Containerとは関係なく使えるよ。
S2信者うぜえな
Mayaaは実装上S2とは関係ないからS2非信者でもおっけ。 ホームページも独立してるしね。
>>717 strutsのコントローラーを使いたい、だけどJSPは嫌だ。
君の言う趣旨がそーゆーことなら、Freemarke、あるいは
velocityをviewに採用するというのが一番素直な方法だと
思う。
スレ違いスマソ
724 :
デフォルトの名無しさん :2006/06/26(月) 06:57:34
725 :
デフォルトの名無しさん :2006/07/15(土) 01:04:24
今更だが、日本でTapestryが普及しない2番目の理由に(もちろん1番目は日本語ドキュメント)、 付属してくるサンプルがバギーで使い道がないモノだらけだから、てのがあると思うの
それだと日本とそれ以外とで違う理由にはならないような……。
>>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
ゴメス チェンバレンです・・・ 4.1から、unstableの文字が、取れたとか取れないとか・・・
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
739 :
デフォルトの名無しさん :2007/02/19(月) 21:24:04
Tapestry5最高!
何がどう最高なの? いまやStrutsどころかJSFやSeasar2がでてきて わけわかめな俺によさを教えてくださいな
うーむ、スレがたってから3年も経っているのか。 当時、これをネタに卒論で研究している香具師いなかった?
>>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");//文字コード強制指定
>>744 テンプレートにencoding指定したXML宣言書いて、
AppModule.javaにPageResponseRendererのデコレーションメソッド書いたらできたよ。
↓AppModule.javaに追加するデコレーションメソッド
@Match("tapestry.internal.PageResponseRenderer")
public static PageResponseRenderer decoratePageResponseRenderer(
@InjectService("tapestry.internal.PageMarkupRenderer")
final PageMarkupRenderer markupRenderer,
@InjectService("tapestry.MarkupWriterFactory")
final MarkupWriterFactory markupWriterFactory,
final Object delegate) {
return new PageResponseRenderer() {
public void renderPageResponse(Page page, Response response) throws IOException {
MarkupWriter writer = markupWriterFactory.newMarkupWriter();
markupRenderer.renderPageMarkup(page, writer);
PrintWriter pw = response.getPrintWriter("text/html; charset=Shift_JIS");
writer.toMarkup(pw);
pw.flush();
}
};
}
746 :
デフォルトの名無しさん :2007/03/18(日) 00:25:28
>>745 Tapestry5.0.3の場合
@Match("PageResponseRenderer")
public static PageResponseRenderer decoratePageResponseRenderer(
@InjectService("PageMarkupRenderer")
final PageMarkupRenderer markupRenderer,
@InjectService("MarkupWriterFactory")
final MarkupWriterFactory markupWriterFactory,
final Object delegate) {
return new PageResponseRenderer() {
public void renderPageResponse(Page page, Response response) throws IOException {
MarkupWriter writer = markupWriterFactory.newMarkupWriter();
markupRenderer.renderPageMarkup(page, writer);
PrintWriter pw = response.getPrintWriter("text/html; charset=Shift_JIS");
writer.toMarkup(pw);
pw.flush();
}
};
}
747 :
745 :2007/03/18(日) 03:17:12
>>746 なるほど
[TAPESTRY-1339] - Rework Tapestry IoC to remove the concept of module ids and qualified service ids
ですね。
5.0.3にしたら @Id, @Contribute アノテーションでコンパイルエラーになったんで、
とりあえず5.0.2に戻してたんだけど、そういうことだったのか。
748 :
Tapestry5ページ更新情報 :2007/03/31(土) 03:20:22
Last Published: 29 Mar 2007 @Inject使用方法変更 @Path,@Serviceアノテーション追加
749 :
Tapestry5ページ更新情報 :2007/05/03(木) 16:02:25
750 :
デフォルトの名無しさん :2007/05/25(金) 18:08:48
age
751 :
デフォルトの名無しさん :2007/06/07(木) 22:41:40
age
752 :
Tapestry5ページ更新情報 :2007/06/30(土) 21:14:52
753 :
745 :2007/08/18(土) 17:40:55
寂れてるけど一応書いとく。 @Meta("tapestry.response-encoding=Shift_JIS") をページクラスにアノテーションすれば良くなったので、 AppModule.javaいじる必要なくなった。
apache projectにturbine、tapestryとあるけど、 それぞれどう違うの? 両方ともプレゼンテーション層のフレームワーク?
Tapestryで、WicketとかTeedaみたいに HTMLとロジックを完全に分離してしまう事って可能ですか?
WicketとかTeedaがTapestryみたいにHTMLとロジックを分離できる。じゃないのか? そしてTapestryはWebObjectみたいに・・・となるわけだが。
>>756 確かにTapestryの方が「生HTMLっぽいTemplate」を使う考え方は
早かったかもしれませんが、WicketやTeedaほどキレイに分離できるのでしょうか?
テンプレートとして使用するHTMLが、
それ単体でブラウザから見ることができるのか?
というとこまではできそうに無いなあ、と思っているのですが。
>>757 それは普通にできるでしょ。それらコンポーネント方式組はほとんど兄弟。
正直、
・デザインテンプレート部分
・裏側のコンポーネントモデル
・それらを結合させるグルー言語
は標準化して、エンジンがJavaで書かれてようがなんだろうとOKにして
欲しい。汎用言語と違うグルー言語記述を導入した時点でベースエンジンから
完全に切り離し可能になってるわけで。
「〜ほどキレイか」という部分については、Tapestryの方が今となっては シンプルさに劣ると思うけど、それはHTML/ロジック分離の所にはあんま 影響してないと思う。
760 :
757 :2007/09/17(月) 23:38:43
>>758 Tapestryでもキレイに分離できるのですか、勉強不足ですいません。
BeanEditFormのサンプルとかを見て、
input タグとか書いてないのに入力formが生成されてるとは何事か!
とか思ってました。
ちなみに、Wicketでも WicketWebBean なるものが
A Wicket Diaryで紹介されてましたね。
761 :
デフォルトの名無しさん :2007/10/11(木) 01:11:18
いつのまに5まで!
763 :
デフォルトの名無しさん :2007/10/26(金) 23:54:18
5.0.6
作った奴このスレ絶対読んでるだろ。 小規模案件だから実戦体験を兼ねて使ってみたのかな・・・
JSF2.0の策定にTapestryの中の人が誘われてるって話はどうなったんだろう。 中の人はアンチJSFらしいけど、ことがうまく運べば素晴らしい相互運用性が得られるね。
>744はShift_JISで書かれたテンプレートをtapestryに読み込ませる方法で >745以下はresponseのエンコード指定方法だよね? >744の問題のほうだけどどう解決しようか 思いつくのは、 1、おとなしくUTF-8でテンプレートを書く 2、<?xml version="1.0" encoding="Shift_JIS" ?>とテンプレートの先頭に書く 3、TemplateParserImplのコードを書き換えるorAppModuleあたりで TemplateParserのサービスを自分実装のものに置き換える
>>767 普通に2でしょ。
あと
>>745 のは5.0.5から必要なくなってる。
@Meta("tapestry.response-encoding=Shift_JIS")
とページクラスにアノテーションすればレスポンスはShift_JISになる。
769 :
デフォルトの名無しさん :2008/03/15(土) 11:34:49
5.0.11age
771 :
デフォルトの名無しさん :2008/07/09(水) 14:48:24
Tapestryが使われている日本語のサイトはあるのか? 特にTapaestry5
>>771 764にあがってる国交省の車検予約。
5ってまだベータだよね?さすがに無いんじゃね。
773 :
デフォルトの名無しさん :2008/09/26(金) 16:58:24
tapestry5.0.15がリリース。 まだベータだが。
Tapestryが日本で使われない理由はやはり
>>361 ですか?
自分が働いている企業は主にTapestry4.1-hibernateを使っています。
学生でもあるので卒業後日本に戻る気ですがTapestryでは仕事もらえそうにないですね。
個人的に好みなのに。残念。
4→5の動き方が気になりすぎて選択できない
776 :
デフォルトの名無しさん :2008/11/15(土) 01:58:35
>>776 しばらく止まってしまってたが、またがんがるぜ。
ちょうど今、日本語訳を5.0.15に更新したところだ。
778 :
デフォルトの名無しさん :2008/11/15(土) 12:03:53
779 :
デフォルトの名無しさん :2008/11/18(火) 02:06:31
Tapestry 5.0.16 (Release Candidate)がリリースされた。 だれか ValidationMessages.properties Errors.properties ... をローカライズして送ったれ。
780 :
デフォルトの名無しさん :2008/11/18(火) 15:19:28
GuiceとSpringどっちと相性いいの?
782 :
デフォルトの名無しさん :2008/11/19(水) 02:08:52
>>779 おk。俺がやっとく。
あと BeanEditForm, GridColumns, GridPager, Palette あたりもかな。
どうせデフォルトのまま使うことってあまり無いし別にいいじゃん、とか思ってたけど
結構たくさんの言語にローカライズされてんのね。
784 :
デフォルトの名無しさん :2008/11/19(水) 10:37:51
>>781 Tapestry5は独自にTapestry IoCのがあるから、
Guice、Springは使う必要性がない。
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
790 :
デフォルトの名無しさん :2009/03/25(水) 00:18:08
791 :
デフォルトの名無しさん :2009/03/25(水) 11:29:16
792 :
デフォルトの名無しさん :2009/04/01(水) 11:34:36
793 :
デフォルトの名無しさん :2009/04/09(木) 14:38:00
>>793 AppEngineってTapestryなの?
795 :
デフォルトの名無しさん :2009/04/26(日) 21:13:15
flockというRSS ReaderがTapestryで作られていた。
796 :
デフォルトの名無しさん :2009/05/01(金) 00:46:37
798 :
デフォルトの名無しさん :2010/12/28(火) 05:22:20
弾幕薄い
2011年にようこそ(本当に流行らなかったな・・・
wo事態が消えちゃったからな。
↓↓↓ 「「「「「「「 ■Google、AppEngineでJavaのサポートを開始■ 」」」」」」」(キリッッッッ!!!キリッッ!!!!!! ↑↑↑(キリッッきリ!! ゴミって意味わかってんのかなこいつら
>>794 ↑↑↑ハッアアアアアアアアアアァアァアアァアアアアアアアアァアアァ??????????????
死ねよゴミ
ゴミグラマって気持ち悪いんだな
803 :
デフォルトの名無しさん :2011/11/22(火) 19:13:28.01
sage
Apache的には、Apacheプロジェクト内のJavaのWebフレームワークって 何が本命なのかね
k
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
TapestryはFaceletsの構想上の親でしょ 役目は果たしたんだから恥じることなく畳めばいいよ
812 :
デフォルトの名無しさん :2014/03/01(土) 06:41:33.42
タペストリーって名前がかっこいいな
813 :
デフォルトの名無しさん :2014/03/02(日) 17:54:41.86
好きなんだけどな。
815 :
デフォルトの名無しさん :2014/03/08(土) 21:03:38.91
好きならもっと布教しろよw
816 :
デフォルトの名無しさん :
2014/08/12(火) 09:10:26.45 ID:wWMghJWz ★2ch勢いランキングサイトリスト★ ☆ +ニュース板 ・ 2NN ・ 2chTimes ☆ +ニュース板新着 ・ 2NN新着 ・ Headline BBY ・ Unker ☆ +ニュース板他 ・ Desktop2ch ・ 記者別一覧 ☆ 全板 ・ 全板縦断勢いランキング ・ スレッドランキング総合ランキング ☆ 実況板 ・ 2勢 ・ READ2CH ・ i-ikioi ※ 要サイト名検索