You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@abdera.apache.org by Stefan Guggisberg <st...@gmail.com> on 2008/01/25 17:14:27 UTC

JcrCollectionProvider

hi everybody,

please allow me to quickly introduce myself. i am a committer in the
apache jackrabbit project
and also an active member of the jsr-170 and jsr-283 expert groups.
not too surprisingly
i think that APP and JCR are a natural fit ;-)

i noticed that there's already JCR support in abdera (i.e.
JcrCollectionProvider). i'd be
therefore very interested to learn more about your experiences with
JCR/jackrabbit.

what are the biggest problems you're facing when using jackrabbit?  if
there's anything
i can help in making it easier for you to integrate jackrabbit as a
persistence layer i'd be
happy to support your efforts :)

cheers
stefan

Re: JcrCollectionProvider

Posted by Stefan Guggisberg <st...@gmail.com>.
On Jan 28, 2008 6:54 PM, James M Snell <ja...@gmail.com> wrote:
> If you would, please post the patch to Abdera's jira tracker.

done: http://issues.apache.org/jira/browse/ABDERA-93

cheers
stefan

>
> - James
>
>
> Stefan Guggisberg wrote:
> > On Jan 26, 2008 1:52 AM, Dan Diephouse <da...@mulesource.com> wrote:
> >> Stefan Guggisberg wrote:
> >>> hi everybody,
> >>>
> >>> please allow me to quickly introduce myself. i am a committer in the
> >>> apache jackrabbit project
> >>> and also an active member of the jsr-170 and jsr-283 expert groups.
> >>> not too surprisingly
> >>> i think that APP and JCR are a natural fit ;-)
> >>>
> >>> i noticed that there's already JCR support in abdera (i.e.
> >>> JcrCollectionProvider). i'd be
> >>> therefore very interested to learn more about your experiences with
> >>> JCR/jackrabbit.
> >>>
> >>> what are the biggest problems you're facing when using jackrabbit?  if
> >>> there's anything
> >>> i can help in making it easier for you to integrate jackrabbit as a
> >>> persistence layer i'd be
> >>> happy to support your efforts :)
> >>>
> >>> cheers
> >>> stefan
> >>>
> >> I think the main thing that it could use is just a review from someone
> >> who actually understands JCR :-) If you were interested in just checking
> >> out my JCR code I'd appreciate it.
> >
> > i had a quick look at the JcrColelctionProvider code and i think i found some
> > minor issues, e.g. node removals were not persisted, potential endless
> > recursion in createEntry method & potential NPE in getUpdated method.
> >
> > apart from that i only did some minor tidying up.
> >
> > here's a link to my changes:
> > http://www.day.com/o.file/JcrColelctionProvider.patch?get=3189a551e523acd0d8dec82c203646df
> >
> > furthermore, i think that node (i.e. entry) names might not be handled
> > consistently
> > on node creation & retrieval. they're e.g. 'sanitized' before
> > creation, but not so
> > before read access.  OTOH i only have a very rough idea of Atom/APP and i don't
> > know any of the abdera internals. therefore i might well be wrong ;)
> >
> > if you want me to, i will digg deeper and have a closer look at the
> > implementation.
> >
> > cheers
> > stefan
> >
> >> The other thing we really need to figure out his how to store extension
> >> elements inside Abdera. i.e. take an Axiom Element and convert it into a
> >> Node. I suppose we could write a xml storage converter like the one
> >> built into JCR. Any recommendations?
> >>
> >> - Dan
> >>
> >> --
> >> Dan Diephouse
> >> MuleSource
> >> http://mulesource.com | http://netzooid.com/blog
> >>
> >>
> >
>

Re: JcrCollectionProvider

Posted by James M Snell <ja...@gmail.com>.
If you would, please post the patch to Abdera's jira tracker.

- James

