You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Jukka Zitting (Resolved) (JIRA)" <ji...@apache.org> on 2012/01/27 20:12:10 UTC

[jira] [Resolved] (JCR-3222) Allow servlet filters to specify custom session providers

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

Jukka Zitting resolved JCR-3222.
--------------------------------

       Resolution: Fixed
    Fix Version/s: 2.4
         Assignee: Jukka Zitting

OK, I've now combined the two approaches. Revision 1236819 is my original patch and revision 1236821 a modified version of Felix' patch with support for potentially more than just a single external SessionProvider service. Note that the request attribute mechanism works for all webdav servlets, while the OSGi service mechanism only works for the davex servlet (since it's the only servlet configured as an OSGi service).

Additionally in revision 1236820 I moved some extra SessionProviderImpl code (added in JCR-2539 and JCR-2542) to the JCRWebdavServlet class where it belongs better. That clears up the SessionProvider API contract and avoids breaking functionality when using custom SessionProvider implementations.

Merged to the 2.4 branch in revision 1236837.

                
> Allow servlet filters to specify custom session providers
> ---------------------------------------------------------
>
>                 Key: JCR-3222
>                 URL: https://issues.apache.org/jira/browse/JCR-3222
>             Project: Jackrabbit Content Repository
>          Issue Type: Improvement
>          Components: jackrabbit-jcr-server
>            Reporter: Jukka Zitting
>            Assignee: Jukka Zitting
>            Priority: Minor
>             Fix For: 2.4
>
>         Attachments: 0001-JCR-3222-Allow-servlet-filters-to-specify-custom-ses.patch, JCR-3222-fmeschbe.patch, jackrabbit-jcr-server-2.6-SNAPSHOT.jar
>
>
> In order to integrate the Jackrabbit davex server functionality with their custom authentication logic, the Sling project currently needs to embed and subclass the davex servlet classes. It would be cleaner if such tight coupling wasn't needed.
> One way to achieve something like that would be to allow external components to provide a custom SessionProvider instance as an extra request attribute. This way for example a servlet filter that implements such custom authentication logic could easily make its functionality available to the standard davex servlet in Jackrabbit.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira