You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@myfaces.apache.org by Martin Marinschek <ma...@gmail.com> on 2008/03/02 06:49:21 UTC

Re: MyFaces, Facelets + t:aliasBbean

Hi Mirko,

all child-components are rendered twice? I can't see how this happens
from the source. Maybe you can provide a very small sample and add it
to jira?

In any case, why do you need aliasBean with Facelets? With Facelets,
it should be much simpler to create template-components instead of
aliased-page-sections.

regards,

Martin

On Wed, Feb 27, 2008 at 4:38 PM, Sertic Mirko, Bedag
<Mi...@bedag.ch> wrote:
>
>
>
> Hi@all!
>
> I've got a question regarding MyFaces, Facelets and t:aliasBean.
>
> It seems that the t:aliasBean duplicates its content when it is rerendered
>
> due to validation errors. How can I solve this problem?
>
> Thanks a lot
>
>
>
> Mirko



-- 

http://www.irian.at

Your JSF powerhouse -
JSF Consulting, Development and
Courses in English and German

Professional Support for Apache MyFaces

AW: MyFaces, Facelets + t:aliasBbean

Posted by "Sertic Mirko, Bedag" <Mi...@bedag.ch>.
Hi

Unfortunatly we cannot upgrade to 1.2 at the moment. I took a deeper look at
the code and found a bug in the facelets AliasBeanTagHandler. I posted an
issue to the tomahawk-facelets project with a patched version of the taghandler.

Regards

Mirko

-----Ursprüngliche Nachricht-----
Von: Martin Marinschek [mailto:martin.marinschek@gmail.com] 
Gesendet: Dienstag, 4. März 2008 13:56
An: MyFaces Discussion
Betreff: Re: MyFaces, Facelets + t:aliasBbean

Hi Mirko,

an upgrade to JSF1.2 should solve your problem with the legacy
value-binding. Apart from that: I still ignore where the problem is
coming from, and I do not have time now to look deeper into this.

regards,

Martin

On 3/3/08, Sertic Mirko, Bedag <Mi...@bedag.ch> wrote:
> Hi Martin
>
> Thank you for your answer.
>
> Yes, thats true, the Facelets ui:include in combination with the ui:param
> would be anything we need. Unfortunatly, facelets doesn't use the
> Application.createValueBinding() to create the value bindings, it
> creates its own LegacyValueBinding(Deprecated Stuff), in combination
> with local varHandler. Our framework relies on custom value bindings,
> due to validation stuff. Our custom components try to convert the
> LegacyValueBinding to the Application.createValueBinding(), but the
> varHandler gets lost, and with it the ui:param values. The key point
> is that using the ValueBindingImpl.getValue() to access a value from
> the special varHandler will just return null. I think that they are
> not 100% compatible to each other, or am I wrong?
>
> Here is some code:
>
> <t:aliasBean alias="#{wochendescriptor}"
> value="#{stellenangebotBackingBean.data.wochendescriptor}">
> 	<f:subview>
> 		<ui:include src="/wochentagauswahl.xhtml"/>		
> 	</f:subview>				
> </t:aliasBean>
>
> I tried it with and without the f:subview. It's all the same. As
> soon as a validator fails in the view, it is rerendered and the content
> is displayed twice. If the validation fails again, it is displayed three
> times and so on.
>
> Quite strange! Is the problem the aliasBean component, or the facelets
> aliasBesn taghandler?
>
> Regards
>
> Mirko
>
>
> -----Ursprüngliche Nachricht-----
> Von: Martin Marinschek [mailto:martin.marinschek@gmail.com]
> Gesendet: Sonntag, 2. März 2008 06:49
> An: MyFaces Discussion
> Betreff: Re: MyFaces, Facelets + t:aliasBbean
>
> Hi Mirko,
>
> all child-components are rendered twice? I can't see how this happens
> from the source. Maybe you can provide a very small sample and add it
> to jira?
>
> In any case, why do you need aliasBean with Facelets? With Facelets,
> it should be much simpler to create template-components instead of
> aliased-page-sections.
>
> regards,
>
> Martin
>
> On Wed, Feb 27, 2008 at 4:38 PM, Sertic Mirko, Bedag
> <Mi...@bedag.ch> wrote:
> >
> >
> >
> > Hi@all!
> >
> > I've got a question regarding MyFaces, Facelets and t:aliasBean.
> >
> > It seems that the t:aliasBean duplicates its content when it is rerendered
> >
> > due to validation errors. How can I solve this problem?
> >
> > Thanks a lot
> >
> >
> >
> > Mirko
>
>
>
> --
>
> http://www.irian.at
>
> Your JSF powerhouse -
> JSF Consulting, Development and
> Courses in English and German
>
> Professional Support for Apache MyFaces
>


-- 

http://www.irian.at

Your JSF powerhouse -
JSF Consulting, Development and
Courses in English and German

Professional Support for Apache MyFaces

Re: MyFaces, Facelets + t:aliasBbean

Posted by Martin Marinschek <ma...@gmail.com>.
Hi Mirko,

an upgrade to JSF1.2 should solve your problem with the legacy
value-binding. Apart from that: I still ignore where the problem is
coming from, and I do not have time now to look deeper into this.

regards,

Martin

