这篇文章JSON展示了如何使用Java Metawidget从JSON模式创建一个JSON。我想对XSD(如果需要的话还有XML)做完全相同的事情。
元小部件文档介绍了很多关于XMLInspectors的内容,但是经过一些试验和错误之后,我还没有得到结果(我没有找到任何例子)。你们中的任何人有任何想法,如果和如何整个事情的工作与元部件?如果这不应该与元部件,我也愿意考虑Metawidget的替代方案,我想动态创建表单,这意味着在运行时表单应该从传递的xsd创建(s),然后从其中生成XML(在java中)。
2条答案
按热度按时间7rfyedvj1#
在一般情况下,处理原始XSD文档并不容易,因为有太多的特性,如命名模型组、替换组和由扩展派生的类型,这使得它变得复杂。如果您确实需要从XSD架构中提取信息,我建议使用架构处理器,它允许您通过某些API访问编译后的信息。例如,Saxon可以将编译后的架构输出为.SCM文件。其比原始形式更容易处理。
qij5mzcb2#
元窗口部件已经有了一个XmlSchemaInspector,它可以满足您的需要。
除此之外,Java Metawidget的内部检查格式已经是XML(尽管是XML的String,以避免依赖性)。
因此,您需要创建自己的Inspector,它读取您自己的XML格式,并将其操作为上述格式,然后将其作为String返回。
检查XML文件,
BaseXmlInspector
可以帮助打开和遍历XML文件,以及将多个XML文件合并为一个(例如合并多个HibernateMap文件)。它还允许您将解析后的XML作为Map来使用,这会更容易一些,并为您完成转换。