Frage

habe ich eine einfache HTML-Seite, die ein Formular enthält (verwendet GET-Methode), deren Aktion ist eine Portalseite ein JSF-Portlet enthält. Ich brauche die Parameter in meinem Portlet zur Portalseite weitergeleitet zugreifen - wie kann ich das erreichen

Ich habe versucht, den Parameter code auf der Ansichtsseite mit folgendem Code zuzugreifen, aber der Wert kommt als null.

java.util.Map requestMap = javax.faces.context.FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap(); 
String code = requestMap.get("code");

In einem anderen Forum wurde vorgeschlagen, dass ich brauche die die Portlet-ID als Request-Parameter übergeben, um den Portlet Zugang zu übergeben Anforderungsparameter zu haben. Wenn das wahr ist, wo / wie kann ich meine Portlet-ID-Lookup, so dass Portlet hat Zugriff auf Anforderungsparameter?

War es hilfreich?

Lösung

Ich würde prüfen, ob die WebSphere Implementierung von öffentlich machen Parameter unterstützt diese. Wenn der Parameter Karte ExternalContext Anfrage diese Werte nicht aussetzen, können Sie ein href werfen <= "http://java.sun.com/javaee/5/docs/api/javax/faces/context/ExternalContext.html#getRequest ( )“rel = "nofollow noreferrer"> die Anfrage zu einem PortletRequest und nutzen die Map<String,String[]> getPublicParameterMap() Methode.

Andere Tipps

Siehe meinen Artikel Passing Abfrageparameter zu JSR-286-Portlets hier .

Ich weiß, das ist eine Art und Weise unterstützt, es zu tun. Ich habe andere Artikel gesehen, die man einfach behaupten kann, die PortletRequest etwas gegossen und die Parameter bekommen. Dies wird wahrscheinlich nicht unterstützt, dass sie auf einer bestimmten Implementierung und Bezugnahme auf eine interne Klassennamen abhängt. Ich empfehle das oben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top