Hi Guys,
My jersey 1.1.1-ea-SNAPSHOT based server returns an XML document in
response to a request that specifies a query when the query parameter
"format=application/xml". It returns the equivalent JSON document when
the query parameter "format=application/json".
Thing work for certain queries fine. However, on certain queries I get
the following stack trace below for "format=application/json" but not
for "format=application/xml".
I tried turning on jersey logging using Jakub's suggestion here:
<
http://markmail.org/message/qwb57fksrtueox7h#query:jersey%20java%20logging+page:1+mid:fcmc5xvktvcrutns+state:results>
I did not see any log output.
Any suggestions on how best to debug this?
java.io.IOException: Error marshalling JAXB object of type "class org.freebxml.omar.jaxb.bindings.query._4_0.QueryResponse".
com.sun.jersey.core.provider.jaxb.AbstractRootElementProvider.writeTo(AbstractRootElementProvider.java:145)
com.sun.jersey.spi.container.ContainerResponse.write(ContainerResponse.java:254)
com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:693)
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:616)
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:607)
com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:309)
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:425)
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:590)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
*root cause*
javax.xml.bind.MarshalException
- with linked exception:
[net.sf.saxon.trans.DynamicError: javax.xml.stream.XMLStreamException: org.codehaus.jackson.JsonGenerationException: Can not write text value, expecting field name]
com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:328)
com.sun.xml.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:172)
com.sun.jersey.json.impl.JSONMarshaller.marshal(JSONMarshaller.java:123)
com.sun.jersey.json.impl.provider.entity.JSONRootElementProvider.writeTo(JSONRootElementProvider.java:139)
com.sun.jersey.core.provider.jaxb.AbstractRootElementProvider.writeTo(AbstractRootElementProvider.java:143)
com.sun.jersey.spi.container.ContainerResponse.write(ContainerResponse.java:254)
com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:693)
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:616)
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:607)
com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:309)
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:425)
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:590)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
*root cause*
net.sf.saxon.trans.DynamicError: javax.xml.stream.XMLStreamException: org.codehaus.jackson.JsonGenerationException: Can not write text value, expecting field name
com.sun.xml.bind.v2.runtime.XMLSerializer.reportError(XMLSerializer.java:245)
com.sun.xml.bind.v2.runtime.XMLSerializer.reportError(XMLSerializer.java:260)
com.sun.xml.bind.v2.runtime.XMLSerializer.writeDom(XMLSerializer.java:809)
com.sun.xml.bind.v2.runtime.property.SingleReferenceNodeProperty.serializeBody(SingleReferenceNodeProperty.java:109)
com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:332)
com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType(XMLSerializer.java:698)
com.sun.xml.bind.v2.runtime.property.ArrayElementNodeProperty.serializeItem(ArrayElementNodeProperty.java:65)
com.sun.xml.bind.v2.runtime.property.ArrayElementProperty.serializeListBody(ArrayElementProperty.java:168)
com.sun.xml.bind.v2.runtime.property.ArrayERProperty.serializeBody(ArrayERProperty.java:152)
com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:332)
com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType(XMLSerializer.java:698)
com.sun.xml.bind.v2.runtime.property.SingleElementNodeProperty.serializeBody(SingleElementNodeProperty.java:152)
com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:332)
com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType(XMLSerializer.java:698)
com.sun.xml.bind.v2.runtime.property.ArrayElementNodeProperty.serializeItem(ArrayElementNodeProperty.java:65)
com.sun.xml.bind.v2.runtime.property.ArrayElementProperty.serializeListBody(ArrayElementProperty.java:168)
com.sun.xml.bind.v2.runtime.property.ArrayERProperty.serializeBody(ArrayERProperty.java:152)
com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:332)
com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:328)
com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:328)
com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:328)
com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType(XMLSerializer.java:698)
com.sun.xml.bind.v2.runtime.property.ArrayElementNodeProperty.serializeItem(ArrayElementNodeProperty.java:65)
com.sun.xml.bind.v2.runtime.property.ArrayElementProperty.serializeListBody(ArrayElementProperty.java:168)
com.sun.xml.bind.v2.runtime.property.ArrayERProperty.serializeBody(ArrayERProperty.java:152)
com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:332)
com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType(XMLSerializer.java:698)
com.sun.xml.bind.v2.runtime.property.SingleElementNodeProperty.serializeBody(SingleElementNodeProperty.java:152)
com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:332)
com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody(ClassBeanInfoImpl.java:328)
com.sun.xml.bind.v2.runtime.XMLSerializer.childAsSoleContent(XMLSerializer.java:592)
com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeRoot(ClassBeanInfoImpl.java:320)
com.sun.xml.bind.v2.runtime.XMLSerializer.childAsRoot(XMLSerializer.java:493)
com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:325)
com.sun.xml.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:172)
com.sun.jersey.json.impl.JSONMarshaller.marshal(JSONMarshaller.java:123)
com.sun.jersey.json.impl.provider.entity.JSONRootElementProvider.writeTo(JSONRootElementProvider.java:139)
com.sun.jersey.core.provider.jaxb.AbstractRootElementProvider.writeTo(AbstractRootElementProvider.java:143)
com.sun.jersey.spi.container.ContainerResponse.write(ContainerResponse.java:254)
com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:693)
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:616)
com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:607)
com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:309)
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:425)
com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:590)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:390)
--
Regards,
Farrukh
Web: http://www.wellfleetsoftware.com