Ao utilizar a anotação @XmlElement(required=true) ocorre o erro:
A classe tem duas propriedades do mesmo nome "token" this problem is related to the following location: at public java.lang.String br.com.caelum.estoque.modelo.usuario.TokenUsuario.getToken() at br.com.caelum.estoque.modelo.usuario.TokenUsuario this problem is related to the following location: at private java.lang.String br.com.caelum.estoque.modelo.usuario.TokenUsuario.token at br.com.caelum.estoque.modelo.usuario.TokenUsuario
at com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException$Builder.check(Unknown Source) at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(Unknown Source) at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.(Unknown Source) at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.(Unknown Source) at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(Unknown Source) at com.sun.xml.internal.bind.v2.ContextFactory.createContext(Unknown Source) at com.sun.xml.internal.bind.api.JAXBRIContext.newInstance(Unknown Source) at com.sun.xml.internal.bind.api.JAXBRIContext.newInstance(Unknown Source) at com.sun.xml.internal.ws.developer.JAXBContextFactory$1.createJAXBContext(Unknown Source) ... 22 more