abdera-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ivan Bondarenko (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ABDERA-231) NullPointerException in RequestOptions.addHeader() when no previous header with that name has been set
Date Fri, 16 Nov 2012 18:16:12 GMT

    [ https://issues.apache.org/jira/browse/ABDERA-231?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13498985#comment-13498985

Ivan Bondarenko commented on ABDERA-231:

How to reopen the issue?
As I understand, the fix has modified the org.apache.abdera.protocol.client.RequestOptions.addHeader(String,
String...) method.
This method is incorrect in 1.1.2 version.
1) The variable "list" must not be checked for null after line 273: List<String> list
= headers != null ? Arrays.asList(headers) : new ArrayList<String>();
2) More important and a result of 1st point. Value is not assigned to headers if headers haven't
such header name before. This is definitely a blocking bug for "addHeader" method.
> NullPointerException in RequestOptions.addHeader() when no previous header with that
name has been set
> ------------------------------------------------------------------------------------------------------
>                 Key: ABDERA-231
>                 URL: https://issues.apache.org/jira/browse/ABDERA-231
>             Project: Abdera
>          Issue Type: Bug
>    Affects Versions: 0.4.0
>         Environment: All
>            Reporter: Jon Hewitt
>   Original Estimate: 1h
>  Remaining Estimate: 1h
> This code snippet recreates the problem.
>         RequestOptions requestOptions = client.getDefaultRequestOptions();
> 	requestOptions.addHeader("Cookie", "anyNonNullValue");
> Caused by: java.lang.NullPointerException
> 	at java.util.Arrays$ArrayList.<init>(Arrays.java:2370)
> 	at java.util.Arrays.asList(Arrays.java:2356)
> 	at org.apache.abdera.protocol.client.RequestOptions.addHeader(RequestOptions.java:272)
> 	at org.apache.abdera.protocol.client.RequestOptions.addHeader(RequestOptions.java:263)
> It looks like that RequestOptions.addEncodedHeader() also has the same problem of calling
Arrays.asList() before checking for returned null value from getHeaders().get(header)
> One can workaround the problem by calling getHeader() to see if the header has previous
values.  If it doesn't, just call setHeader().
> This is a regression - addHeader() works fine in 0.2.2.

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

View raw message