Reinhard Poetz wrote:
Carsten Ziegeler wrote:

Daniel Fagerstrom wrote:

IMO, OSGi seem to be the best choice for kernel for Cocoon's block architecture and there is (if I haven't missed something important) a low risk, incremental and evolutionary way to get there.

Hmm, I'm currently not sure if we really need such an infrastructure for
our own blocks; it seems like a big burden and might make things more
complicated than they could be. Don't know.
I still have the problem that I can't see what real world problems will
be solved

- breaking up the monolitic Cocoon
- getting over the Java jar hell
- making development of Cocoon extensions outside of the
  Cocoon project much easier (why there are hardly any Cocoon based
  projects out, except Daisy, Lenya, Forrest and two or three others)
- ever tried to run your own project and let's say Forrest
  and maybe Lenya in one webapp application? Maybe possible but
  I wouldn't want to manage this configuration (and good luck
  with the next upgrade of one of them)

Exactly!

I'm engaged in this because it IMO will give us a much needed *simplification* of using and develping Cocoon.

with this and what the drawbacks are.

you're right, complexity is the price to pay. But maybe clearing contracts makes things more comprehensible in the future ...

We have a lot of complexity today because of the lack of isolation mechanisms in Cocoon. It is monolithic and has so complicated internal contracts so that only a few people dare to touch it. Classloader isolation and declaration of dependencies and what is exposed, give us one mechanism for attacking this complexity.

Sure, it sounds cool...

Ok, anyways, I will not block any approach, I'm just trying to express
my current feelings about it. But I really thing whatever we do, this
should *not* be done in the current trunk. We should move 2.2 out the
door as soon as possible and target "real blocks" for a later release.
So, try out OSGi if you want, but please not in the trunk.

The plan I suggest makes it possible to start develop it *whithin* trunk wtithout affecting current Cocoon. I'm very strongly against any more branching. IMO they have mainly been harmfull for us, this far.

Why can't this be done in trunk as long as the old "monolitic" approach still works? AFAIU there will only be another Cocoon servlet that initializes the OSGi layer. If we come to the point that we have to introduce incompatibilites we can still decide to move out the OSGi version into its own branch. But I'm sure we will do our best to avoid any backward incompatibilites. IMHO development should happen in /trunk/src/osgi and build.properties contain a flag whether this or the stable version is built.

We can do it that way.

/Daniel

Reply via email to