2012-04-03 7 views
1

Könnte ein bisschen wie eine Frage ohne Frage sein, aber kann ich auf eine Variable zugreifen, die in der Sitzung innerhalb eines struts-Formularobjekts gespeichert ist?Zugriff auf Sitzung aus Struts Formularobjekt

public class MyForm extends ActionForm {...} 
+0

request.getSession(). Ist das wonach Sie suchen? – kosa

+0

wie unten: Es ist kein Anfrageobjekt verfügbar? –

+1

Sie müssen in actionServlet (oder) JSP einen Wert für das Formular festlegen. Ich glaube nicht, dass Sie hier direkt auf die Anfrage zugreifen können (es sei denn, Sie tun etwas Anpassung). – kosa

Antwort

1

Sie müssen Wert in das Formular entweder in ActionServlet (oder) JSP festlegen. Ich glaube nicht, dass Sie hier direkt auf die Anfrage zugreifen können (es sei denn, Sie tun etwas Anpassung).

0

Sie können ein Attribut in der Sitzung abrufen, indem Sie die HttpServletRequest:

request.getSession(false).getAttribute("yourAttributeName"); 
+0

Es ist kein Anforderungsobjekt im Struts-Formularobjekt verfügbar. –

+0

Es ist in der Validierungsmethode, aber ich denke, das ist nicht, wo Sie gerne darauf zugreifen möchten. Ich hätte dich bitten sollen, das zu bestätigen. –

0

have'nt zu Hause versucht, aber Sie können verwenden:

private HttpServletRequest request; 

public void reset(ActionMapping mapping, HttpServletRequest request) { 
    this.request = request; 
} 

und speichern Sie die Anfrage in ein lokales Feld für die spätere Verwendung wie oben beschrieben.

4

Wir haben entwickelt und gepflegt ein sehr großes Projekt Struts 1. Ich weiß, Ihr Problem, wir haben eine ActionContext Klasse, mit einem ActionContextFilter, bindet der Filter die Anfrage und Antwort Objekte zu aktuellen Thread ein ThreadLocal Element verwendet (und offensichtlich es löst sie am Ende des Prozesses).

Jetzt können wir auf Anfrage, Antwort und ... mit ActionContext.getCurrentContext().getRequest() und zugreifen.

Ich glaube, das gleiche kann Ihnen viel helfen.

Durch die ganze Idee war von Clinton Begin 's (der Autor von iBatis) Beispiel PetStore; Er hat in diesem Beispiel eine gute Erweiterung um Struts 1 gebaut. Ich empfehle Ihnen, die ganze Arbeit zu überprüfen.

Verwandte Themen