К каким переменным можно получить доступ с помощью синтаксиса $ {...} в теге Struts на странице JSP? - PullRequest
3 голосов
/ 27 апреля 2010

Я немного расстроен, так как не могу определить, к каким переменным я могу получить доступ с помощью синтаксиса ${...} в теге Struts, размещенном на странице JSP.

В качестве примера я получил следующий код:

<c:set target="${status.menue}" property="activeMenuePath" value="whatever" />

Где должен быть определен объект "status.menue", чтобы к нему можно было получить доступ со знаком доллара и фигурными скобками. Это определено в другой плите распорок или в форме?

1 Ответ

5 голосов
/ 27 апреля 2010

Он должен быть помещен в любую область страниц, запросов, сеансов или приложений, используя соответственно JspContext#setAttribute(), ServletRequest#setAttribute(), HttpSession#setAttribute() или ServletContext#setAttribute(). Обычно вы делаете это прямо или косвенно внутри сервлета. Среды MVC делают это косвенно, обычно настраиваемо, предоставляя объекту модели область «запроса», «сеанса» или «приложения».

Язык выражений (EL) будет обращаться к ним, используя JspContext#findAttribute().

Это все, кстати, не связано со Struts. Это просто унаследованная инфраструктура MVC, которая построена поверх API JSP / Servlet. <c:set> - это тоже не тег Struts , а тег JSTL .

...