Stefan Guggisberg wrote:
> On Jan 26, 2008 1:52 AM, Dan Diephouse <da...@mulesource.com> wrote:
>> Stefan Guggisberg wrote:
>>> hi everybody,
>>>
>>> please allow me to quickly introduce myself. i am a committer in the
>>> apache jackrabbit project
>>> and also an active member of the jsr-170 and jsr-283 expert groups.
>>> not too surprisingly
>>> i think that APP and JCR are a natural fit ;-)
>>>
>>> i noticed that there's already JCR support in abdera (i.e.
>>> JcrCollectionProvider). i'd be
>>> therefore very interested to learn more about your experiences with
>>> JCR/jackrabbit.
>>>
>>> what are the biggest problems you're facing when using jackrabbit?  if
>>> there's anything
>>> i can help in making it easier for you to integrate jackrabbit as a
>>> persistence layer i'd be
>>> happy to support your efforts :)
>>>
>>> cheers
>>> stefan
>>>
>> I think the main thing that it could use is just a review from someone
>> who actually understands JCR :-) If you were interested in just checking
>> out my JCR code I'd appreciate it.
> 
> i had a quick look at the JcrColelctionProvider code and i think i found some
> minor issues, e.g. node removals were not persisted, potential endless
> recursion in createEntry method & potential NPE in getUpdated method.
> 
> apart from that i only did some minor tidying up.
> 
> here's a link to my changes:
> http://www.day.com/o.file/JcrColelctionProvider.patch?get=3189a551e523acd0d8dec82c203646df
> 
> furthermore, i think that node (i.e. entry) names might not be handled
> consistently
> on node creation & retrieval. they're e.g. 'sanitized' before
> creation, but not so
> before read access.  OTOH i only have a very rough idea of Atom/APP and i don't
> know any of the abdera internals. therefore i might well be wrong ;)
> 
> if you want me to, i will digg deeper and have a closer look at the
> implementation.
> 
> cheers
> stefan
> 
>> The other thing we really need to figure out his how to store extension
>> elements inside Abdera. i.e. take an Axiom Element and convert it into a
>> Node. I suppose we could write a xml storage converter like the one
>> built into JCR. Any recommendations?
>>
>> - Dan
>>
>> --
>> Dan Diephouse
>> MuleSource
>> http://mulesource.com | http://netzooid.com/blog
>>
>>
> 

Re: JcrCollectionProvider

Posted by Stefan Guggisberg <st...@gmail.com>.
On Jan 26, 2008 1:52 AM, Dan Diephouse <da...@mulesource.com> wrote:
>
> Stefan Guggisberg wrote:
> > hi everybody,
> >
> > please allow me to quickly introduce myself. i am a committer in the
> > apache jackrabbit project
> > and also an active member of the jsr-170 and jsr-283 expert groups.
> > not too surprisingly
> > i think that APP and JCR are a natural fit ;-)
> >
> > i noticed that there's already JCR support in abdera (i.e.
> > JcrCollectionProvider). i'd be
> > therefore very interested to learn more about your experiences with
> > JCR/jackrabbit.
> >
> > what are the biggest problems you're facing when using jackrabbit?  if
> > there's anything
> > i can help in making it easier for you to integrate jackrabbit as a
> > persistence layer i'd be
> > happy to support your efforts :)
> >
> > cheers
> > stefan
> >
> I think the main thing that it could use is just a review from someone
> who actually understands JCR :-) If you were interested in just checking
> out my JCR code I'd appreciate it.

i had a quick look at the JcrColelctionProvider code and i think i found some
minor issues, e.g. node removals were not persisted, potential endless
recursion in createEntry method & potential NPE in getUpdated method.

apart from that i only did some minor tidying up.

here's a link to my changes:
http://www.day.com/o.file/JcrColelctionProvider.patch?get=3189a551e523acd0d8dec82c203646df

furthermore, i think that node (i.e. entry) names might not be handled
consistently
on node creation & retrieval. they're e.g. 'sanitized' before
creation, but not so
before read access.  OTOH i only have a very rough idea of Atom/APP and i don't
know any of the abdera internals. therefore i might well be wrong ;)

if you want me to, i will digg deeper and have a closer look at the
implementation.

cheers
stefan

