Thanks for the information. I will try with a SegmentNodeStore and an
appropriate implementation of BlobStore.

2015-01-08 15:00 GMT+01:00 Michael Dürig <[email protected]>:
>
> The level of support depends on the NodeStore implementation:
>
> MemoryNodeStore.getBlob() always returns null.
>
> DocumentNodeStore.getBlob() works AFAICS as you
>
> SegmentNodeStore.getBlob() only works if configured with an (external)
> BlobStore. Otherwise it throws an ISE.
>
> Michael
>
>
> On 8.1.15 11:05 , Francesco Mari wrote:
>>
>> I assume that the problem I am experiencing is something different
>> from what I described.
>>
>> When a Blob is created, it is supposed to be assigned to a property.
>> This, in turn, will create a BinaryPropertyState to represent the
>> assignment. As long as the change is not committed into the
>> repository, the blob can't be retrieved that way. Even then, some
>> implementations of NodeStore don't support getBlob() at all - they
>> always return null.
>>
>> In which conditions can I use createBlob() and getBlob() without
>> assigning a Blob to a property, and before committing the current
>> session? More importantly, is this use case supported at all?
>>
>>
>>
>> 2015-01-07 20:21 GMT+01:00 Michael Dürig <[email protected]>:
>>>
>>>
>>>
>>> On 7.1.15 6:07 , Francesco Mari wrote:
>>>>
>>>>
>>>> The problem is that Blob.getReference() always return null, because
>>>> the actual implementation (ArrayBasedBlob) doesn't override that
>>>> method from AbstractBlob.
>>>>
>>>> Is this behavior expected? Am I doing something wrong or misusing the
>>>> API?
>>>
>>>
>>>
>>> The general contract says "Returns a secure reference to this blob, or
>>> null
>>> if such a reference is not available." So technically this is not a bug.
>>> The
>>> reason for returning null is probably because no one came up with the
>>> need
>>> for a more sophisticated implementation yet.
>>>
>>> Michael

Reply via email to