Module java.xml.bind
Package javax.xml.bind

## Class JAXBIntrospector

- java.lang.Object
- - javax.xml.bind.JAXBIntrospector

    public abstract class JAXBIntrospector
    extends java.lang.Object

Provide access to JAXB xml binding data for a JAXB object.

Intially, the intent of this class is to just conceptualize how a JAXB application developer can access xml binding information, independent if binding model is java to schema or schema to java. Since accessing the XML element name related to a JAXB element is a highly requested feature, demonstrate access to this binding information. The factory method to get a `JAXBIntrospector` instance is `JAXBContext.createJAXBIntrospector()`.

Since:
  1.6, JAXB 2.0
See Also:
  `JAXBContext.createJAXBIntrospector()`

### Constructor Summary

Constructors
`JAXBIntrospector​()`

### Method Summary

All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
`abstract javax.xml.namespace.QName` `getElementName​(java.lang.Object jaxbElement)` Get xml element qname for `jaxbElement`.
`static java.lang.Object` `getValue​(java.lang.Object jaxbElement)` Get the element value of a JAXB element.
`abstract boolean` `isElement​(java.lang.Object object)` Return true if `object` represents a JAXB element.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### JAXBIntrospector

    public JAXBIntrospector​()

### Method Detail

#### isElement

    public abstract boolean isElement​(java.lang.Object object)

Return true if `object` represents a JAXB element.

Parameter `object` is a JAXB element for following cases:

1. It is an instance of `javax.xml.bind.JAXBElement`.
2. The class of `object` is annotated with `@XmlRootElement`.

See Also:
  `getElementName(Object)`

#### getElementName

    public abstract javax.xml.namespace.QName getElementName​(java.lang.Object jaxbElement)

Get xml element qname for `jaxbElement`.

Parameters:
  `jaxbElement` - is an object that `isElement(Object)` returned true.
Returns:
  xml element qname associated with jaxbElement; null if `jaxbElement` is not a JAXB Element.

#### getValue

    public static java.lang.Object getValue​(java.lang.Object jaxbElement)

Get the element value of a JAXB element.

Convenience method to abstract whether working with either a javax.xml.bind.JAXBElement instance or an instance of `@XmlRootElement` annotated Java class.

Parameters:
  `jaxbElement` - object that #isElement(Object) returns true.
Returns:
  The element value of the `jaxbElement`.

Copyright © 2004-2017 Oracle