>
> The other thing we really need to figure out his how to store extension
> elements inside Abdera. i.e. take an Axiom Element and convert it into a
> Node. I suppose we could write a xml storage converter like the one
> built into JCR. Any recommendations?
>
> - Dan
>
> --
> Dan Diephouse
> MuleSource
> http://mulesource.com | http://netzooid.com/blog
>
>

Re: JcrCollectionProvider

Posted by Davanum Srinivas <da...@gmail.com>.
I see that tuscany has a XMLStreamReader2SAX. Another choice is to
check what's in staxutils project on java.net (i can spot a SAXSource)

thanks,
dims

On Jan 28, 2008 12:03 PM, Dan Diephouse <da...@mulesource.com> wrote:
> That makes sense. Thanks David. Which leaves the big question - whats
> the best way to convert an Axiom Element to SAX events? Dims - you still
> around/listening (No comment about Axiom in general here :-))?
>
> Once I figure this out I could just change to code to store the Entry
> XML wholesale inside the JCR store and avoid this custom mapping code
> that I've written.
>
> - Dan
>
>
> David Nuescheler wrote:
> > Hi Dan,
> >
> > I may not know Axiom enough to judge this, but I would assume
> > that the org.xml.sax.ContentHandler that you get from
> > Session.getImportContentHandler() [1] could be a good start.
> >
> > ... without knowing it in detail I would assume that there is something
> > that translates Axiom into SAX?
> >
> > Generally, JCR allows to deserialize arbitrary namespaced
> > xml into the repository so you should be in good shape. The
> > Session.exportDocumentView() should provide the respective export.
> >
> > Does that make sense, or did I misunderstand your question?
> >
> > regards,
> > david
> >
> > ---
> > [1] http://www.day.com/maven/jsr170/javadocs/jcr-1.0/javax/jcr/Session.html#getImportContentHandler(java.lang.String,%20int)
> >
> > [2] http://www.day.com/maven/jsr170/javadocs/jcr-1.0/javax/jcr/Session.html#exportDocumentView(java.lang.String,%20org.xml.sax.ContentHandler,%20boolean,%20boolean)
> >
> >
> > On 1/26/08, Dan Diephouse <da...@mulesource.com> wrote:
> >
> >> Stefan Guggisberg wrote:
> >>
> >>> hi everybody,
> >>>
> >>> please allow me to quickly introduce myself. i am a committer in the
> >>> apache jackrabbit project
> >>> and also an active member of the jsr-170 and jsr-283 expert groups.
> >>> not too surprisingly
> >>> i think that APP and JCR are a natural fit ;-)
> >>>
> >>> i noticed that there's already JCR support in abdera (i.e.
> >>> JcrCollectionProvider). i'd be
> >>> therefore very interested to learn more about your experiences with
> >>> JCR/jackrabbit.
> >>>
> >>> what are the biggest problems you're facing when using jackrabbit?  if
> >>> there's anything
> >>> i can help in making it easier for you to integrate jackrabbit as a
> >>> persistence layer i'd be
> >>> happy to support your efforts :)
> >>>
> >>> cheers
> >>> stefan
> >>>
> >>>
> >> I think the main thing that it could use is just a review from someone
> >> who actually understands JCR :-) If you were interested in just checking
> >> out my JCR code I'd appreciate it.
> >>
> >> The other thing we really need to figure out his how to store extension
> >> elements inside Abdera. i.e. take an Axiom Element and convert it into a
> >> Node. I suppose we could write a xml storage converter like the one
> >> built into JCR. Any recommendations?
> >>
> >> - Dan
> >>
> >> --
> >> Dan Diephouse
> >> MuleSource
> >> http://mulesource.com | http://netzooid.com/blog
> >>
> >>
> >>
>
>
> --
>
> Dan Diephouse
> MuleSource
> http://mulesource.com | http://netzooid.com/blog
>
>



-- 
Davanum Srinivas :: http://davanum.wordpress.com

Re: JcrCollectionProvider

Posted by Dan Diephouse <da...@mulesource.com>.
That makes sense. Thanks David. Which leaves the big question - whats 
the best way to convert an Axiom Element to SAX events? Dims - you still 
around/listening (No comment about Axiom in general here :-))?

