2017-03-14 2 views
0

Ich habe bereiten Interceptor in Gebrauch. In einer Aktionsklasse habe ich eine Aktionsmethode mit dem Namen testSomething(), und ich habe auch eine Aktionsmethode mit dem Namen prepareTestSomething().Struts2 bereiten Abfangjäger vor - Wie man bestimmte Methoden überspringt

Das Problem, mit dem ich hier konfrontiert bin, ist, dass die Vorbereitung Interceptor die prepareTestSomething() Aktionsmethode aufrufen würde, als ob es eine vorbereitende Methode für testSomething() war, in diesem Fall ist es nicht.

Gibt es eine Möglichkeit, den Interceptor vorzubereiten, den Aufruf für bestimmte Aktionsmethoden zu überspringen? Wie für die Validierung Interceptor können wir "excludeMethods" -Parameter verwenden.

Antwort

0

das prepare Wort zu einer Xxx Methode Voranstellen ist die Struts2 Konvention den Rahmen zu sagen, dass es die prepare() Methode zur Xxx Aktionsmethode ist. Von the docs:

, wenn die Action-Klasse prepare{MethodName}() haben, wird es

Statt tun andere Voodoos aufgerufen werden (wie mit Ausnahme von Methoden), um diese Voodoo Arbeit zu machen, einfach den Methodennamen ändern, Es ist der einzig richtige Weg.

Nennen Sie es initTestSomething(), initializeTestSomething(), preparzTestSomething() ... was auch immer; aber bitte, verwenden Sie keine Konvention versuchen, es für etwas anderes arbeiten zu lassen. Es ist nur ... falsch.

Verwandte Themen