You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@abdera.apache.org by "Jim Ancona (JIRA)" <ji...@apache.org> on 2008/01/09 20:40:34 UTC

[jira] Updated: (ABDERA-87) Null ResponseContext in call to AbstractServiceProvider.end()

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

Jim Ancona updated ABDERA-87:
-----------------------------

    Attachment: AbstractServiceProvider_end.patch

Patch. 

WARNING: This patch also includes the changes in issue ABDERA-86!!

> Null ResponseContext in call to AbstractServiceProvider.end()
> -------------------------------------------------------------
>
>                 Key: ABDERA-87
>                 URL: https://issues.apache.org/jira/browse/ABDERA-87
>             Project: Abdera
>          Issue Type: Bug
>    Affects Versions: 0.4.0
>            Reporter: Jim Ancona
>         Attachments: AbstractServiceProvider_end.patch
>
>
> Several of the calls to the end() method in AbstractServiceProvider have a null ResponseContext  parameter because of the way the try/finally blocks are coded. This bug also affects calls to CollectionProvider.end()
> For example:
> public ResponseContext getEntry(RequestContext request) {
>       CollectionProvider provider = null;
>       ResponseContext response = null;
>       try {
>         IRI entryBaseIri = resolveBase(request).resolve("./");
>         provider = getCollectionProvider(request);
>         provider.begin(request);
>         
>         return provider.getEntry(request, entryBaseIri);
>       } catch (ResponseContextException e) {
>         response = createErrorResponse(e);
>         return response;
>       } finally {
>         end(provider, request, response);
>       }
>     }
> should be:
>     public ResponseContext getEntry(RequestContext request) {
>       CollectionProvider provider = null;
>       ResponseContext response = null;
>       try {
>         IRI entryBaseIri = resolveBase(request).resolve("./");
>         provider = getCollectionProvider(request);
>         provider.begin(request);
>         
>         response = provider.getEntry(request, entryBaseIri);
>       } catch (ResponseContextException e) {
>         response = createErrorResponse(e);
>       } finally {
>         end(provider, request, response);
>       }
>       return response;
>     }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.