You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Tim (JIRA)" <ji...@apache.org> on 2012/11/15 15:04:12 UTC

[jira] [Created] (HTTPCLIENT-1260) Javadoc incorrectly states StringBody(String)'s encoding uses the system default.

Tim created HTTPCLIENT-1260:
-------------------------------

             Summary: Javadoc incorrectly states StringBody(String)'s encoding uses the system default.
                 Key: HTTPCLIENT-1260
                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1260
             Project: HttpComponents HttpClient
          Issue Type: Bug
          Components: HttpClient
    Affects Versions: 4.2.2
         Environment: Android
            Reporter: Tim
            Priority: Minor


(Sorry if this is the wrong component.)

In the class `org.apache.http.entity.mime.content.StringBody`, there is the following code:

    /**
     * Create a StringBody from the specified text.
     * The mime type is set to "text/plain".
     * The hosts default charset is used.
     *
     * @param text to be used for the body, not {@code null}
     * @throws UnsupportedEncodingException
     * @throws IllegalArgumentException if the {@code text} parameter is null
     */
    public StringBody(final String text) throws UnsupportedEncodingException {
        this(text, "text/plain", null);
    }

Note that it says "The hosts [sic] default charset is used.". This is incorrect. The code *always* uses US-ASCII no matter what the host's default charset is (e.g. on Android it is UTF-8).

Quite annoying! It should read:

    /**
     * Create a StringBody from the specified text.
     * The mime type is set to "text/plain".
     * The charset is set to US-ASCII.
     *
     * @param text to be used for the body, not {@code null}
     * @throws UnsupportedEncodingException
     * @throws IllegalArgumentException if the {@code text} parameter is null
     */
    public StringBody(final String text) throws UnsupportedEncodingException {
        this(text, "text/plain", null);
    }

I'd appreciate it if you could fix this, so future developers won't have the frustration of working out why their non-ascii characters are all being changed to question marks.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org


[jira] [Commented] (HTTPCLIENT-1260) Javadoc incorrectly states StringBody(String)'s encoding uses the system default.

Posted by "Gary Gregory (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HTTPCLIENT-1260?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13498233#comment-13498233 ] 

Gary Gregory commented on HTTPCLIENT-1260:
------------------------------------------

Thank you for the bug report.

Fixed in trunk:

commit -m "[HTTPCLIENT-1260] Javadoc incorrectly states StringBody(String)'s encoding uses the system default. Contributed by Tim <tdhutt at gmail.com> and Gary Gregory <ggregory at apache.org> 
" C:/svn/org/apache/httpcomponents/trunk/httpclient/httpmime/src/main/java/org/apache/http/entity/mime/content/StringBody.java C:/svn/org/apache/httpcomponents/trunk/httpclient/RELEASE_NOTES.txt
    Sending        C:/svn/org/apache/httpcomponents/trunk/httpclient/RELEASE_NOTES.txt
    Sending        C:/svn/org/apache/httpcomponents/trunk/httpclient/httpmime/src/main/java/org/apache/http/entity/mime/content/StringBody.java
    Transmitting file data ...
    Committed revision 1409922.

                
> Javadoc incorrectly states StringBody(String)'s encoding uses the system default.
> ---------------------------------------------------------------------------------
>
>                 Key: HTTPCLIENT-1260
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1260
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>          Components: HttpClient
>    Affects Versions: 4.2.2
>         Environment: Android
>            Reporter: Tim
>            Priority: Minor
>              Labels: documentation, newbie
>   Original Estimate: 5m
>  Remaining Estimate: 5m
>
> (Sorry if this is the wrong component.)
> In the class `org.apache.http.entity.mime.content.StringBody`, there is the following code:
>     /**
>      * Create a StringBody from the specified text.
>      * The mime type is set to "text/plain".
>      * The hosts default charset is used.
>      *
>      * @param text to be used for the body, not {@code null}
>      * @throws UnsupportedEncodingException
>      * @throws IllegalArgumentException if the {@code text} parameter is null
>      */
>     public StringBody(final String text) throws UnsupportedEncodingException {
>         this(text, "text/plain", null);
>     }
> Note that it says "The hosts [sic] default charset is used.". This is incorrect. The code *always* uses US-ASCII no matter what the host's default charset is (e.g. on Android it is UTF-8).
> Quite annoying! It should read:
>     /**
>      * Create a StringBody from the specified text.
>      * The mime type is set to "text/plain".
>      * The charset is set to US-ASCII.
>      *
>      * @param text to be used for the body, not {@code null}
>      * @throws UnsupportedEncodingException
>      * @throws IllegalArgumentException if the {@code text} parameter is null
>      */
>     public StringBody(final String text) throws UnsupportedEncodingException {
>         this(text, "text/plain", null);
>     }
> I'd appreciate it if you could fix this, so future developers won't have the frustration of working out why their non-ascii characters are all being changed to question marks.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org


[jira] [Resolved] (HTTPCLIENT-1260) Javadoc incorrectly states StringBody(String)'s encoding uses the system default.

Posted by "Gary Gregory (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HTTPCLIENT-1260?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gary Gregory resolved HTTPCLIENT-1260.
--------------------------------------

       Resolution: Fixed
    Fix Version/s: 4.3 Alpha1
    
> Javadoc incorrectly states StringBody(String)'s encoding uses the system default.
> ---------------------------------------------------------------------------------
>
>                 Key: HTTPCLIENT-1260
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1260
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>          Components: HttpClient
>    Affects Versions: 4.2.2
>         Environment: Android
>            Reporter: Tim
>            Priority: Minor
>              Labels: documentation, newbie
>             Fix For: 4.3 Alpha1
>
>   Original Estimate: 5m
>  Remaining Estimate: 5m
>
> (Sorry if this is the wrong component.)
> In the class `org.apache.http.entity.mime.content.StringBody`, there is the following code:
>     /**
>      * Create a StringBody from the specified text.
>      * The mime type is set to "text/plain".
>      * The hosts default charset is used.
>      *
>      * @param text to be used for the body, not {@code null}
>      * @throws UnsupportedEncodingException
>      * @throws IllegalArgumentException if the {@code text} parameter is null
>      */
>     public StringBody(final String text) throws UnsupportedEncodingException {
>         this(text, "text/plain", null);
>     }
> Note that it says "The hosts [sic] default charset is used.". This is incorrect. The code *always* uses US-ASCII no matter what the host's default charset is (e.g. on Android it is UTF-8).
> Quite annoying! It should read:
>     /**
>      * Create a StringBody from the specified text.
>      * The mime type is set to "text/plain".
>      * The charset is set to US-ASCII.
>      *
>      * @param text to be used for the body, not {@code null}
>      * @throws UnsupportedEncodingException
>      * @throws IllegalArgumentException if the {@code text} parameter is null
>      */
>     public StringBody(final String text) throws UnsupportedEncodingException {
>         this(text, "text/plain", null);
>     }
> I'd appreciate it if you could fix this, so future developers won't have the frustration of working out why their non-ascii characters are all being changed to question marks.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org