Spring aop poincut-Ausdruck, um auf den Rückgabetyp der Methode zuzugreifen

8

Ich habe eine Service-Schnittstelle mit vielen Methoden, die alle ein Request-Objekt nehmen und ein Response-Objekt zurückgeben. Alle Anforderungsobjekte haben einen gemeinsamen Vorgänger und alle Antwortobjekte haben einen anderen gemeinsamen Vorgänger (der ein Erfolgskennzeichen und ein Nachrichtenfeld hat).

Nun möchte ich einen umständlichen Aspekt haben, der Berechtigungen usw. überprüft, den Serviceaufruf durchführt und ein Response-Objekt mit einem Fehlercode zurückgibt, wenn etwas fehlschlägt. Das Problem ist: Ich muss wissen, welche Art von Response-Objekt erstellt werden soll. Gibt es einen Pointcut-Ausdruck, der mir Zugriff auf den Rückgabetyp gewährt? So etwas vielleicht?

%Vor%     
Sean Patrick Floyd 23.06.2010, 08:55
quelle

2 Antworten

6

Das Javadoc für JoinPoint erwähnt eine Methode getSignature() , deren Rückgabetyp Signature eine Unterschnittstelle hat MethodSignature du könntest versuchen an castings zu übergeben, was eine Methode getReturnType() hat, die genau das ist, wonach du suchst.

    
Christian Semrau 23.06.2010, 09:57
quelle
0

Sie können das in der around-Methode rat (handleServiceCall () in Ihrem Fall) tun

%Vor%     
chedine 23.06.2010 09:15
quelle