Problem
Möchte man eine Seite mit einem iView aufrufen, ist es meistens nötig die komplette Navigation bis zu diesem durchzuklicken. Das Portal besteht bei der Verwendung von iViews aus Frames.
Ansatz
Möchte man das SAP Enterprise Portal anweisen ein spezielles iView/eine spezielle Seite über einen Deeplink in den Frame zu laden, kann der folgende Trick genutzt werden.
Lösung
- Zunächst geht man auf die Portalseite, für die ein Deeplink benötight wird
- Zu die Adressleiste vom Browser gibt man javascript:void(prompt(„“,nodeid)); ein
- Der Deeplink setzt sich folgendermaßen zusammen: http://<hostname>:<port>/irj/portal?NavigationTarget=<javascript-result>
iView-Entwickler können den folgenden Code benutzen um Parameter über diesen Deeplink zu übergeben:
URL: http://firmenportalrechner.com:50000/irj/portal?NavigationTarget=navurl://885a76f8628af28c18d76773f98eaaaf&materialId=9380027
…
Java (z.B. iView): String materialId = (String) getPortalRequest().getServletRequest().getParameter(„materialId“);