You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ojb-dev@db.apache.org by Konstantin Priblouda <kp...@yahoo.com> on 2005/10/10 15:25:19 UTC

XDoclet-2 module & Introducing Myself to the list.

Hi all,

in light of current events I'm investigating
possibilities  of making my software JB**s-free
( as mere self-protection against ideas of people 
behind it ) 

I'm freelance developer, and also commiter of
XDoclet-1
( retired, no longer active ) and of XDoclet-2 &
accompanying modules project. Another project where
I'm active is  Pico/Nanocontainer.

I see that you already created a module for XD1 - so
the first question is:
 - do you plan to develop one for XD2? ( there are
technical advantages over XD1 ). Will original author
/ 
commiter come over to us to port it? 
( http://www.sourceforge.net/projects/xdoclet-plugins
) 
In any case we can provide assistance in development. 

Another question is integration with
pico/nanocontainer ( constructor injection).  Any work
done for it?  Any plans?


Since I like to migrate from hibernate, those parts of
software are important for me, and I would rather help
ongoing efforts than do duplicate work. 


regards,

----[ Konstantin Pribluda http://www.pribluda.de ]----------------
Still using XDoclet 1.x?  XDoclet 2 is released and of production quality.
check it out: http://xdoclet.codehaus.org


		
__________________________________ 
Start your day with Yahoo! - Make it your home page! 
http://www.yahoo.com/r/hs

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org


Re: XDoclet-2 module & Introducing Myself to the list.

Posted by Konstantin Priblouda <kp...@yahoo.com>.

--- Thomas Dudziak <to...@gmail.com> wrote:


> I was thinking of adding the ability to use Java5
> annotations (not
> necessarily OJB-specific ones), either directly or -
> if qdox is able
> to do that - via qdox.

We have to ask qdox guys though.  And they are hard to
get by :) 

> Actually that part is something I'd rather drop.
> OJB's model already
> has the ability to be written to XML, so it would be
> natural to
> generate a model instance from the XDoclet tags,
> apply the model
> checking, and then use the model's ability to write
> it to XML rather
> than duplicating this functionality with a template
> engine. 

In this case you can omit templating engine, but still
benefit from all the ant/maven integration & firing up

qdox etc. Since plugins are instantiated by
picocontainer, it as easy as remove constructor
argument.  But some integration of resulting XML
validation would be also nice, and XML generating
plugins  support this. This would be not so heavy
though. 


> Btw, this
> would make debugging and testing so much easier
> (debugging XDoclet 1
> modules are a pain in the ... if you ask me, and so
> is unit testing).

Whom do you say this :) I'm developing XD1 since 2001,
and first templating engine was much much worse :)

Now however ( at XD2 ) there is sane and line accurate
error reporting, and also tag usage validation
( "you put his tag on method, but it shall be on
 class" ) 
And of course plugins are covered by unit tests.

> > > The 1.1 branch already uses Pico internally for
> IoC.
> > > And it should not
> > > be difficult to make OJB accept an external
> > > container that it then
> > > uses as the parent container like so:
> > >
> > > OJB ojbInstance = new OJB(new
> > > PicoComponentContainer(parentPicoContainer));
> > >
> > > I havn't had a use for something like that yet,
> > > though.
> >
> > I did hibernate suport for nanocontainer, and
> > it ed to inject session into interested objects
> > ( DAOs ). This proved to be really nice feature
> > becase it decouples session management from DAO
> > code - thing are implified by this.
> 
> But that is not internal, right, but rather in
> applications using Hibernate ?

Yes, of course.  But I also use CDI in entities ( 
with a help of interceptor )  - and it would be nice
if this step coud be bypassed.  Say - entity receives
some manager / utility object upon creation. 


> > Though Hibernate itself is not really
> pico-friendly,
> > so adapter subproject ( nano-persistence ) was
> > necessary. If you use pico internally, it may be
> > easier to adapt OJB to this enironment.
> 
> Yep, the main idea of exposing this was to be able
> to configure OJB
> externally, eg. in Spring via the application
> context. And with that
> it is eg. possible to inject components for OJB to
> use, eg. a
> separately created connection factory or object
> creator.

Exactly my use case. I do not like my DAO to know
where
the children ( pardon, sessions ) come from
and what to do with them is there is an exception :)
( I handöed this with a help of delegator ) 

