2012-08-25 28 views
9

Sería bueno poder definir mis propios interceptores de métodos (consejos) y entretejerlos en mis métodos GWT del lado del cliente, y hacer que GWT los compile automáticamente en JavaScript con el resto de mi aplicación.Opciones de AOP del lado del cliente para aplicaciones GWT

Comprobé gwt-ent, pero no parece que haya habido un desarrollo sólido desde 2009 y hubo un gran número de problemas. También he oído hablar de gwt-tiny-aop, pero escuché que era muy limitado.

¿Tengo alguna otra opción aquí? Sé que AOP requiere generación dinámica de códigos de bytes, lo que a su vez requiere una gran reflexión, y que GWT no contiene mucho apoyo (y parece desalentar) la práctica de la reflexión, pero me preguntaba si hay alguna estable, bien conocida AOP libs por ahí para GWT. Al menos algo que podría utilizar para escribir AOP Alliance-como interceptores:

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

por qué no usar JavaScript (envuelto en JSNI) para simular que el comportamiento? –

+1

¿Algo como [dotvoid] (http://www.dotvoid.com/2005/06/aspect-oriented-programming-and-javascript/) quizás? No es una mala idea ... definitivamente un candidato, pero aún así preferiría una solución Java si fuera posible – IAmYourFaja

+2

Para usar AOP con GWT, debería masajear el código fuente antes de dárselo a GWT, en lugar de dar masajes a bytecode. –

Respuesta

Cuestiones relacionadas