Рассмотрим перехватчик, который помещает объект в Value стека, сделать некоторую логику, а затем удаляет его:Является ли перехватчик Struts 2, который ставит и выдает значение Value Stack в потоковом режиме?
ActionContext.getContext().getValueStack().set("user", CurrentUser);
doSomeLogic();
ActionContext.getContext().getValueStack().pop();
Как уже упоминалось в Are Interceptors in Struts2 Thread UNsafe? перехватчики являются поточно, но, как мы имеем дело с Value Stack в коде выше, я если это нормально или мы должны синхронизировать код выше.
Как вторичный вопрос, есть ли лучший способ удалить элемент из Value Stack?
Какова фактическая * точка * удаления ее из стека значений? Стек данных создается для каждого запроса. Оно уходит само собой. –
При просмотре фреймворка struts я обнаруживаю, что всегда struts ставят значения в стеке значений, а self и приложения, считываемые из него. Я вообще не рекомендую, чтобы в приложениях было что-то еще. Вот почему я удалил свою толкаемую ценность. –