I think there could be better solution. 

regards,


----[ Konstantin Pribluda http://www.pribluda.de ]----------------
Still using XDoclet 1.x?  XDoclet 2 is released and of production quality.
check it out: http://xdoclet.codehaus.org


	
		
__________________________________ 
Yahoo! Mail - PC Magazine Editors' Choice 2005 
http://mail.yahoo.com

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org


Re: XDoclet-2 module & Introducing Myself to the list.

Posted by Thomas Dudziak <to...@gmail.com>.
On 10/10/05, Konstantin Priblouda <kp...@yahoo.com> wrote:

> Correct me if I'm wrong ( did not grokked your
> cedebase yet ):
> You plan to parse source annotated wuth @tags, and
> then play round with model?  Cheapest way to buy this
> would be XD2 plugin  - you create interfaces
> describing your tags, annotate it with @qtags tags and
> then you receive
> self-validating implementation beans ( with
> line-accurate error reporting ).

I was thinking of adding the ability to use Java5 annotations (not
necessarily OJB-specific ones), either directly or - if qdox is able
to do that - via qdox.

> You also have choice of 3 template engines ( jelly,
> velocity, freemarker  - but jelly would be natural
> choice for XML output )
> We also got some nice accompanying plugins generating
> documentation  ( in our release process we
> automatically upload tag & plugin docs to confluence )

Actually that part is something I'd rather drop. OJB's model already
has the ability to be written to XML, so it would be natural to
generate a model instance from the XDoclet tags, apply the model
checking, and then use the model's ability to write it to XML rather
than duplicating this functionality with a template engine. Btw, this
would make debugging and testing so much easier (debugging XDoclet 1
modules are a pain in the ... if you ask me, and so is unit testing).

> > The 1.1 branch already uses Pico internally for IoC.
> > And it should not
> > be difficult to make OJB accept an external
> > container that it then
> > uses as the parent container like so:
> >
> > OJB ojbInstance = new OJB(new
> > PicoComponentContainer(parentPicoContainer));
> >
> > I havn't had a use for something like that yet,
> > though.
>
> I did hibernate suport for nanocontainer, and
> it ed to inject session into interested objects
> ( DAOs ). This proved to be really nice feature
> becase it decouples session management from DAO
> code - thing are implified by this.

But that is not internal, right, but rather in applications using Hibernate ?

> Though Hibernate itself is not really pico-friendly,
> so adapter subproject ( nano-persistence ) was
> necessary. If you use pico internally, it may be
> easier to adapt OJB to this enironment.

Yep, the main idea of exposing this was to be able to configure OJB
externally, eg. in Spring via the application context. And with that
it is eg. possible to inject components for OJB to use, eg. a
separately created connection factory or object creator.

Tom

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org


Re: XDoclet-2 module & Introducing Myself to the list.

Posted by Konstantin Priblouda <kp...@yahoo.com>.

--- Thomas Dudziak <to...@gmail.com> wrote:


> Not as such. Rather, I was thinking of using qdox
> directly to generate
> an instance of OJB's meta model and then use the
> facility of this meta
> model to write it to XML. This would unify the model
> checking that is
> currently in the XDoclet1 module, with the core OJB
> meta model
> classes, and also provide a simplification for
> introducing annotations
> and other things.

Correct me if I'm wrong ( did not grokked your
cedebase yet ):
You plan to parse source annotated wuth @tags, and
then play round with model?  Cheapest way to buy this
would be XD2 plugin  - you create interfaces
describing your tags, annotate it with @qtags tags and
then you receive 
self-validating implementation beans ( with
line-accurate error reporting ). 

