[ 
https://issues.apache.org/jira/browse/HADOOP-20006?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated HADOOP-20006:
------------------------------------
    Labels: pull-request-available  (was: )

> Clear the response charset along with the content type
> ------------------------------------------------------
>
>                 Key: HADOOP-20006
>                 URL: https://issues.apache.org/jira/browse/HADOOP-20006
>             Project: Hadoop Common
>          Issue Type: Sub-task
>          Components: common, hdfs, mapreduce, yarn
>            Reporter: Jose Luis López
>            Priority: Major
>              Labels: pull-request-available
>
> Every server {{HttpServer2}} builds runs {{QuotingInputFilter}}, which sets 
> {{text/plain; charset=utf-8}} before the request reaches its resource. JAX-RS 
> resources that choose their own content type undo it with 
> {{response.setContentType(null)}}, at 14 call sites in 13 classes.
> On Jetty 12 that is not enough. The charset is dropped, but the response 
> remembers that one was set and appends it to the next content type, so 
> WebHDFS SETPERMISSION answers {{application/octet-stream;charset=null}}. 
> Types without a default charset are affected, {{application/xml}} among them; 
> {{application/json}} is not.
> h3. Changes
> * New {{JettyUtils#clearContentType(HttpServletResponse)}} calls 
> {{setContentType(null)}} and {{setCharacterEncoding(null)}}. It uses only 
> {{javax.servlet}}.
> * It is used at all 14 call sites: {{NamenodeWebHdfsMethods}}, the WebHDFS 
> {{ExceptionHandler}}, {{AMWebServices}}, {{HsWebServices}}, 
> {{GenericExceptionHandler}}, {{TimelineWebServices}}, {{LogWebService}}, 
> {{WebServices}}, {{NMWebServices}}, {{RMWebServices}}, {{RouterWebServices}}, 
> {{TimelineCollectorWebService}} and {{TimelineReaderWebServices}}.
> h3. Compatibility
> No change on Jetty 9.4.
> h3. Tests
> {{TestHttpServer}} asserts the Content-Type header a resource sends after 
> clearing and re-setting its content type.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to