Menu

Vroom 2.1.3 released with new enhancements

1 - Access to bean properties in vroom-config.xml
Users can access now any java bean using the following definition in the config file:

<event type="onload" method="getProperties" bean-class="com.myco.bean.TestBean" var="tb" scope="session">
<call type="update" tag="body" attribute="innerHTML">
<![CDATA[
value1 = #{value1}
value2 = #{value2}
]]>
</call>
</event>

or you can also access a single propery by using following configuration:

<event type="onload" method="getValue1" bean-class="com.myco.bean.TestBean" var="tb" scope="session">
<call type="update" tag="body" attribute="innerHTML">
<![CDATA[
value1 = #{value}
]]>
</call>
</event>

2 - Added two additional method signatures which are considered to be valid and can be bound to any HTML event:

public void|Object methodName();
public void|Object methodName(HttpServletRequest req);

Note: You can return all basic types, collections, maps, properties, resource bundles, request, response,
or any java bean.

3 - Access the sessionId and contextPath in vroom-config.xml using:

#{sessionId}
#{contextPath}

4 - vroom.js has been revised and following changes have been made:

VroomUtils class is introduced with following utility methods:
triggerEvent(elemId, event) // this was available as vroomTriggerEvent(elemId, event) i previous version.
populateSelect(elemId, jsonString)
populateSelect(elemId, jsonString, labelVar, valueVar)
generateRadioGroup(elemId, name, jsonString, cols, styleClass)
generateRadioGroupEx(elemId, name, jsonString, labelVar, valueVar, cols, styleClass)
generateCheckBoxGroup(elemId, name, jsonString, cols, styleClass)
generateCheckBoxGroupEx(elemId, name, jsonString, labelVar, valueVar, cols, styleClass)

5 - A Java Bean has been added to net.openkoncept.vroom.bean package as LabelValueBean. This can be used to build
collections that can be used to populate select and generate radio and checkbox groups.

6 - An attribute 'name' is added to <meta/> tag of vroom-config.xml. Previous version (vroom-config-2.0.xsd) supported
only http-equiv and content attributes but now the framework knows the name attribute as well so you can write the
meta as follows:

<meta name="author" content="Farrukh Ijaz"/>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>

Following bugs have been fixed:

2017208 - Support for '-' character in filename has been added. The framework can work well with files '-' in their
names e.g. test-form.jsp or user-account.jsp.

2017215 - Postback feature has been added. If a form defined in vroom-config.xml has a navigation with forward set to
true and the form has elements. Then the forwarded request will automatically update html elements on the
target url if the element name matches. E.g.

<form method="authenticate" bean-class="com.myco.bean.LoginBean" var="login" scope="request">
<navigation outcome="success" url="/welcome.jsp"/>
<navigation outcome="failure" url="/login.jsp" forward="true"/>
<element id="email"/>
<element id="password"/>
</form>

As per the above definition, if the authenticate method of LoginBean class returns failure, the html elements
email and password will automatically get populated with the modified value. It means if you don't want to
postback password, you need to set password to null in authenticate method.

Posted by Farrukh Ijaz 2008-07-24

Log in to post a comment.