On Wed, Jun 4, 2008 at 12:02 AM, Andrew Robinson <
[EMAIL PROTECTED]> wrote:

> One more point, I'd like to see the new tool burned in for at least a
> couple of Tomahawk releases before moving it to other projects. It
> seems a bit too much to hurry this into core, especially when AFAIK,
> there is no new functionality that core requires from this.
>
> On 6/3/08, Andrew Robinson <[EMAIL PROTECTED]> wrote:
> > What is this myfaces-metadata.xml that tomahawk needs? Seems odd to me
> > to have core required to generate a non-JSF spec output that tomahawk
> > requires.
> >
>

Myfaces-builder-plugin use a file inside each jar for extract content about
the model of components. For example, on tomahawk 1.1, before build its
model (saved on META-INF/myfaces-metadata.xml of its jar), it checks all
dependencies and try to found META-INF/myfaces-metadata.xml. If one file is
found (if uses META-INF/myfaces-metadata.xml of myfaces core 1.1), it is
read and added to the current model. In this way builder plugin knows the
component hierarchy.

I see that problem when was done trinidad-sandbox, so this feature was
suggested for the new plugin. In the build module of trinidad-sandbox, if
you want to implement a custom component, you have to include a copy of the
related xml files of all its component hierarchy. The advantage of chaining
myfaces-metadata.xml, is that every change on the hierarchy is propagated to
its childrens, without maintain several copies of the same files.

The original idea for myfaces core 1.2 is do not apply all, just generate
the myfaces-metadata.xml making some modifications on myfaces-faces-plugin,
but I have some few cases where not all annotations required are added
(UISelectItem, UISelectItems and UIParameter does not include rendered
property, so I need to exclude it, and I'm not founded a way to add the
annotations for the same problem on UIViewRoot component.)

The code right now just generate component classes (what we need), but still
uses myfaces-faces-plugin for the rest. My objective is do a release of
tomahawk, so we can let this as is.

My idea (it is just a personal idea) for trinidad is add source annotations
making some modifications on myfaces-faces-plugin and then use
myfaces-builder-plugin on trinidad-sandbox (the idea is make easier create
trinidad custom components). But this needs a lot of discussion and it is
not my main objective right now, so we can keep this later.


>
> >> 1. Apply myfaces-builder-plugin on myfaces core 1.2 (necessary for build
> >> correct myfaces-metadata.xml for tomahawk 1.2)
> >
> > -0.9
> >
> >> 2. Add two modules called core12 and sandbox/core12 on tomahawk, that
> >> contains 1.2 specific code for tomahawk.
> >
> > +1
> >
>

Reply via email to