Das Ziel eines JSF-Links ändern
Sie können das Attribut target eines JSF-Links (JavaServer Faces) von einem JSF-Handler aus ändern. Sie können zum Beispiel das Attribut target eines Links in _blank ändern, damit die verlinkte Seite in einem neuen Browserfenster geöffnet wird.
Für diese Task gelten die folgenden Voraussetzungen:
- Ihr EGL-Webprojekt muss die JSF-Komponentenschnittstelle unterstützen. Lesen Sie dazu das Kapitel Unterstützung für eine JSF-Komponentenschnittstelle zu einem EGL-Webprojekt hinzufügen.
- Der dieser Webseite zugeordnete JSF-Handler muss die folgende Importanweisung enthalten:
import com.ibm.egl.jsf.* - Sie müssen eine Variable des Typs 'UIViewRoot' im JSF-Handler deklarieren.
- Sie müssen den Namen der Variable des Typs 'UIViewRoot' in der Eigenschaft 'viewRootVar' des JSF-Handlers angeben.
Gehen Sie wie folgt vor, um das Attribut target eines JSF-Links von einem JSF-Handler aus zu ändern:
- Drücken Sie in einer leeren Zeile innerhalb einer Funktion im JSF-Handler Strg+Umschalt+Z. Das Fenster 'EGL-Quellenassistent' wird geöffnet und die JSF-Steuerelemente werden auf der Seite angezeigt.
- Wählen Sie im Fenster 'EGL-Quellenassistent' das JSF-Steuerelement aus, auf das Sie zugreifen möchten.
- Klicken Sie auf 'OK'.Im EGL-Quellenassistent werden zwei Zeilen EGL-Code zum JSF-Handler hinzugefügt. Mit der ersten Zeile wird eine EGL-Variable des Typs definiert, der dem ausgewählten JSF-Link entspricht. Mit der zweiten Zeile wird diese Variable dem JSF-Link zugeordnet. Der Code könnte zum Beispiel wie folgt aussehen:
linkEx1 HtmlOutputLink; linkEx1 = myViewRoot.findComponent("form1:linkEx1"); - Ändern Sie unter Verwendung der vom Quellenassistenten erstellten EGL-Variable das Ziel des Links mithilfe der Funktion setTarget().
Fügen Sie zum Beispiel den folgenden Code hinzu, damit der Link in einem neuen Fenster geöffnet wird:
linkEx1.setTarget("_blank");