JAXB 解组
是否可以在不知道类类型的情况下解组该类 (JAXBContext.newInstance(clazz)
) ,或者测试即将到来的内容的正确方法是什么? 我确实收到了从纯文本中解组的消息 - 字符串
传入类不实现任何接口,并且可以位于任何包中。
谢谢
Is it possible to unmarshall a class without knowing it's type (JAXBContext.newInstance(clazz)
) , or what is proper way to test what is comming?
I do get messages for unmarshaling from plain text - String
Incomming classes doesn't implement any interface and can be in any package.
thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不,不是真的。 JAXB 上下文需要一些关于应绑定到哪些类的信息。如有必要,将每个可能的 JAXB 注解类的列表传递给上下文工厂方法。
不过,这不应该成为限制 - 您自己的代码还需要知道需要哪些类。如果您的代码不知道或不关心绑定类的类型,那么 JAXB 不是完成这项工作的工具,您应该只是将其解组到某种通用 DOM 中。
No, not really. The JAXB context needs some information about what classes should be bound to. if necessary, pass a list of every possible JAXB-annotated class to the context factory method.
This shouldn't be a limitation, though - your own code also needs to know what classes to expect. If your code doesn't know or care about the type of the bound classes, then JAXB isn't the tool for the job, you should just be unmarshalling into a generic DOM of some kind.
尝试找到您的类,这些类可以以 xml 形式出现在一个包中,然后将其列表传递给 JAXBContext。
Try to locate your classes, which can come in xml in one package and then pass the list of it to JAXBContext.