JAXB Make QName in Objectfactory accessible

2019-07-21 11:57发布

问题:

When you generate java classes with JAXB you'll always get a Class named ObjectFactory. In this class there is a private attribute QName with the namespace in it.

Is it possible to tell the generator to make this attribute accessible from the outside. So maybe make it public or create a getter for it?

回答1:

I believe those private static QName fields are only generated if the ObjectFactory needs methods that create JAXBElement<...> instances. If you call one of those methods to get a JAXBElement instance, you can then invoke its getName method to retrieve its associated QName.



回答2:

I am not aware of a way to do this using the XJC tool that comes with the JAXB reference implementation. However, XJC does allow you to create custom plugins that may let you do need to:

  • http://download.oracle.com/docs/cd/E17802_01/webservices/webservices/docs/2.0/jaxb/developPlugins.html


标签: java jaxb xjc