問題タブ [tiles2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Spring + Tiles2 + Freemarker - Freemarker Servlet または Spring の FreeMarkerViewResolver 経由で統合しますか?
私は今日、Freemarker から Tiles2 + Freemarker に移行するのに苦労していました。
私の freemarker テンプレートは、spring.ftl からのマクロを使用します。
web.xml で fremarker サーブレットを提供すると、私のモデルは freemarker に表示されますが、Spring FreemarkerView がそれを担当するため、特定の Spring 変数は (当然のことながら) モデルに取り込まれません。
特定の URL (「/tpl/*」など) に対して個別の DispatcherServlet を構成し、そのサーブレットのデフォルトのビュー リゾルバーとして freemarker リゾルバーを構成し、UrlFilenameViewController をデフォルトのコントローラーとして提供すると、特別なスプリング変数がモデルに取り込まれますが、私自身のモデルは非表示: リクエスト属性としてバインドされています。${Request.mymodel.myvar} を介してモデルにアクセスできますが、この方法ではすべての freemarker テンプレートを変更する必要があり、アイデアに臭いがします。
私の解決策は、UrlFilenameViewController を拡張し、モデルをリクエストから ModelAndView に追加することでした。
しかし、このソリューションもやや臭いです。ビジネス コントローラーのモデルに何かを追加する場合は、ここに追加する必要があります。
私の問題に対するエレガントな解決策はありますか?
spring - Spring Webflow 2 と Apache タイルの統合
最近、Spring Webflow 2 を使用するようにいくつかのアプリケーションのアップグレードを開始しました。Webflow 2 に付属する新しい Ajax 機能を利用したいと考えています。タイル 2 を Spring Webflow と統合するためのチュートリアルに誘導してもらえますか (それは明らかに彼らが推奨するもの)。この点に関して、Webflow 2 に付属のドキュメントはまったく役に立たないことがわかりました。
struts2 - 「プログレッシブ」ではなく完全なページのレンダリング (Struts 2 / tile を使用)
ブラウザに送信する前に、Struts 2 (タイルを使用) でページ全体を構築する方法はありますか? ブラウザーで一度に 1 つずつ「プログレッシブ」にページを作成したくありません。
私が解決しようとしている主な問題は、コンテンツの一部のみが変更された場合でも、Internet Explorer 7 がページを点滅/点滅させることです (firefox はこれをはるかにスムーズに行います)。
そのため、次のページがある場合:
ヘッダ
いくつかのコンテンツ
フッター
また、「一部のコンテンツ」領域はページの読み込み間でのみ変化し、フッター部分はフッターの背景色で塗りつぶす前に白い背景を点滅させます。ストラットに完全なページを送信させることで、「点滅」をなくすのに十分な速さでロードできるのではないかと考えました。これで、FOOTER はその前の部分よりも少し遅れてサーバーから取得されるため、点滅します (Internet Explorer では、Firefox はページをスムーズに表示します)。
注意: これはサイトにとって重要な要件であり、ajax を使用して中間コンテンツをロードすることはできません (フレームやその他の「ハック」と同様)。このサイトは、テーブル レイアウトではなく CSS を使用して構築されています。機能させるには、テーブル レイアウトを使用する必要があるかもしれません...
tiles flush パラメータの使用について: 試してみましたが、必要に応じて機能しません。ページ全体にフラッシュパラメータが必要です。通常の jsp ページ ディレクティブ「autoFlush=false」を試しましたが、うまくいきませんでした。このディレクティブをメイン テンプレート ページ (タイルではなく) に設定します。
以下は、ヘッダー、本文、およびフッター テンプレートを使用するメイン テンプレートの例です。Thread.sleep() を使用すると、問題を簡単に見つけることができます。フッターは、ページの残りの部分より 2 秒遅れてレンダリングされます。
アップデート
コメントありがとうございます。これは通常の Web ページではないため、この要件は実際にはほぼ妥当です。埋め込みと考えてください。
しかし、どうやら IE でレンダリングを開始するように設定する方法はないようです (Firefox では 100 ミリ秒程度の設定可能な遅延があるように)。
TilesResult をインターセプトしようとしましたが、コンテンツ全体が明らかに評価される前にメソッド doExecute が実行されるため、メソッドは jsp が評価される前に既に終了しています (私の Thread.sleep() テスト)。応答全体を文字列にレンダリングし、それを一度にブラウザーに出力するにはどうすればよいか考えていました。
これは絶対確実ではなく、ネットワークの遅延などが原因である可能性があることはわかっていますが、出力への応答を一度に取得でき、テーブルベースのレイアウトを使用できる場合 (IE は、テーブルが閉じた後にのみテーブルをレンダリングする可能性があります)、これは可能性があります。合理的に働く。
または、これをFirefoxに切り替えようとするか、この小さな不具合をすべて忘れてください...
更新 2
これは私を悩ませ始めたので、私はいくつかの調査をしました。プレーンな jsp ページ (タイルなし) がある場合、バッファリングは機能します (バッファー属性を使用)。そのため、Thread.sleep() がある場合、ページ サイズがバッファー サイズを下回っていれば、2 秒後にページ全体がレンダリングされます。しかし、ページでタイルを使用した場合 (上記の例のように)、ページを同時にレンダリングすることはできませんでした (すべての tiles-templates/"components" に page ディレクティブを含めても、助けにはなりませんでした)。それで、タイルはおそらくどこかに応答をフラッシュしますか?
さらに、「問題のあるタイル」は、struts:form タグを含む私の体の部分でした。それを通常のフォームタグに置き換えたところ、思い通りに機能しました...
更新 3
わかりました、誰もタイルやストラット タグの内部の仕組みを知らないようです...これは非常に特殊なケースと要件であるため、大きな問題はありません。アプリケーションの前にプロキシとして Apache を使用し、Apache のプロキシ構成オプションを使用して大きなバッファを指定することで、この問題を回避しました。これを回答済みとしてマークします。
apache - Apache タイル テンプレートのネスト
だから私はこれを見つけました: http://tiles.apache.org/framework/tutorial/advanced/nesting-extending.html
次に例を示します。
だから私はこれを定義しました:
しかし面白いのは、彼ら自身のドキュメントでさえ間違っているということです:
2009-05-12 11:20:56,088 [main] エラー - org.apache.commons.digester.Digester.error(Digester.java:1635): 行 17 列 68 で解析エラー: 属性「名前」が必要であり、する必要があります要素タイプ「定義」に指定する必要があります。org.xml.sax.SAXParseException: 属性「name」が必要であり、要素タイプ「definition」に指定する必要があります。
名前を定義しても、次のエラーが発生します。
2009-05-12 11:35:31,818 [main] エラー - org.apache.commons.digester.Digester.error(Digester.java:1635): 行 21 列 19 の解析エラー: 要素型のコンテンツ「put- attribute」は「null」と一致する必要があります。org.xml.sax.SAXParseException: 要素タイプ「put-attribute」のコンテンツは「null」と一致する必要があります。
これはどういう意味です?!!!!
spring - Spring + Titles2アプリケーションでHTMLヘッドタイトルを設定する最良の方法は?
ビューテクノロジとしてタイルを使用するSpringWebアプリケーションでユーザビリティの問題が発生します。現時点では、すべてのページが同じようHEAD_TITLE
に表示され、PAGE_TITLE
ページ固有です。
ブラウザの履歴に同じタイトルのアプリケーションのすべての異なるページが表示されるため、これはユーザビリティの大きな問題です。すべてのページで同じである理由は、をとしてHEAD_TITLE
使用するための合理的な方法が見つからなかったためです。PAGE_TITLE
HEAD_TITLE
ほとんどの場合、PAGE_TITLE
はタグ付きのメッセージバンドルから取得され<fmt:message />
、いくつかのパラメータがそれに渡されます。タイルのレイアウトは、Webアプリのすべてのページが、他のものの中でページの要素HEAD_TITLE
を定義する同じ共通のレイアウトを使用するため、その時点ですでに設定されている必要があります。<HEAD>
このユーザビリティの問題を解決する方法について何か提案はありますか?すべてのページのSpringコントローラーで「pageTitle」リクエスト属性を設定し、それをPAGE_TITLE
およびとして使用する必要がありHEAD_TITLE
ますか?または、ページ固有のJSPでHEAD_TITLEを設定することは可能ですか?
jsp - ストラット2、タイル2ダイナミックタイトル
テンプレートフレームワークとして、Struts2.1.6と一緒にタイル2.0.6を使用しています。私は簡単なcmsページを書いていますが、ユーザーが各htmlページのタイトルを定義できるようにしたいと思います。
私はこのようなタイトルの定義を持っています
タイトルをjspにする代わりに、後のjsp属性(view.jspなど)のheader.jspのタイトル(文字列)を動的にオーバーライドする方法はありますか。または、ELを使用してさらに1ステップ
ストラットognlのタイトルを動的に取得します。
お知らせ下さい
前もって感謝します
apache - タイル 2.2.1 構成
私は Tiles 2.1 を使用しましたが、バージョン 2.2 では構成が変更されましたが、悲しいことに、それらのドキュメントは非常に混乱しているようです*、少なくとも私にとっては。また、サンプル プロジェクトのダウンロード リンクが機能していません。
struts2 - Tiles 2.1 または 2.2 を使用した Struts2
既存の struts2-tiles プラグインを使用して Struts2 で Tiles 2.1 または 2.2 を使用する簡単な方法はないようです。tiles.xml が保守できなくなったプロジェクトで、タイルのワイルドカード機能を使用する必要があります。
struts2 でタイル 2.1 または 2.2 を設定する方法はありますか? どのように?
ありがとうございました、
ボゾ
css - Apache Tiles 2.1.4 with CSS
I am using Apache Tiles 2.1.4 with Spring MVC 3. I have managed to configure these together and everything works fine. My next step is to add CSS and this is where I am having an issue - this is most probably a simple one but I can't get my template jsp to pick up the css.
Snippet from my tiles-defs.xml
Snippet from my template jsp (baseLayout.jsp)
Snippet from my css:
}
I have kept the css as simple as possible just to check if my jsp picks up the css file.
I have also checked that my css file is in the correct location - but my jsp file is not picking up the css file. Can someone help?
Any help will be much appreciated.
Thanks, Zahanghir
struts2 - Struts の devMode のような Tiles devMode を有効にして、各リクエストで tiles.xml をリロードします
Apache Tiles には、リクエストごとに tiles.xml ファイルをリロードする Struts のような devMove がありますか? もしそうなら、どうすればこれを有効にできますか?