User talk:Akysoft/JSF

JSF oldalak életciklusa

edit

File:Jsflifecycle.jpg


Saját validátor használata jsp oldalon:

<h:selectOneMenu validator="#{statisticsValidatorBean.validate}">

java kódban:

 public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException {
   if (value is not valid){
       throw new ValidatorException(new FacesMessage("hibauzenet"));
   }
 }


A validációs metódusba már a konvertált érték kerül bele, ha volt ilyen definiálva. Az a UIComponent, amelyik a validációs folyamaton túl van, a submittedValue értéke átkerül a value-ba és a submittedValue értéke null lesz


TODO: Ki kell próbálni az alábbi dolgot: Hiba jelenség: egy form elküldésekor nem történik semmi. Csak a második kattintás után hajtódik végre.

Hiba oka: A validációs fázisból visszamegy az oldalra.

Megoldás: valamilyen validációt kell tenni az űrlapra.


Sun Web UI komponens gyűjtemény

edit

Calendar komponens

edit

A calendar komponens csak akkor működik, ha <ui:page> és <ui:head> tag-ek is szerepelenek az oldalon. Pl.:

<%@ page contentType="text/html;charset=utf-8"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://www.sun.com/web/ui" prefix="ui"%>
<f:view>
    <ui:page>
        <ui:html>
            <ui:head/>
            <ui:body>
                <ui:form id="test">
           	     <ui:calendar dateFormatPattern="yyyy.MM.dd" dateFormatPatternHelp="éééé.hh.nn" style="background-color: #00ffff"/>
                    <h:commandButton id="backBtn" value="Vissza"  action="actionBack" />
                </ui:form>
            </ui:body>
        </ui:html>
    </ui:page>      
</f:view> 

Tartalmaz egy bug-ot, mivel nem lehet a input mező stílusát állítani style paraméterrel. Ez kikerülhető ha a com.sun.rave.web.ui.renderer.CalendarRenderer osztályban átírjuk a

renderInput(calendar, "text", clientId.concat("_field"), false, styles, context, writer);

sor helyett

renderInput(calendar, "text", clientId.concat("_field"), true, styles, context, writer);

Továbbá a renderTableStart metódusban a

writer.writeAttribute("style", style, "style"); 

sort ki kell kommentezni.

Return to the user page of "Akysoft/JSF".