[
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