This section discusses tasks that you must complete when migrating from Genero 2.10.x to a later version.
All external application configuration files must be updated by adding the noNamespaceSchemaLocation attribute, as described below:
The original Edit.xcf:
01
<?xml version="1.0" encoding="UTF-8"?>02
<APPLICATION Parent="defaultgwc">03
<EXECUTION>04
<PATH>$(res.path.fgldir.demo)/Widgets</PATH>05
</EXECUTION>06
</APPLICATION>
The new Edit.xcf:
01
<?xml version="1.0" encoding="UTF-8"?>02
<APPLICATION Parent="defaultgwc"03
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"04
xsi:noNamespaceSchemaLocation="http://www.4js.com/ns/gas/2.11/cfextwa.xsd">05
<EXECUTION>06
<PATH>$(res.path.fgldir.demo)/Widgets</PATH>07
</EXECUTION>08
</APPLICATION>
If this attribute is missing, the corresponding application will fail to start, and the following message will be written to the log file:
Can't find 'noNamespaceSchemaLocation' attribute in external application file '/home/f4gl/gwc/app/Edit.xcf'.
Specific output drivers DUA_AJAX_HTML and DUA_PAGE_HTML have been added to support certain features (such as the Canvas widget) on Internet Explorer. As a result, all customized snippets specified for DUA_AJAX will also need to be specified for DUA_AJAX_HTML.
The original CardStep1.xcf:
01
<?xml version="1.0" encoding="UTF-8"?>02
<APPLICATION Parent="defaultgwc"03
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"04
xsi:noNamespaceSchemaLocation="http://www.4js.com/ns/gas/2.11/cfextwa.xsd">05
<EXECUTION>06
<PATH>$(res.path.demo.app)/card/src</PATH>07
<MODULE>card.42r</MODULE>08
</EXECUTION>09
<OUTPUT>10
<MAP Id="DUA_AJAX">11
<THEME>12
<SNIPPET Id="Image" Style="Picture">$(res.path.demo.app)/card/tpl/set1/Image.xhtml</SNIPPET>13
</THEME>14
</MAP>15
</OUTPUT>16
</APPLICATION>
The new CardStep1.xcf:
01
<?xml version="1.0" encoding="UTF-8"?>02
<APPLICATION Parent="defaultgwc"03
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"04
xsi:noNamespaceSchemaLocation="http://www.4js.com/ns/gas/2.11/cfextwa.xsd">05
<EXECUTION>06
<PATH>$(res.path.demo.app)/card/src</PATH>07
<MODULE>card.42r</MODULE>08
</EXECUTION>09
<OUTPUT>10
<MAP Id="DUA_AJAX">11
<THEME>12
<SNIPPET Id="Image" Style="Picture">$(res.path.demo.app)/card/tpl/set1/Image.xhtml</SNIPPET>13
</THEME>14
</MAP>15
<MAP Id="DUA_AJAX_HTML">16
<THEME>17
<SNIPPET Id="Image" Style="Picture">$(res.path.demo.app)/card/tpl/set1/Image.xhtml</SNIPPET>18
</THEME>19
</MAP>20
</OUTPUT>21
</APPLICATION>
Likewise, all customized snippets specified for DUA_PAGE will also need to be specified for DUA_PAGE_HTML.
To change output drivers default behaviours see chapter Automatic Discovery of User Agent.
By default, parameters in the URL are not taken into account. They are not
transmitted to the DVM. Only the parameters defined in the configuration files
are transmitted.
To use URL parameters, in the
EXECUTION tag, you have to set AllowUrlParameters to TRUE.
Caution, parameters are transmitted to the DVM in this order: configured
parameters in PARAMETERS tag
followed by the URL parameters.
$FGLASDIR/tpl/set1/main.xhtml has changed, mainly concerning the JavaScript part. If you have customized this template file, it is recommended that you use the new main.xhtml and add your modifications to it.
Styles management has changed for all the widgets. Template paths style['allInlines4ST'] and style['allClasses4ST'] have been added. They are shortcuts to the styles management. For more information, see the chapter on Genero Presentation Styles
Some functions have been renamed due to enhancements on the Front End protocol. The default logging includes the DEPRECATED category that displays warnings. If any deprecated functions are used, this kind of warning is logged:
[ TASK=1808 VM=1860 WA=115128484 TEMPLATE ] Event(Time='7.481526', Type='Using deprecated function') / function(Name='makescrollpagesizedid')