¿Puedo crear clases Java del lado del servidor, mapeo OR y clases AS del lado del cliente a partir de una sola descripción del modelo?

StackOverflow https://stackoverflow.com/questions/1000163

Pregunta

Tengo una aplicación de servidor Java y una aplicación de cliente Flex. Para mi modelo de datos, tengo objetos típicos, como Usuario, etc., que son básicamente los mismos en la base de datos, el código Java del lado del servidor y el código AS del lado del cliente. I. e., Los campos públicos de mis clases AS y Java se nombran de forma idéntica, y tienen los mismos tipos y valores que los campos respectivos en la tabla de la base de datos que tiene el mismo nombre que esas clases.

Para que coincidan las clases de Java y las tablas de base de datos, puedo usar cualquier ORM. ¿Hay alguna herramienta para que las clases AS (y, idealmente, el código de repetitivo de Remoting coincidente) también se generen automáticamente a partir de las de Java? Eché un vistazo a BlazeDS , pero no parece Tengo herramientas como esa, al menos no pude encontrar nada al respecto.

Por supuesto, en un mundo perfecto, describiría mis elementos de datos una vez y tendría autogenerado el DDL, el código Java y el código AS. ¿Existe tal herramienta, y es suficientemente útil?

Ah, sí, y sería genial si el formato de origen pudiera ser archivos protobuf ...

Nota: Parece que esta es la misma pregunta que this . Las respuestas parecen indicar que al menos no hay una herramienta común que " todos utilizan " o que tiene una reputación de alta calidad.

Otros consejos

Las únicas herramientas que conozco son para generar clases AS a partir de código de servidor son los asistentes integrados en el generador de Flex para generar automáticamente clases remotas de AS de ColdFusion CFC para su uso con un servicio AMF basado en ColdFusion.

Lo que puede ser útil recordar es que una vez que Flex ha recibido el objeto serializado y se ha creado una instancia de mx.utils.ObjectProxy (esto se relaciona con el código RemoteObject y servicios basados ??en AMF, pero imagino que una extensión de Protocol Buffer seguiría el mismo patrón), el proceso de conversión del proxy a una clase de ActionScript no es tan complicado. Siempre que su clase de Actionscript tenga propiedades o accesores con nombres que coincidan con las propiedades del objeto serializado y un alias de Objeto Remoto que coincida con el tipo del objeto serializado, entonces puede convertir el proxy de objeto a la clase remota sin tener que hacerlo. cualquier trabajo extra.

Como dije, no conozco una herramienta que haga lo que usted quiere, pero no sería demasiado difícil crear una herramienta para leer el tipo y las propiedades públicas de sus clases de Java, o extraer los mismos metadatos. desde los archivos de búfer de su protocolo, y escriba algún código de ActionScript fuera de esos Metadatos. Si no puede encontrar una solución que se ajuste a sus necesidades, puede considerar escribir una tarea de Ant o un script o algo para que lo haga por usted. Eso es lo que haría de todos modos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top