Tengo dos aplicaciones, una que actúa como cliente y la otra como servidor. En la aplicación de servidor genero ObjectFactory y las clases usando xjc de Eclipse. Como resultado, una de estas clases se llama widgetEvenCall. Desde el xsd:Bean Java dinámico de xsd
...
<xs:element name="widgetEventCall">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="1" maxOccurs="1" ref="tns:widgetEventDescriptor" />
<xs:element minOccurs="0" maxOccurs="unbounded" ref="tns:widgetParameter" />
</xs:sequence>
</xs:complexType>
</xs:element>
JAXB xjc genera las clases WidgetEventCall, WidgetEventDescriptor y WidgetParameter, con sus captadores y definidores.
La aplicación cliente, que no tienen ni las clases ni la ObjectFactory, llamadas de forma remota un servicio en la aplicación de servidor, obteniendo como resultado un XML como:
. . .
<widgetEventCall>
<widgetEventDescriptor> ... </widgetEventDescriptor>
<widgetParameter>...</widgetParameter>
<widgetParameter>...</widgetParameter>
. . .
</widgetEventCall>
Por suerte, la aplicación cliente tiene acceso a la definición .xsd. Mi pregunta es: es posible, teniendo el contenido xml y la definición xsd, crear los objetos para widgetEventCall, widgetEventDescriptor y widgetParameter como si hubieran sido creados por xjc, incluyendo getters y setters, manteniendo la aplicación cliente sin conocimiento de ellos, usando exclusivamente reflexión? ¿Hay una forma automática de llegar a esto?
mi objetivo es utilizar este resultado en un archivo JSP, es decir, poner el objeto en la solicitud y acceder a él como widgetEventCall.widgetParameter [0] .someProperty, así que necesito que se generen los captadores.
Gracias de antemano.
Joan.
¡Esto se ve genial!Voy a echar un vistazo para intentarlo, pero me temo que no puedo agregar nuevas bibliotecas jar a mi aplicación :(Muchas gracias por su ayuda. Joan. – Joan