JBoss 7.1.1 で Liferay 6.2 を使用しています。また、AlloyUI のビューとして JSP を使用しています。
リンクとしてのボタンと、MVCPortlet クラスのメソッドへの値のサブミッターとしてのボタンが必要です。リンクは Java 配列内にあります。Java メソッドに渡される属性は、入力フィールド内にあります。
この2つのうちの1つだけを使用すると機能します。それらを組み合わせようとしましたが、うまくいきません。私はこれを試しました:
<a href="<%=unread[i][k]%>" target="_blank" >
<aui:button type="submit" />
</a>
メソッドを呼び出しますが、ブラウザで新しいタブを開きません。私のブラウザでは、それがリンクであることがわかります。それを右クリックすると、新しいタブが開き、新しいタブで正しく開きます。しかし、ボタンをクリックするだけではそうではありません。2 番目の方法:
<aui:button type="submit" onclick="window.open('http://www.google.de', '_blank', ''); return false;"/>
Googleを開くだけで、メソッドは呼び出されません。また、Javascript 内で Java 属性を取得することはできませんが、非表示の入力フィールドから値を取得することはできました。しかし、それでもメソッドを呼び出さないという問題があります。