JIBX / JAXB生成从.jar扩展其他类的类的XML Schema?

时间:2013-03-19 08:37:25

标签: java jaxb xsd jibx

我需要为一堆Java类构建XML Schema。我尝试使用JAXB(schemagen)和JIBX(bindgen)。我的java类扩展到库中的类,包含几个继承和子类。

使用JAXB

失败1 :我收到异常JAXB can't handle interfaces。我的类没有任何注释,也没有.jar文件中的扩展类。

public class MySchemaOutputResolver extends SchemaOutputResolver {
    public static void main(String[] args) throws IOException, JAXBException {    
        JAXBContext jaxbContext = JAXBContext.newInstance(MYCLASS.class);
        jaxbContext.generateSchema(new MySchemaOutputResolver(filepath));
    }

    String filepath = null;
    public MySchemaOutputResolver(String filepath)  {
        this.filepath = filepath;
    }

    @Override
    public Result createOutput(String namespaceURI, String suggestedFileName) throws IOException {
        File file = new File(filepath);
        StreamResult result = new StreamResult(file);
        result.setSystemId(file.toURI().toURL().toString());
        return result;
    }
} 

失败2:然后我尝试使用JIBX(bindgen)。但是这里的输出只包含当前类的值。不会创建扩展类中的所有变量。

所以也许我基本上问这个问题:

如何创建一个XML Schema,其中包含来自.jar扩展另一个类的Java类的所有属性?

0 个答案:

没有答案