2

Liferay 用の一連のポートレットを開発しています。現在、JSP を使用しているため、同じポートレットの複数のインスタンスがページに表示される場合でも、DIV および要素 ID にタグを使用して、それらがページ上で一意になるようにすることができます。例えば:

<div id='<portlet:namespace/>div'>  
<form>
    Enter your name here: <input type='text' id='<portlet:namespace/>name'/>  
</form>  
</div>  

ここで、JSP の代わりに GWT を使用してポートレットを構築してみます。私が見つけたGWTポートレットの例(そのうちの2つしかありません)は、「一意のIDをdivと要素に割り当てる方法」の問題を解決しません.これまでに生成されました。ポートレットの名前空間を div/要素 ID に組み込む方法について何か考えはありますか?

4

2 に答える 2

2

私が見つけた最高のリンクは次のとおりです。http://xantorohara.blogspot.com/2007/07/portlets-and-gwt.html

ルート コンテナ レベルで、GWT ベースのポートレットごとに一意の ID を使用することで解決しました。これに加えて、コマンド パターンを実装し、他のポートレットに干渉することなく適切なアクションをポートレットにディスパッチする、GWT の履歴サポートに基づくコマンド ディスパッチャーを用意しました。

liferay は jsr 286 をサポートしているため、ポートレット ID を返す GWT ajax 呼び出しを調整し、その ID を使用して異なるポートレットを区別することができます。

于 2009-09-25T19:11:18.387 に答える
2

GWT には、使用できる Element クラスの setId() メソッドが含まれています。

ウィジェットを使用している場合は、widget.getElement().setId(...) を呼び出すことができます。

于 2009-09-04T03:45:51.197 に答える