Struts 2 это конфиг избыточен? - PullRequest
0 голосов
/ 03 марта 2011

Ниже приведен фрагмент кода из файла struts.xml для Struts 2. Если вы видите ниже, они ссылаются на «basicStack», а затем ссылаются на «prepare» и «servletConfig» в следующих нескольких строках. Если вы посмотрите на определение «basicStack» в struts-default , похоже, что эти два уже упоминаются как часть «basicStack». Так не будет ли ссылка на них после того, как вы уже ссылались на «basicStack», избыточна и не нужна? Заранее спасибо.

<interceptor-ref name="basicStack">
    <param name="exception.logEnabled">true</param>
    <param name="exception.logLevel">info</param>
</interceptor-ref>
<interceptor-ref name="servletConfig" />        
<interceptor-ref name="staticParams"/>
<interceptor-ref name="prepare" />
<interceptor-ref name="chain"/>
<interceptor-ref name="tokenSession">

Ответы [ 2 ]

3 голосов
/ 03 марта 2011

Наличие перехватчиков в стеке дважды означает, что они будут выполняться дважды. Это не всегда избыточно - например, paramsPrepareParamsStack имеет перехватчик параметров, настроенный дважды.

Так что вам нужно посмотреть, что делают перехватчики. Перехватчик servletConfig устанавливает различные свойства действий в зависимости от того, какие интерфейсы они реализуют. Он используется для таких вещей, как установка объекта запроса. Я не могу понять, как было бы полезно дважды запустить этот перехватчик, поэтому я хотел бы сделать предположение и сказать, что это на самом деле избыточно.

Второй рассматриваемый перехватчик, перехватчик prepare , запускает метод подготовки вашего класса действий. Это может иметь полезное использование, когда оно выполняется, например, если ваш метод prepare требует для выполнения объект запроса. Если это так, то возможно, что первый вызов перехватчика подготовки является избыточным, и тот, кто определил этот стек, просто не хотел перечислять весь стек самостоятельно.

2 голосов
/ 03 марта 2011

Это не является избыточным, если целью было запустить перехватчики дважды .Однако это кажется маловероятным.

...