Hey Felix,

Yeah, my problem has been resolved :)! Just thinking out loud a bit here. 

Seeing as you can specify the context path with a launchpad command line option 
when starting the jar (-r path) and you can also specify it in the 
sling.properties file, I thought it might be a nice addition to the sling 
settings service to also be exposed in some way after startup. 

Greetings,
Roy

> On 13 Dec 2016, at 08:37, Felix Meschberger <fmesc...@adobe.com> wrote:
> 
> Hi Roy
> 
> While the approach sounds interesting with some caveats: It has the 
> whiteboard.listener property twice and it attaches to the default Http 
> Context which may or may not reflect Sling’s own servlet context (mostly it 
> does, but there is no guarantee). What you could do is use the CONTEXT_SELECT 
> property and select the org.apache.sling context.
> 
> But then, I don’t think we should expose the Servlet Context Path in the 
> Sling Settings. IMHO Sling Settings is about the Sling Application as a whole 
> and not a specific aspect of Sling.
> 
> And if the context path is properly exposed to your TransformerFactory, I 
> think you just have everything you need. As I expect your TransformerFactory 
> to only be used as part of request processing anyway, right ?
> 
> Regards
> Felix
> 
>> Am 12.12.2016 um 22:07 schrieb Roy Teeuwen <r...@teeuwen.be>:
>> 
>> Hey Carsten,
>> 
>> Ok cool, thanks for the info! Maybe it would be useful to add the context 
>> path to the SlingSettingsService? I created an initial patch:
>> 
>> https://github.com/apache/sling/compare/trunk...royteeuwen:feature/add-context-path-to-sling-settings-service
>>  
>> <https://github.com/apache/sling/compare/trunk...royteeuwen:feature/add-context-path-to-sling-settings-service>
>> 
>> What do you think?
>> 
>> Greets,
>> Roy
>> 
>>> On 12 Dec 2016, at 16:14, Carsten Ziegeler <cziege...@apache.org> wrote:
>>> 
>>> Hi,
>>> 
>>> you either need a servlet request or servlet context, you can get a
>>> servlet context through the init method of a servlet or by registering a
>>> servlet context listener (assuming you use latest Sling which is using
>>> the http whiteboard).
>>> Other than those, I think there is no good way
>>> 
>>> Regards
>>> Carsten
>>> 
>>> Roy Teeuwen wrote
>>>> Hey all,
>>>> 
>>>> It seems I was able to fix it by using the sling request fro 
>>>> ProcessingContext that is available in the TransformerFactory init method 
>>>> :). 
>>>> But it would still be nice to know if it is possible to get the context 
>>>> path without a sling request!
>>>> 
>>>> Greets,
>>>> Roy
>>>> 
>>>> 
>>>>> On 9 Dec 2016, at 17:14, Roy Teeuwen <r...@teeuwen.be> wrote:
>>>>> 
>>>>> Hey all,
>>>>> 
>>>>> I am trying to get the context path of the sling application somewhere 
>>>>> where I don't have a HttpServletRequest at hand, so I cant call 
>>>>> request.getContextPath(). 
>>>>> 
>>>>> More specifically I have a bug in a TransformerFactory that transforms 
>>>>> links to versioned clientlibs (acs-aem-commons 
>>>>> VersionedClientlibsTransformerFactory), but my application has a context 
>>>>> path, so this doesn't work. 
>>>>> I want to try and see if I can fix it myself and create a PR instead 
>>>>> reporting a bug, but I'm a bit lost in how to get the context path. 
>>>>> Anyone can help?
>>>>> 
>>>>> Greets,
>>>>> Roy
>>>> 
>>>> 
>>> 
>>> 
>>> 
>>> 
>>> -- 
>>> Carsten Ziegeler
>>> Adobe Research Switzerland
>>> cziege...@apache.org
>>> 
>> 
> 

Reply via email to