2012-08-25 14 views
9

Byłoby miło móc zdefiniować własne metody przechwytywania metod (porady) i powiązać je z moimi metodami GWT po stronie klienta, a GWT automagicznie je skompilować do JavaScript z resztę mojej aplikacji.Opcje AOP po stronie klienta dla aplikacji GWT

Wymeldowałem się gwt-ent, ale wygląda na to, że od 2009 roku nie ma na nim solidnego rozwoju i było sporo problemów. Słyszałem też o gwt-tiny-aop, ale słyszałem, że było bardzo ograniczone.

Czy mam tu jakieś inne opcje? Wiem, że AOP wymaga generowania dynamicznego kodu bajtowego, co z kolei wymaga ciężkiej refleksji i że GWT nie zawiera dużej ilości wsparcia (i zdaje się zniechęcać) do praktyki refleksji, ale zastanawiałem się, czy są jakieś stabilne, dobrze znane AOP libs tam dla GWT. Przynajmniej coś, co można używać do pisania AOP Alliance-jak przechwytujących:

public class MyInterceptor implements MethodInterceptor { 
    @Override 
    public void onIntercept(MethodInvocation mi) { 
     // Do some stuff... 

     // Let the method execute 
     Object results = mi.proceed(); 

     // Analyze results... 

     // Returns results 
     return results; 
} 
+1

dlaczego nie użyć JavaScript (zawinięte w JSNI), aby symulować to zachowanie? –

+1

Może coś takiego jak [dotvoid] (http://www.dotvoid.com/2005/06/aspect-oriented-programming-and-javascript/)? Nie jest to zły pomysł ... zdecydowanie kandydat, ale nadal wolałby, jeśli to w ogóle możliwe, rozwiązanie Javy. – IAmYourFaja

+2

Aby użyć AOP z GWT, trzeba masować kod źródłowy przed przekazaniem go do GWT, zamiast masować kod bajtowy. –

Odpowiedz

Powiązane problemy