Once I figure this out I could just change to code to store the Entry 
XML wholesale inside the JCR store and avoid this custom mapping code 
that I've written.

- Dan

David Nuescheler wrote:
> Hi Dan,
>
> I may not know Axiom enough to judge this, but I would assume
> that the org.xml.sax.ContentHandler that you get from
> Session.getImportContentHandler() [1] could be a good start.
>
> ... without knowing it in detail I would assume that there is something
> that translates Axiom into SAX?
>
> Generally, JCR allows to deserialize arbitrary namespaced
> xml into the repository so you should be in good shape. The
> Session.exportDocumentView() should provide the respective export.
>
> Does that make sense, or did I misunderstand your question?
>
> regards,
> david
>
> ---
> [1] http://www.day.com/maven/jsr170/javadocs/jcr-1.0/javax/jcr/Session.html#getImportContentHandler(java.lang.String,%20int)
>
> [2] http://www.day.com/maven/jsr170/javadocs/jcr-1.0/javax/jcr/Session.html#exportDocumentView(java.lang.String,%20org.xml.sax.ContentHandler,%20boolean,%20boolean)
>
>
> On 1/26/08, Dan Diephouse <da...@mulesource.com> wrote:
>   
>> Stefan Guggisberg wrote:
>>     
>>> hi everybody,
>>>
>>> please allow me to quickly introduce myself. i am a committer in the
>>> apache jackrabbit project
>>> and also an active member of the jsr-170 and jsr-283 expert groups.
>>> not too surprisingly
>>> i think that APP and JCR are a natural fit ;-)
>>>
>>> i noticed that there's already JCR support in abdera (i.e.
>>> JcrCollectionProvider). i'd be
>>> therefore very interested to learn more about your experiences with
>>> JCR/jackrabbit.
>>>
>>> what are the biggest problems you're facing when using jackrabbit?  if
>>> there's anything
>>> i can help in making it easier for you to integrate jackrabbit as a
>>> persistence layer i'd be
>>> happy to support your efforts :)
>>>
>>> cheers
>>> stefan
>>>
>>>       
>> I think the main thing that it could use is just a review from someone
>> who actually understands JCR :-) If you were interested in just checking
>> out my JCR code I'd appreciate it.
>>
>> The other thing we really need to figure out his how to store extension
>> elements inside Abdera. i.e. take an Axiom Element and convert it into a
>> Node. I suppose we could write a xml storage converter like the one
>> built into JCR. Any recommendations?
>>
>> - Dan
>>
>> --
>> Dan Diephouse
>> MuleSource
>> http://mulesource.com | http://netzooid.com/blog
>>
>>
>>     


-- 
Dan Diephouse
MuleSource
http://mulesource.com | http://netzooid.com/blog


Re: JcrCollectionProvider

Posted by David Nuescheler <da...@day.com>.
Hi Dan,

I may not know Axiom enough to judge this, but I would assume
that the org.xml.sax.ContentHandler that you get from
Session.getImportContentHandler() [1] could be a good start.

... without knowing it in detail I would assume that there is something
that translates Axiom into SAX?

Generally, JCR allows to deserialize arbitrary namespaced
xml into the repository so you should be in good shape. The
Session.exportDocumentView() should provide the respective export.

Does that make sense, or did I misunderstand your question?

regards,
david

---
[1] http://www.day.com/maven/jsr170/javadocs/jcr-1.0/javax/jcr/Session.html#getImportContentHandler(java.lang.String,%20int)

[2] http://www.day.com/maven/jsr170/javadocs/jcr-1.0/javax/jcr/Session.html#exportDocumentView(java.lang.String,%20org.xml.sax.ContentHandler,%20boolean,%20boolean)


