Hi,

just answering what David could not help you with.


> 4- RIFE offers methods like getParameterInt() and for other types.
> Would be better to offer something like what WebWork do ?
> In WebWork, you write :
> <ww:textfield name="user.name" />
> And the framework will create instance of User class automatically,
> and with the support
> of type converters, developer's life is so enjoyable.

Again there's no need for that since you push data into templates, you
don't pull them in. With RIFE, you'd just do template.setBean(bean)
and all the properties will be filled into value tags in the template.
You can optionally use prefixes.

Also, to retrieve parameters you're not required to do
getParameterInt(), many people just use getSubmissionBean to get the
entire bean from a response. Also, you can use setter injection if you
don't want to call code explicitly and have RIFE inject the values
automatically: 
http://rifers.org/wiki/display/RIFE/Injection+and+outjection+support+for+all+element+data+%28bijection%29

Also, if you just want to display a parameter, input or cookie that
was just sent, you can use the following template tags:
<!--V 'PARAM:paramName'/--> <!--V 'INPUT:inputName'/--> <!--V
'INCOOKIE:incookieName'/-->

> 5- What is FormBuilder ?
> Again, isn't forms supposed to exist in the HTML page ?

You can read all about it here:
http://rifers.org/wiki/display/RIFE/Forms

> 6- We all know these URLs :
> /catalog/item.do?id=23
> How to generate such URL in RIFE ? Or RIFE is like JSF (post for every
> thing) ?

Simple answer, you don't do it explicitly. You setup your data flow in
your site structure (exit, global vars, data links, etc etc) and then
you use the tag <!--V 'EXIT:QUERY:exitName'/--> and it will be
automatically replaced with the correct URL. This takes everything
RIFE knows about your webapp into consideration, also the web app
name. So you can relocate and install all RIFE application anywhere
you want.

If you need some custom data to be passed for particular exits (in
loops that build up lists of links for instance), you can use the
setExitQuery() method.

Note that RIFE also supports pathinfo mapping, which allows you to
very easily turn the url you just gave into: /catalog/item/23
(http://rifers.org/wiki/display/RIFE/Pathinfo+mapping+for+element+inputs)

> 7- bean.addConstraint(
>     new ConstrainedProperty("login").maxLength(8);
> With the following :
> <!--V 'FORM:INPUT:property'-->size="10"<!--/V-->
> will generate :
> <input type="text" name="login" size="10" maxlength="8" />
> Why not just writing :
> <!--V 'FORM:INPUT:property'-->size="10" maxlength="8"<!--/V-->

You can write that if you want. However, having the maxlength as meta
data for the bean property means that everything in the framework can
adapt to it: the column size when the database table is created, the
maxlength in the form, the validation check when you process a bean
instance, etc etc. Doing it as a constraint huge reduces repetition,
and you're doing it in Java land again, and for individual bean
instances. Meaning that this could even change at runtime or be
applied conditionally.

More info here: http://rifers.org/wiki/display/RIFE/Constraints

Hope this helps,

Geert

 >
>



-- 
Geert Bevin
Terracotta - http://www.terracotta.org
Uwyn "Use what you need" - http://uwyn.com
RIFE Java application framework - http://rifers.org
Music and words - http://gbevin.com

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"rife-users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/rife-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to