On 3/3/08, Sertic Mirko, Bedag <Mi...@bedag.ch> wrote:
> Hi Martin
>
> Thank you for your answer.
>
> Yes, thats true, the Facelets ui:include in combination with the ui:param
> would be anything we need. Unfortunatly, facelets doesn't use the
> Application.createValueBinding() to create the value bindings, it
> creates its own LegacyValueBinding(Deprecated Stuff), in combination
> with local varHandler. Our framework relies on custom value bindings,
> due to validation stuff. Our custom components try to convert the
> LegacyValueBinding to the Application.createValueBinding(), but the
> varHandler gets lost, and with it the ui:param values. The key point
> is that using the ValueBindingImpl.getValue() to access a value from
> the special varHandler will just return null. I think that they are
> not 100% compatible to each other, or am I wrong?
>
> Here is some code:
>
> <t:aliasBean alias="#{wochendescriptor}"
> value="#{stellenangebotBackingBean.data.wochendescriptor}">
> 	<f:subview>
> 		<ui:include src="/wochentagauswahl.xhtml"/>		
> 	</f:subview>				
> </t:aliasBean>
>
> I tried it with and without the f:subview. It's all the same. As
> soon as a validator fails in the view, it is rerendered and the content
> is displayed twice. If the validation fails again, it is displayed three
> times and so on.
>
> Quite strange! Is the problem the aliasBean component, or the facelets
> aliasBesn taghandler?
>
> Regards
>
> Mirko
>
>
> -----Ursprüngliche Nachricht-----
> Von: Martin Marinschek [mailto:martin.marinschek@gmail.com]
> Gesendet: Sonntag, 2. März 2008 06:49
> An: MyFaces Discussion
> Betreff: Re: MyFaces, Facelets + t:aliasBbean
>
> Hi Mirko,
>
> all child-components are rendered twice? I can't see how this happens
> from the source. Maybe you can provide a very small sample and add it
> to jira?
>
> In any case, why do you need aliasBean with Facelets? With Facelets,
> it should be much simpler to create template-components instead of
> aliased-page-sections.
>
> regards,
>
> Martin
>
> On Wed, Feb 27, 2008 at 4:38 PM, Sertic Mirko, Bedag
> <Mi...@bedag.ch> wrote:
> >
> >
> >
> > Hi@all!
> >
> > I've got a question regarding MyFaces, Facelets and t:aliasBean.
> >
> > It seems that the t:aliasBean duplicates its content when it is rerendered
> >
> > due to validation errors. How can I solve this problem?
> >
> > Thanks a lot
> >
> >
> >
> > Mirko
>
>
>
> --
>
> http://www.irian.at
>
> Your JSF powerhouse -
> JSF Consulting, Development and
> Courses in English and German
>
> Professional Support for Apache MyFaces
>


-- 

http://www.irian.at

Your JSF powerhouse -
JSF Consulting, Development and
Courses in English and German

Professional Support for Apache MyFaces

AW: MyFaces, Facelets + t:aliasBbean

Posted by "Sertic Mirko, Bedag" <Mi...@bedag.ch>.
Hi Martin

Thank you for your answer.

Yes, thats true, the Facelets ui:include in combination with the ui:param
would be anything we need. Unfortunatly, facelets doesn't use the
Application.createValueBinding() to create the value bindings, it
creates its own LegacyValueBinding(Deprecated Stuff), in combination 
with local varHandler. Our framework relies on custom value bindings,
due to validation stuff. Our custom components try to convert the
LegacyValueBinding to the Application.createValueBinding(), but the
varHandler gets lost, and with it the ui:param values. The key point
is that using the ValueBindingImpl.getValue() to access a value from
the special varHandler will just return null. I think that they are
not 100% compatible to each other, or am I wrong?

Here is some code:

<t:aliasBean alias="#{wochendescriptor}" value="#{stellenangebotBackingBean.data.wochendescriptor}">
	<f:subview>
		<ui:include src="/wochentagauswahl.xhtml"/>		
	</f:subview>				
</t:aliasBean>

I tried it with and without the f:subview. It's all the same. As
soon as a validator fails in the view, it is rerendered and the content
is displayed twice. If the validation fails again, it is displayed three
times and so on.

Quite strange! Is the problem the aliasBean component, or the facelets
aliasBesn taghandler?

Regards

Mirko

 
-----Ursprüngliche Nachricht-----
Von: Martin Marinschek [mailto:martin.marinschek@gmail.com] 
Gesendet: Sonntag, 2. März 2008 06:49
An: MyFaces Discussion
Betreff: Re: MyFaces, Facelets + t:aliasBbean

Hi Mirko,

all child-components are rendered twice? I can't see how this happens
from the source. Maybe you can provide a very small sample and add it
to jira?

In any case, why do you need aliasBean with Facelets? With Facelets,
it should be much simpler to create template-components instead of
aliased-page-sections.

regards,

Martin

On Wed, Feb 27, 2008 at 4:38 PM, Sertic Mirko, Bedag
<Mi...@bedag.ch> wrote:
>
>
>
> Hi@all!
>
> I've got a question regarding MyFaces, Facelets and t:aliasBean.
>
> It seems that the t:aliasBean duplicates its content when it is rerendered
>
> due to validation errors. How can I solve this problem?
>
> Thanks a lot
>
>
>
> Mirko



-- 

http://www.irian.at

Your JSF powerhouse -
JSF Consulting, Development and
Courses in English and German

Professional Support for Apache MyFaces