Модификация переменной UserInputPanel Izpack

У меня есть переменная = "имя" в моем userInputSpec.xml. Я использую его для создания каталога внутри установки. $INSTALL_PATH/${имя}

Я хочу удалить пробелы, указанные в имени, до того, как он вызовет панель установки. Я не хочу ограничивать пользователя для ввода пробелов.


person Deepak Agarwal    schedule 19.02.2014    source источник


Ответы (1)


В IzPack 5.0 можно использовать динамические переменные с фильтром регулярных выражений, см. http://docs.codehaus.org/display/IZPACK/Dynamic+Variables:

<conditions>
  <condition id="nameIsSet" type="exists">
    <variable>name</variable>
  </condition>
</conditions>

<dynamicvariables>
  <variable name="name.nospace" value="${name}" checkonce="true" condition="nameIsSet">
    <filters>
      <regex regexp="\s+"
             replace=""
             defaultValue="${name}"
             global="true"/>
    </filters>
  </variable>
</dynamicvariables>

В этом случае ${name.nospace} может быть переменной для повторного использования, которая будет установлена ​​после установки переменной ${name} (и никогда не изменится после этого).

person René    schedule 26.08.2014