Hi Michael, I just created a Facelets 1.1.x custom tags project and adapted the SetHandler from MyFaces core 2.0 for Facelets 1.1.x.
You can find the source at http://jakobk-extensions.googlecode.com/svn/trunk/jsf/facelets1/facelets1-custom-tags/ Just check it out and use mvn clean install to get the JAR. If you include this JAR in your webapp, you can use the custom set tag like this: <html xmlns="http://www.w3.org/1999/xhtml" xmlns:jk="http://facelets.jakobk.at/customtags"> <jk:set target="#{requestScope}" property="foo" value="fooValue" /> I hope you can use this solution. Regards, Jakob 2010/7/21 Jakob Korherr <[email protected]> > Hi Michael, > > > "I migrated my app from jsp/tiles to xhtml/facelets successfully in the > last 2-3 days." > > That's great :) > > Hm, yes. Unfortunately I digged deeper into it and found out that <c:set> > is equal to <ui:param> on facelets-1.x, thus the suggested code only works > for JSF 2.0. I am sorry, but this means that you will have to find some > other tag which accomplishes this or you will have to write your own one > (which should not be too hard, because you can take the code from MyFaces > core 2.0 SetHandler --> > org.apache.myfaces.view.facelets.tag.jstl.core.SetHandler and just register > it in your facelets taglib). > > I hope this helps! > > Regards, > Jakob > > 2010/7/21 Michael Heinen <[email protected]> > > Hi Jakob, >> >> I migrated my app from jsp/tiles to xhtml/facelets successfully in the >> last 2-3 days. >> But your hint is unfortunately not working for me. >> >> namespace in xhtml file for core tags is: xmlns:c=" >> http://java.sun.com/jsp/jstl/core" >> Is this the right one or do I have to use xmlns:c=" >> http://java.sun.com/jstl/core" (without jsp)? >> >> jstl-1.2.jar is in the lib folder of my webApp. >> >> <c:out does not print anything and the set value is also not accessible >> via EL in the getter of my bean. >> >> My current code: >> <html xmlns="http://www.w3.org/1999/xhtml" >> xmlns:ui="http://java.sun.com/jsf/facelets" >> >> xmlns:c="http://java.sun.com/jsp/jstl/core"> >> >> <ui:composition template="templates/main.xhtml"> >> <ui:param name="activeTab" value="wb"/> >> >> <c:set var="foo2" value="bla2" scope="request"/> >> >> <c:set target="#{requestScope}" property="foo" value="fooValue" /> >> >> <ui:define name="navigation"> >> <ui:include src="/facelets/parts/navigation.xhtml"></ui:include> >> </ui:define> >> >> I try to access foo and foo2 in navigation.xhtml and in a getter called >> from navigation.xhtml. >> Any Idea what's going wrong here ? >> >> Greetz, >> Michael >> >> Am 20.07.2010 23:20, schrieb Jakob Korherr: >> >> Hi Michael, >>> >>> You can use<c:set> from the JSTL to put the value into the request >>> scope. >>> Then you can access it in the facelet and also later in the action >>> method. >>> >>> Namespace: xmlns:c="http://java.sun.com/jsp/jstl/core" >>> >>> <c:set target="#{requestScope}" property="foo" value="fooValue" /> >>> >>> Regards, >>> Jakob >>> >>> 2010/7/20 Leonardo Uribe<[email protected]> >>> >>> >>> >>>> Hi >>>> >>>> I checked in deep some days ago ui:param, and it only define the >>>> expression >>>> when the view is build, but its context is not preserved on other >>>> phases. >>>> FaceletContext extends from ELContext and override its VariableMapper >>>> and >>>> FunctionMapper. So in practice, ui:param just add a variable on the >>>> variable >>>> mapper. but after ui:composition and ui:include ends its processing the >>>> variable is just discarded, because the whole VariableMapper wrapper >>>> created >>>> by this two tags is removed too. >>>> >>>> regards, >>>> >>>> Leonardo Uribe >>>> >>>> 2010/7/20 Michael Heinen<[email protected]> >>>> >>>> >>>> >>>>> Is it possible to access the value of a facelets ui:param tag in phase >>>>> render response in a backing bean? >>>>> I tried to resolve #{activeTab} in MyController.getOnlick() without >>>>> success. >>>>> >>>>> Sample: >>>>> 1) Template >>>>> <ui:composition template="templates/main.xhtml"> >>>>> <ui:param name="activeTab" value="blabla"/> >>>>> >>>>> <ui:define name="navigation"> >>>>> <ui:include src="/facelets/navigation.xhtml"></ui:include> >>>>> </ui:define> >>>>> >>>>> >>>>> 2) navigation.xhtml >>>>> ... >>>>> <t:commandLink onclick="#{MyController.onlick}" >>>>> ... >>>>> >>>>> I use myFaces 1.2.9 and facelets 1.1.15. >>>>> >>>>> Thanks, >>>>> Michael >>>>> >>>>> >>>>> >>>>> >>>> >>>> >>> >>> >>> >>> >> >> > > > -- > Jakob Korherr > > blog: http://www.jakobk.com > twitter: http://twitter.com/jakobkorherr > work: http://www.irian.at > -- Jakob Korherr blog: http://www.jakobk.com twitter: http://twitter.com/jakobkorherr work: http://www.irian.at

