/
Sample userInputSpec.xml
Sample userInputSpec.xml
Sample userInputSpec.xml
Here's an example 3 panel userInputSpec.xml file. You specify the use of this XML document inside your install definition in the resource section like this (assuming your ant build.xml uses a property called build.dir):
<resources> <res id="userInputSpec.xml" src="@{build.dir}/userInputSpec.xml" /> </resources>
userInputSpec.xml
<userInput> <!-- Install --> <panel order="0"> <createForPack name="Main Application" /> <field type="title" txt="Import Keystores" bold="true" size="1" /> <field type="divider" align="top"/> <!-- Keystore --> <field type="staticText" align="left" txt="Existing SSL keystore to import:"/> <field type="file" align="left" variable="existing.ssl.keystore"> <spec txt="" size="25" set=""/> </field> <field type="space"/> <!-- Truststore --> <field type="staticText" align="left" txt="Existing SSL truststore to import:"/> <field type="file" align="left" variable="existing.ssl.truststore"> <spec txt="" size="25" set=""/> </field> <field type="space"/> <!-- Signing Keystore --> <field type="staticText" align="left" txt="Existing signing keystore to import:"/> <field type="file" align="left" variable="existing.signing.keystore"> <spec txt="" size="25" set=""/> </field> <field type="space"/> <field type="divider" align="bottom"/> </panel> <panel order="1"> <!-- Validate access to keystores with information from last panel --> <createForPack name="Main Application" /> <field type="title" txt="SSL Keystore Settings" bold="true" size="1" /> <field type="divider" align="bottom"/> <!-- Skip validation in case customer has something wrong they want to fix later --> <field type="check" align="left" variable="skip.keystore.validation"> <spec txt=" Skip keystore password validation (not recommended)" size="25" true="true" false="false" set="false"/> </field> <field type="divider" align="top"/> <!-- Keystore --> <field type="combo" variable="existing.ssl.keystore.type"> <spec txt="Keystore type:" id="existing.ssl.keystore.type"> <choice txt="JKS" value="JKS" set="true"/> <!-- <choice txt="PKCS12" value="PKCS12"/> --> </spec> </field> <field type="space"/> <field type="text" align="left" variable="keystore.key.alias"> <spec txt="Keystore Key Alias:" size="25" set="alias-1"/> </field> <field type="password" align="left" variable="keystore.password"> <spec> <pwd txt="Keystore Password:" size="25" set=""/> <pwd txt="Retype Password:" size="25" set=""/> </spec> <validator class="com.izforge.izpack.panels.userinput.validator.PasswordEqualityValidator" txt="Both keystore passwords must match." id="key for the error text"/> <validator class="com.izforge.izpack.panels.userinput.validator.PasswordKeystoreValidator" txt="Could not validate keystore with password and alias provided." id="key for the error text"> <param name="keystoreFile" value="${existing.ssl.keystore}"/> <param name="keystoreType" value="${existing.ssl.keystore.type}"/> <param name="keystoreAlias" value="${keystore.key.alias}"/> <param name="skipValidation" value="${skip.keystore.validation}"/> </validator> </field> <field type="space"/> <!-- Truststore --> <field type="combo" variable="existing.ssl.truststore.type"> <spec txt="Truststore type:" id="existing.ssl.truststore.type"> <choice txt="JKS" value="JKS" set="true"/> <!-- <choice txt="PKCS12" value="PKCS12"/> --> </spec> </field> <field type="space"/> <field type="password" align="left" variable="truststore.password"> <spec> <pwd txt="Truststore Password:" size="25" set=""/> <pwd txt="Retype Password:" size="25" set=""/> </spec> <validator class="com.izforge.izpack.panels.userinput.validator.PasswordEqualityValidator" txt="Both truststore passwords must match." id="key for the error text"/> <validator class="com.izforge.izpack.panels.userinput.validator.PasswordKeystoreValidator" txt="Could not validate keystore with password and alias provided." id="key for the error text"> <param name="keystoreFile" value="${existing.ssl.truststore}"/> <param name="keystoreType" value="${existing.ssl.truststore.type}"/> <param name="skipValidation" value="${skip.keystore.validation}"/> </validator> </field> <field type="divider" align="bottom"/> </panel> <panel order="2"> <!-- Validate access to signing keystore with information from last panel --> <createForPack name="Main Application" /> <field type="title" txt="Signing Keystore Settings" bold="true" size="1" /> <field type="divider" align="bottom"/> <!-- Skip validation in case customer has something wrong they want to fix later --> <field type="check" align="left" variable="skip.keystore.validation"> <spec txt=" Skip keystore password validation (not recommended)" size="20" true="true" false="false" set="false"/> </field> <field type="divider" align="top"/> <!-- Keystore --> <field type="combo" variable="existing.signing.keystore.type"> <spec txt="Keystore type:" id="existing.signing.keystore.type"> <choice txt="JKS" value="JKS" set="true"/> <!-- <choice txt="PKCS12" value="PKCS12"/> --> </spec> </field> <field type="space"/> <field type="password" align="left" variable="signing.keystore.password"> <spec> <pwd txt="Keystore Password:" size="20" set=""/> <pwd txt="Retype Password:" size="20" set=""/> </spec> <validator class="com.izforge.izpack.panels.userinput.validator.PasswordEqualityValidator" txt="Both signing keystore passwords must match." id="key for the error text"/> <validator class="com.izforge.izpack.panels.userinput.validator.PasswordKeystoreValidator" txt="Could not access keystore with password provided." id="key for the error text"> <param name="keystoreFile" value="${existing.signing.keystore}"/> <param name="keystoreType" value="${existing.signing.keystore.type}"/> <param name="skipValidation" value="${skip.keystore.validation}"/> </validator> </field> <field type="space"/> <!-- Signing Key 1 --> <field type="text" align="left" variable="first.signing.keystore.key.alias"> <spec txt="First Signing Alias:" size="20" set="alias-1"/> </field> <field type="password" align="left" variable="first.signing.password"> <spec> <pwd txt="First Signing Password:" size="20" set=""/> <pwd txt="Retype Password:" size="20" set=""/> </spec> <validator class="com.izforge.izpack.panels.userinput.validator.PasswordEqualityValidator" txt="Both first signing key passwords must match." id="key for the error text"/> <validator class="com.izforge.izpack.panels.userinput.validator.PasswordKeystoreValidator" txt="Could not validate keystore with password and first signing alias provided." id="key for the error text"> <param name="keystoreFile" value="${existing.signing.keystore}"/> <param name="keystoreType" value="${existing.signing.keystore.type}"/> <param name="keystorePassword" value="${signing.keystore.password}"/> <param name="keystoreAlias" value="${first.signing.keystore.key.alias}"/> <param name="skipValidation" value="${skip.keystore.validation}"/> </validator> </field> <field type="space"/> <!-- Signing Key 2 --> <field type="text" align="left" variable="second.signing.keystore.key.alias"> <spec txt="Second Signing Alias:" size="20" set="crate-cmd-alias"/> </field> <field type="password" align="left" variable="second.signing.password"> <spec> <pwd txt="Second Signing Password:" size="20" set=""/> <pwd txt="Retype Password:" size="20" set=""/> </spec> <validator class="com.izforge.izpack.panels.userinput.validator.PasswordEqualityValidator" txt="Both second signing key passwords must match." id="key for the error text"/> <validator class="com.izforge.izpack.panels.userinput.validator.PasswordKeystoreValidator" txt="Could not validate keystore with password and second signing alias provided." id="key for the error text"> <param name="keystoreFile" value="${existing.signing.keystore}"/> <param name="keystoreType" value="${existing.signing.keystore.type}"/> <param name="keystorePassword" value="${signing.keystore.password}"/> <param name="keystoreAlias" value="${second.signing.keystore.key.alias}"/> <param name="skipValidation" value="${skip.keystore.validation}"/> </validator> </field> <field type="divider" align="bottom"/> </panel> </userInput>
, multiple selections available,
Related content
Installation Files
Installation Files
Read with this
Creating Panels
Creating Panels
Read with this
Advanced Features
Advanced Features
Read with this
IzPack Utilities
IzPack Utilities
Read with this
Conditions
Conditions
Read with this