[ 
https://issues.apache.org/jira/browse/HDDS-818?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16681862#comment-16681862
 ] 

Giovanni Matteo Fumarola edited comment on HDDS-818 at 11/9/18 7:26 PM:
------------------------------------------------------------------------

I attached the fix in YARN.
In the past, I fixed a similar issue in YARN-6792.

Since 2 classes have the same XmlRootElement, the system does not know which 
class should use for the decode the XML response.

How to reproduce? Using any REST client tool call ws/v1/cluster/scheduler-conf 
from select XML as return format.

Error Message:
{noformat}
Nov 09, 2018 11:22:31 AM com.sun.jersey.spi.container.ContainerRequest getEntity
SEVERE: A message body reader for Java class 
javax.servlet.http.HttpServletRequest, and Java type interface 
javax.servlet.http.HttpServletRequest, and MIME media type 
application/octet-stream was not found.
The registered message body readers compatible with the MIME media type are:
application/octet-stream ->
com.sun.jersey.core.impl.provider.entity.ByteArrayProvider
com.sun.jersey.core.impl.provider.entity.FileProvider
com.sun.jersey.core.impl.provider.entity.InputStreamProvider
com.sun.jersey.core.impl.provider.entity.DataSourceProvider
com.sun.jersey.core.impl.provider.entity.RenderedImageProvider
 / ->
com.sun.jersey.core.impl.provider.entity.FormProvider
com.sun.jersey.core.impl.provider.entity.StringProvider
com.sun.jersey.core.impl.provider.entity.ByteArrayProvider
com.sun.jersey.core.impl.provider.entity.FileProvider
com.sun.jersey.core.impl.provider.entity.InputStreamProvider
com.sun.jersey.core.impl.provider.entity.DataSourceProvider
com.sun.jersey.core.impl.provider.entity.XMLJAXBElementProvider$General
com.sun.jersey.core.impl.provider.entity.ReaderProvider
com.sun.jersey.core.impl.provider.entity.DocumentProvider
com.sun.jersey.core.impl.provider.entity.SourceProvider$StreamSourceReader
com.sun.jersey.core.impl.provider.entity.SourceProvider$SAXSourceReader
com.sun.jersey.core.impl.provider.entity.SourceProvider$DOMSourceReader
com.sun.jersey.json.impl.provider.entity.JSONJAXBElementProvider$General
com.sun.jersey.json.impl.provider.entity.JSONArrayProvider$General
com.sun.jersey.json.impl.provider.entity.JSONObjectProvider$General
com.sun.jersey.core.impl.provider.entity.XMLRootElementProvider$General
com.sun.jersey.core.impl.provider.entity.XMLListElementProvider$General
com.sun.jersey.core.impl.provider.entity.XMLRootObjectProvider$General
com.sun.jersey.core.impl.provider.entity.EntityHolderReader
com.sun.jersey.json.impl.provider.entity.JSONRootElementProvider$General
com.sun.jersey.json.impl.provider.entity.JSONListElementProvider$General
com.sun.jersey.json.impl.provider.entity.JacksonProviderProxy
com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider
2018-11-09 11:22:31,106 WARN [qtp1384010761-21] webapp.GenericExceptionHandler 
(GenericExceptionHandler.java:toResponse(98)) - INTERNAL_SERVER_ERROR
javax.ws.rs.WebApplicationException: com.sun.jersey.api.MessageException: A 
message body reader for Java class javax.servlet.http.HttpServletRequest, and 
Java type interface javax.servlet.http.HttpServletRequest, and MIME media type 
application/octet-stream was not found.
at 
com.sun.jersey.spi.container.ContainerRequest.getEntity(ContainerRequest.java:477)
at 
com.sun.jersey.server.impl.model.method.dispatch.EntityParamDispatchProvider$EntityInjectable.getValue(EntityParamDispatchProvider.java:123)
{noformat}
 


was (Author: giovanni.fumarola):
I attached the fix in YARN.
Since 2 classes have the same XmlRootElement, the system does not know which 
class should use for the decode the XML response.

