小编Joa*_*oan的帖子

来自xsd的动态java bean

我有两个应用程序,一个作为客户端,另一个作为服务器.在服务器应用程序中,我使用Eclipse中的xjc生成ObjectFactory和类.因此,其中一个类称为widgetEvenCall.来自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>
Run Code Online (Sandbox Code Playgroud)

JAXB xjc使用它们的getter和setter生成类WidgetEventCall,WidgetEventDescriptor和WidgetParameter.

客户端应用程序既没有这些类也没有ObjectFactory,远程调用服务器应用程序上的服务,得到一个XML,如:

. . .
<widgetEventCall>
    <widgetEventDescriptor> ... </widgetEventDescriptor>
    <widgetParameter>...</widgetParameter>
    <widgetParameter>...</widgetParameter>
    . . .
</widgetEventCall>
Run Code Online (Sandbox Code Playgroud)

幸运的是,客户端应用程序可以访问.xsd定义.我的问题是:有可能,使用xml内容和xsd定义,为widgetEventCall,widgetEventDescriptor和widgetParameter创建对象,就好像它们是由xjc创建的,包括getter和setter,保持客户端应用程序不知道它们,使用专属反思?是否有一种自动化方式可以达到此目的?

我的目标是将此结果用于JSP文件,即将对象放入请求并像widgetEventCall.widgetParameter [0] .someProperty一样访问它,因此我需要生成getter.

提前致谢.
琼.

java xsd dynamic jaxb javabeans

5
推荐指数
1
解决办法
6770
查看次数

标签 统计

dynamic ×1

java ×1

javabeans ×1

jaxb ×1

xsd ×1