On 28 Jul 2010, at 17:29, Justin Edelson wrote:

> On 7/27/10 9:11 AM, Ian Boston wrote:
>> 
>> On 27 Jul 2010, at 13:59, Ian Boston wrote:
>> 
>>> 
>>> On 27 Jul 2010, at 13:38, Justin Edelson wrote:
>>> 
>>>> Ian-
>>>> I'm not near a Sling working copy right now, but have you looked at using 
>>>> the NodeNameGenerator interface? I added it to solve a similar use case.
>>> 
>>> Will do,
>>> thanks for the pointer.
>>> Ian
>>> 
>>> 
>> 
>> Yes that generates a node where a post is performed to a URL ending / or *, 
>> which would be Ok except that the SlingFileUploadServlet is hard bound to 
>> creating a file of the name specified in the file upload field, rather than 
>> the parent which the NodeNameGenerator can supply
>> 
>> eg 
>> currently
>> multipart file upload to /pool/ or /pool/* 
>> 
>> would generate a path of /pool/<generatedname>
>> 
>> and then SlingFileUploadServlet would create
>> /pool/<generatedname>
>>             - jcr:primaryType = nt:folder
>>                    /<post-file-name>  
>>                          - jcr:primaryType = nt:file 
>>                         etc
>> 
>> I need
>> /pool/<generatedname>
>>              - jcr:primaryType = nt:file 
>> 
>> 
>> I have created a servlet at /system/pool/createfile which doesn't implement 
>> all the the sling protocol, but will do for the moment. (its Ugly).
>> 
>> The alternative would be to modify the SlingFileUploadServlet to use a 
>> NodeNameGenerator implementation to create a sub path rather than always 
>> relying on the name provided in the file upload.
>> 
>> Ian
>> 
> What about:
> 
> POST /pool/*
> jcr:primaryType = nt:file
> jcr:content = (the file form field)
> 
> By default, SlingFileUploadHelper will create a nt:resource, so I think
> this will create the right thing.
> 
> I think everything else can be done with filters.
> 
> Justin
> 


Thanks I will give that a go
Ian


> 

Reply via email to