How to reproduce? Using any REST client tool call ws/v1/cluster/scheduler-conf 
from select XML as return format.

Error Message:
{noformat}
Nov 09, 2018 11:22:31 AM com.sun.jersey.spi.container.ContainerRequest getEntity
SEVERE: A message body reader for Java class 
javax.servlet.http.HttpServletRequest, and Java type interface 
javax.servlet.http.HttpServletRequest, and MIME media type 
application/octet-stream was not found.
The registered message body readers compatible with the MIME media type are:
application/octet-stream ->
com.sun.jersey.core.impl.provider.entity.ByteArrayProvider
com.sun.jersey.core.impl.provider.entity.FileProvider
com.sun.jersey.core.impl.provider.entity.InputStreamProvider
com.sun.jersey.core.impl.provider.entity.DataSourceProvider
com.sun.jersey.core.impl.provider.entity.RenderedImageProvider
 / ->
com.sun.jersey.core.impl.provider.entity.FormProvider
com.sun.jersey.core.impl.provider.entity.StringProvider
com.sun.jersey.core.impl.provider.entity.ByteArrayProvider
com.sun.jersey.core.impl.provider.entity.FileProvider
com.sun.jersey.core.impl.provider.entity.InputStreamProvider
com.sun.jersey.core.impl.provider.entity.DataSourceProvider
com.sun.jersey.core.impl.provider.entity.XMLJAXBElementProvider$General
com.sun.jersey.core.impl.provider.entity.ReaderProvider
com.sun.jersey.core.impl.provider.entity.DocumentProvider
com.sun.jersey.core.impl.provider.entity.SourceProvider$StreamSourceReader
com.sun.jersey.core.impl.provider.entity.SourceProvider$SAXSourceReader
com.sun.jersey.core.impl.provider.entity.SourceProvider$DOMSourceReader
com.sun.jersey.json.impl.provider.entity.JSONJAXBElementProvider$General
com.sun.jersey.json.impl.provider.entity.JSONArrayProvider$General
com.sun.jersey.json.impl.provider.entity.JSONObjectProvider$General
com.sun.jersey.core.impl.provider.entity.XMLRootElementProvider$General
com.sun.jersey.core.impl.provider.entity.XMLListElementProvider$General
com.sun.jersey.core.impl.provider.entity.XMLRootObjectProvider$General
com.sun.jersey.core.impl.provider.entity.EntityHolderReader
com.sun.jersey.json.impl.provider.entity.JSONRootElementProvider$General
com.sun.jersey.json.impl.provider.entity.JSONListElementProvider$General
com.sun.jersey.json.impl.provider.entity.JacksonProviderProxy
com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider
2018-11-09 11:22:31,106 WARN [qtp1384010761-21] webapp.GenericExceptionHandler 
(GenericExceptionHandler.java:toResponse(98)) - INTERNAL_SERVER_ERROR
javax.ws.rs.WebApplicationException: com.sun.jersey.api.MessageException: A 
message body reader for Java class javax.servlet.http.HttpServletRequest, and 
Java type interface javax.servlet.http.HttpServletRequest, and MIME media type 
application/octet-stream was not found.
at 
com.sun.jersey.spi.container.ContainerRequest.getEntity(ContainerRequest.java:477)
at 
com.sun.jersey.server.impl.model.method.dispatch.EntityParamDispatchProvider$EntityInjectable.getValue(EntityParamDispatchProvider.java:123)
{noformat}
 

> OzoneConfiguration uses an existing XMLRoot value
> -------------------------------------------------
>
>                 Key: HDDS-818
>                 URL: https://issues.apache.org/jira/browse/HDDS-818
>             Project: Hadoop Distributed Data Store
>          Issue Type: Bug
>            Reporter: Giovanni Matteo Fumarola
>            Priority: Major
>         Attachments: HDDS-818.v0.patch
>
>
> OzoneConfiguration and ConfInfo have 
> @XmlRootElement(name = "configuration")
> This makes REST Client crash for XML calls.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to