The order of ressource imports shouldn't matter!

Description

I defined a condition to ensure the INSTALL_PATH only contains ASCII characters:

<conditions>
<condition type="contains" id="conditionvalidator.pathValidator">
<variable>INSTALL_PATH</variable>
<value caseInsensitive="true" regex="true">^[\x20-\x7F]+$</value>
</condition>
</conditions>

<panels>
...
<panel classname="TargetPanel">
<validator classname="com.izforge.izpack.installer.validator.ConditionValidator"/>
</panel>
...
</panels>

With the following ressource imports, internationalization doesn't work:

<resources>
<res id="CustomLangPack.xml_eng" src="IzPack/xml/packsLangpack.eng.xml" />
<res id="CustomLangPack.xml_deu" src="IzPack/xml/packsLangpack.deu.xml" />
<res id="packsLang.xml_eng" src="IzPack/xml/packsLangpack.eng.xml" />
<res id="packsLang.xml_deu" src="IzPack/xml/packsLangpack.deu.xml" />

If the condition evaluates to false, an error message pops up: "conditionvalidator.pathValidator.error.message". But if I rearrange the imports to:

<resources>
<res id="packsLang.xml_eng" src="IzPack/xml/packsLangpack.eng.xml" />
<res id="packsLang.xml_deu" src="IzPack/xml/packsLangpack.deu.xml" />
<res id="CustomLangPack.xml_eng" src="IzPack/xml/packsLangpack.eng.xml" />
<res id="CustomLangPack.xml_deu" src="IzPack/xml/packsLangpack.deu.xml" />

and the condition evaluates to false, the correct message from the imported language pack is shown as expected.

Environment

Windows/Linux

Assignee

Unassigned

Reporter

Holger Rehn

Impact

Functional - may break existing environments

Components

Affects versions

Priority

Medium
Configure