1

私はAlfrescoにとても慣れていません。私の質問は、ダッシュレット(最初から作成されたもの)をページ(最初から作成されたもの)にどのように使用できるかということです。ページにダッシュレットを含めるために処理するファイルと構成は何ですか。

さらに、新しく作成されたページはダッシュボードページに似ている必要がありますが、認証はありません。ここでの考え方は、デフォルトの「共有」ダッシュボードログインフローを廃止することです。

ありがとう。

4

3 に答える 3

2

いくつかの例でこれに答えてみましょう:

屋外ページ

Alfresco Shareページを作成するには(shareを使用しますか?)、次の3つのファイルを作成する必要があります。

<TOMCAT>/webapps/share/WEB-INF/classes/alfresco/site-data/pages/my-page.xml
<TOMCAT>/webapps/share/WEB-INF/classes/alfresco/site-data/template-instances/my-page.xml
<TOMCAT>/webapps/share/WEB-INF/classes/alfresco/templates/org/alfresco/my-page.ftl

1つ目はページを定義し、2つ目はページで使用するコンポーネント(ダッシュレット)を定義し、最後の1つはコンポーネントを配置するHTMLテンプレート(Freemarker内)です。

最初の2つのファイルはXMLで、少し屋外固有ですが単純なXMLであり、最後のファイルは静的HTMLを配置して機能するか、フリーマーカーマクロを配置できます。それらのファイル(例)のそれぞれに何がありますか、あなたはこのページで読むことができます、あなたとこの質問のために特別に書かれています:)(尋ねないでください、私はそれについて書きたいと感じました)

認証なし

認証を使用しない場合は、ページ定義ファイル(最初のXMLファイル)に<authentication> none</authentication>を入れるだけです。

ダッシュレットファイル

基本的に、ダッシュレットは少なくとも2つのファイル、通常は4〜5のファイルにすることができます。dashlet.get.desc.xmlファイルは2つのことを意味します。desc.xml部分はそれが新しいコンポーネント(ダッシュレット)用であることを示し、get部分はこのコンポーネントがHTTPGET呼び出しに応答することを示します。通常、/ webapps / share / WEB-INF / classes / alfresco / site-webscripts / org / alfresco/componentsの下のどこかに配置されます。以下の場所は実際には重要ではありませんが、すべてのコードを簡単に管理できるように、いくつかのフォルダーに配置することをお勧めします。このファイルには、重要なものが1つ含まれています。それはurlです。URLは、ダッシュレットが応答するURLを定義します。上記のページ定義でページを定義した場合、ダッシュレットにアクセスするためにこのURLをそこに配置します。

リンクを使用して、ダッシュレットに直接アクセスすることもできますhttp://localhost:8080/share/my/url/to/dashlet.

もう1つのファイル、dashlet.get.html.ftlも、フリーマーカーテンプレートファイルです。そこにHTMLを配置します。ダッシュレットのコントローラーファイル、dashlet.get.jsを使用して、動的コンテンツを準備することもできます(サーバー側のJavaScriptで記述され、Alfresco Javascript APIの一部にアクセスできます)。

最後に、いくつかの国際化されたテキスト(翻訳)をバンドルに入れることができます(基本的に、ブラウザ言語によるdashlet.get.properties、dashlet.get_DE.properties、dashlet.get_ES.propertiesなど)。

このダッシュレットにクライアント側のjavascriptまたはcssファイルを含めるオプションもあります。

これらすべてを正確に組み立てる方法を確認するには、このページを読んでみてください。おそらく実際には良い読み物ではありませんが、うまくいけばいくつかのことが明らかになるでしょう。

于 2013-01-25T23:04:49.037 に答える
2

ダッシュレットは単なる特別なタイプの Web スクリプトです。そのため、同じ Web スクリプトをコンポーネント領域にバインドすることにより、カスタム ページに配置することが可能です。

ページ、テンプレート、コンポーネント、およびリージョン間の関係は、Share 開発に慣れていない場合は少し複雑になる可能性があるため、サンプル プロジェクトを紹介している昨年 11 月の DevConの Dave Draper と Erik Winlof のShare Customizations Liveプレゼンテーションを確認することをお勧めします。 Ant ビルド スクリプトを含み、カスタム Web スクリプトとページ定義を含みます。このコードは、独自のプロジェクトのベースとして、このGit リポジトリからダウンロードできます。

カスタム ページ内で機能させるためにダッシュレット Web スクリプトに必要な変更があったとしても、あまりにも多くの変更を行う必要はありませんが、ユーザーが認証されていない場合は、そのユーザーに関する情報にアクセスできず、リポジトリから任意のデータを取得できます。

于 2013-01-24T17:36:45.360 に答える
1

申し訳ありませんが、明確にするために、Alfresco リポジトリで共有インターフェイスを再現したいのですが、ログインは必要ありませんか? ダッシュレットとインターフェイス コンポーネントは Web スクリプトであり、Web スクリプトはリポジトリ内に保存されるため、それらにアクセスするには認証を受ける必要があります。何かを達成するために、webscript xml 記述で runas="admin" または runas="guest" というタグを使用できます。私が誤解した場合は、私に知らせてください..

于 2013-01-25T14:46:13.743 に答える