quando o JAXB unmarshaller.unmarshal retorna um JAXBElement <MySchemaObject> ou um MySchemaObject?

Eu tenho dois códigos, em dois projetos java diferentes, fazendo quase a mesma coisa (desmarque a entrada de um webservice de acordo com um arquivo xsd).

Mas em um caso eu deveria escrever isto: (Entrada é um nome de espaço reservado) (elemento é entrada de OMElement)

<code>ClassLoader clInput = input.ObjectFactory.class.getClassLoader();
JAXBContext jc = JAXBContext.newInstance("input", clInput);
Unmarshaller unmarshaller = jc.createUnmarshaller();
Input input = (Input)unmarshaller.unmarshal( element.getXMLStreamReader() );
</code>

e no outro lib eu devo usar JAXBElement.getValue (), porque é um JAXBElement que é retornado, e um simples (Input) elenco simplesmente falha:

<code>Input input = (Input)unmarshaller.unmarshal( element.getXMLStreamReader() ).getValue();
</code>

Você sabe o que leva a tal diferença?

questionAnswers(5)

yourAnswerToTheQuestion