You also have choice of 3 template engines ( jelly,
velocity, freemarker  - but jelly would be natural
choice for XML output ) 
We also got some nice accompanying plugins generating 
documentation  ( in our release process we
automatically upload tag & plugin docs to confluence )




> > Another question is integration with
> > pico/nanocontainer ( constructor injection).  Any
> work
> > done for it?  Any plans?
> 
> The 1.1 branch already uses Pico internally for IoC.
> And it should not
> be difficult to make OJB accept an external
> container that it then
> uses as the parent container like so:
> 
> OJB ojbInstance = new OJB(new
> PicoComponentContainer(parentPicoContainer));
> 
> I havn't had a use for something like that yet,
> though.

I did hibernate suport for nanocontainer, and 
it ed to inject session into interested objects
( DAOs ). This proved to be really nice feature
becase it decouples session management from DAO 
code - thing are implified by this. 

Though Hibernate itself is not really pico-friendly,
so adapter subproject ( nano-persistence ) was
necessary. If you use pico internally, it may be
easier to adapt OJB to this enironment. 


> > Since I like to migrate from hibernate, those
> parts of
> > software are important for me, and I would rather
> help
> > ongoing efforts than do duplicate work.
> 
> That's great!

Of course this would be kind of middle-term because I
have ongoing projects to be released...  But I'm ready
to onvest some time into it. 

I see possibility of middle-term problems offering
services based on hibenate ( no trademark registered
yet, but "Abmahnung" my customer got from JBoss
S.a.r.l was pretty nasty... ) 


regards,

----[ Konstantin Pribluda http://www.pribluda.de ]----------------
Still using XDoclet 1.x?  XDoclet 2 is released and of production quality.
check it out: http://xdoclet.codehaus.org


		
__________________________________ 
Yahoo! Music Unlimited 
Access over 1 million songs. Try it free.
http://music.yahoo.com/unlimited/

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org


Re: XDoclet-2 module & Introducing Myself to the list.

Posted by Thomas Dudziak <to...@gmail.com>.
On 10/10/05, Konstantin Priblouda <kp...@yahoo.com> wrote:

> in light of current events I'm investigating
> possibilities  of making my software JB**s-free
> ( as mere self-protection against ideas of people
> behind it )
>
> I'm freelance developer, and also commiter of
> XDoclet-1
> ( retired, no longer active ) and of XDoclet-2 &
> accompanying modules project. Another project where
> I'm active is  Pico/Nanocontainer.

Hi Konstantin,

> I see that you already created a module for XD1 - so
> the first question is:
>  - do you plan to develop one for XD2? ( there are
> technical advantages over XD1 ). Will original author
> /
> commiter come over to us to port it?
> ( http://www.sourceforge.net/projects/xdoclet-plugins
> )
> In any case we can provide assistance in development.

Not as such. Rather, I was thinking of using qdox directly to generate
an instance of OJB's meta model and then use the facility of this meta
model to write it to XML. This would unify the model checking that is
currently in the XDoclet1 module, with the core OJB meta model
classes, and also provide a simplification for introducing annotations
and other things.

> Another question is integration with
> pico/nanocontainer ( constructor injection).  Any work
> done for it?  Any plans?

The 1.1 branch already uses Pico internally for IoC. And it should not
be difficult to make OJB accept an external container that it then
uses as the parent container like so:

OJB ojbInstance = new OJB(new PicoComponentContainer(parentPicoContainer));

I havn't had a use for something like that yet, though.

> Since I like to migrate from hibernate, those parts of
> software are important for me, and I would rather help
> ongoing efforts than do duplicate work.

That's great!

Tom

---------------------------------------------------------------------
To unsubscribe, e-mail: ojb-dev-unsubscribe@db.apache.org
For additional commands, e-mail: ojb-dev-help@db.apache.org