On 1/26/08, Dan Diephouse <da...@mulesource.com> wrote:
> Stefan Guggisberg wrote:
> > hi everybody,
> >
> > please allow me to quickly introduce myself. i am a committer in the
> > apache jackrabbit project
> > and also an active member of the jsr-170 and jsr-283 expert groups.
> > not too surprisingly
> > i think that APP and JCR are a natural fit ;-)
> >
> > i noticed that there's already JCR support in abdera (i.e.
> > JcrCollectionProvider). i'd be
> > therefore very interested to learn more about your experiences with
> > JCR/jackrabbit.
> >
> > what are the biggest problems you're facing when using jackrabbit?  if
> > there's anything
> > i can help in making it easier for you to integrate jackrabbit as a
> > persistence layer i'd be
> > happy to support your efforts :)
> >
> > cheers
> > stefan
> >
> I think the main thing that it could use is just a review from someone
> who actually understands JCR :-) If you were interested in just checking
> out my JCR code I'd appreciate it.
>
> The other thing we really need to figure out his how to store extension
> elements inside Abdera. i.e. take an Axiom Element and convert it into a
> Node. I suppose we could write a xml storage converter like the one
> built into JCR. Any recommendations?
>
> - Dan
>
> --
> Dan Diephouse
> MuleSource
> http://mulesource.com | http://netzooid.com/blog
>
>

Re: JcrCollectionProvider

Posted by Davanum Srinivas <da...@gmail.com>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Oh man what has the world come down to!!! Dan talking about Axiom. Terribly sorry for inflicting Axiom on you Dan :)

- -- dims

Dan Diephouse wrote:
| Stefan Guggisberg wrote:
|> hi everybody,
|>
|> please allow me to quickly introduce myself. i am a committer in the
|> apache jackrabbit project
|> and also an active member of the jsr-170 and jsr-283 expert groups.
|> not too surprisingly
|> i think that APP and JCR are a natural fit ;-)
|>
|> i noticed that there's already JCR support in abdera (i.e.
|> JcrCollectionProvider). i'd be
|> therefore very interested to learn more about your experiences with
|> JCR/jackrabbit.
|>
|> what are the biggest problems you're facing when using jackrabbit?  if
|> there's anything
|> i can help in making it easier for you to integrate jackrabbit as a
|> persistence layer i'd be
|> happy to support your efforts :)
|>
|> cheers
|> stefan
|>
| I think the main thing that it could use is just a review from someone
| who actually understands JCR :-) If you were interested in just checking
| out my JCR code I'd appreciate it.
|
| The other thing we really need to figure out his how to store extension
| elements inside Abdera. i.e. take an Axiom Element and convert it into a
| Node. I suppose we could write a xml storage converter like the one
| built into JCR. Any recommendations?
|
| - Dan
|
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Cygwin)

iD8DBQFHmpA4gNg6eWEDv1kRAgYXAKCBWR1vflrehRWwR9DZFJv1FlL3ggCg3H2M
npb5njDDGXTIuEi8MbdLcPg=
=GKeY
-----END PGP SIGNATURE-----

Re: JcrCollectionProvider

Posted by Dan Diephouse <da...@mulesource.com>.
Stefan Guggisberg wrote:
> hi everybody,
>
> please allow me to quickly introduce myself. i am a committer in the
> apache jackrabbit project
> and also an active member of the jsr-170 and jsr-283 expert groups.
> not too surprisingly
> i think that APP and JCR are a natural fit ;-)
>
> i noticed that there's already JCR support in abdera (i.e.
> JcrCollectionProvider). i'd be
> therefore very interested to learn more about your experiences with
> JCR/jackrabbit.
>
> what are the biggest problems you're facing when using jackrabbit?  if
> there's anything
> i can help in making it easier for you to integrate jackrabbit as a
> persistence layer i'd be
> happy to support your efforts :)
>
> cheers
> stefan
>   
I think the main thing that it could use is just a review from someone 
who actually understands JCR :-) If you were interested in just checking 
out my JCR code I'd appreciate it.

The other thing we really need to figure out his how to store extension 
elements inside Abdera. i.e. take an Axiom Element and convert it into a 
Node. I suppose we could write a xml storage converter like the one 
built into JCR. Any recommendations?

- Dan

-- 
Dan Diephouse
MuleSource
http://mulesource.com | http://netzooid.com/blog