<dependencies>
<dependency>
<groupId>org.codehaus.izpack</groupId>
<artifactId>izpack-panel</artifactId>
<version>${izpack.version}</version>
<exclusions>
<exclusion>
<groupId>org.icepdf.os</groupId>
<artifactId>icepdf-core</artifactId>
</exclusion>
<exclusion>
<groupId>org.icepdf.os</groupId>
<artifactId>icepdf-viewer</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<installerFile>${project.build.directory}/${project.build.finalName}-standard.jar</installerFile>
<finalName>${project.build.finalName}-standard.jar</finalName>
<outputDirectory>${project.build.directory}</outputDirectory>
<descriptorEncoding>UTF-8</descriptorEncoding>
<processing>
<izpack:processing version="5.0"
xmlns:izpack="http://izpack.org/schema/processing"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://izpack.org/schema/processing http://izpack.org/schema/5.0/izpack-processing-5.0.xsd">
<izpack:userInput
but I think it's wrong and it should be :
<izpack:userinput
because I have an error otherwise.
I also noted that one custom panel that has a directory chooser was optional and it isn't now. But I think I have to dig on my own and toggle a property somewhere.
Best regards,
Sam'
2) I looked over this page : https://izpack.atlassian.net/wiki/display/IZPACK/IzPack+Maven+Plugin+Reference
Where can I find the page for the 4.3.5 plugin?
Because I have some configuration properties and I don't really know what is the new property.
For example I had :
<installerFile>${project.build.directory}/${project.build.finalName}-standard.jar</installerFile>
I now have (If I'm not mistaken) :
<finalName>${project.build.finalName}-standard.jar</finalName>
<outputDirectory>${project.build.directory}</outputDirectory>
But I also had :And I cannot find any property corresponding to this one.. Normal?
<descriptorEncoding>UTF-8</descriptorEncoding>
Migration :
On the migration page : https://izpack.atlassian.net/wiki/display/IZPACK/Upgrading+Existing+Installers+from+IzPack+4.x+to+5.0
You are saying that
Specification of the schemas is currently optional
Well I tried to build without touching a thing and that didn't work so I have to replace myby
<processing>
<izpack:processing version="5.0"
xmlns:izpack="http://izpack.org/schema/processing"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://izpack.org/schema/processing http://izpack.org/schema/5.0/izpack-processing-5.0.xsd">
Also note in that page, you wrote
<izpack:userInput
but I think it's wrong and it should be :
<izpack:userinput
because I have an error otherwise.
I also noted that one custom panel that has a directory chooser was optional and it isn't now. But I think I have to dig on my own and toggle a property somewhere.
Best regards,
Sam'
allowEmptyValue
attribute in the spec tag, and now everything works fine :)Hi René,
Thank you very much for your quick response and for the clarification.
Sorry for my last point which was not clear. I had a Directory chooser field which was optional before and it was not now. But I looked over the documentation here (https://izpack.atlassian.net/wiki/display/IZPACK/Directory+Chooser+Field) and added theallowEmptyValue
attribute in the spec tag, and now everything works fine :)
I'll keep you posted if I have some other trouble.
Regards,
Sam'
<finalName>${project.build.finalName}-standard.jar</finalName>
<file override="true" src="./clients" targetdir="$INSTALL_PATH/" />
<fileset override="true" dir="./clients" targetdir="$INSTALL_PATH/clients" />
<field type="file" align="left" variable="LICENSE_FILE">
<spec txt="" size="25" set="" fileext=".lic"/>
</field>
... In Maven plugin, I used finalName tag like that:
<finalName>${project.build.finalName}-standard.jar</finalName>
Apparently now, the ".jar" extension is added automatically right?
In Install.xml :
I copied a whole directory with subdirectories with the file tag :
<file override="true" src="./clients" targetdir="$INSTALL_PATH/" />
Apparently this is not working anymore, I had to use the fileset tag :
<fileset override="true" dir="./clients" targetdir="$INSTALL_PATH/clients" />
Do you agree with that? If so, I can add them in the Confluence migration page so that people won't be stuck a few hours like me ;)
Also, I looked over the FileField documentation : https://izpack.atlassian.net/wiki/display/IZPACK/File+Chooser+Field
I tried to use the element "fileext" in order to restrict the possibility to ".lic" file (for license) but it's not working, do you know what I'm doing wrong?
<field type="file" align="left" variable="LICENSE_FILE">
<spec txt="" size="25" set="" fileext=".lic"/>
</field>
I have another question for you, we use everyday the console installation process, and apparently (https://izpack.atlassian.net/projects/IZPACK/issues/IZPACK-841), the automatic installation process at the end in console mode cannot be generated. Do you know if it still the case in 5.X.X version of IzPack since this issue was supposed to be resolved in 4.3.5?
<com.izforge.izpack.panels.userinput.UserInputPanel id="user0">
<entry key="LICENSE_FILE" value="C:\Users\samir.hadzic\Desktop\Shuttle-Install\license.lic"/>
</com.izforge.izpack.panels.userinput.UserInputPanel>
<com.izforge.izpack.panels.userinput.UserInputPanel id="user0"/>
[ Starting processing ]
Starting process Encode passwords (1/6)
Starting process Password encoding (2/6)
Starting process Encode passwords (3/6)
Starting process Password encoding (4/6)
Starting process Modify Setup FX (5/6)
Starting process ModifySetupFX (6/6)
Starting process Generate SHA Addin 32 (7/6)
Starting process SHA Generator (8/6)
Starting process Generate SHA Addin 64 (9/6)
Starting process SHA Generator (10/6)
Starting process Generate SHA FX (11/6)
Starting process SHA Generator (12/6)
<job name="Encode passwords">
<executeclass name="com.nellarmonia.installer.PasswordEncoding">
<arg>${INSTALL_PATH}/config/config-template.xml</arg>
<arg>${INSTALL_PATH}/config/config.xml</arg>
</executeclass>
</job>
public void run(AbstractUIProcessHandler handler, String[] args) {
handler.startProcess("Password encoding");
I used the FinishPanel and it did offer me the possibility to download an automatic installation script. However, if I do the exact same thing in console mode, and in graphical mode, the "auto-install.xml" files generated at the end are not identical.
The one generated by the graphical interface has all the information given in it, for example :
<com.izforge.izpack.panels.userinput.UserInputPanel id="user0">
<entry key="LICENSE_FILE" value="C:\Users\samir.hadzic\Desktop\Shuttle-Install\license.lic"/>
</com.izforge.izpack.panels.userinput.UserInputPanel>
But the one generated in console mode has nothing regarding my inputs :
<com.izforge.izpack.panels.userinput.UserInputPanel id="user0"/>
Do I need to activate something in order to save the input in Console mode?
izpack:userinput version="5.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:izpack="http://izpack.org/schema/userinput"
xsi:schemaLocation="http://izpack.org/schema/userinput http://izpack.org/schema/5.0/izpack-userinput-5.0.xsd">
<panel id="user0">
<field type="title" txt="" bold="true" size="1" />
<field type="divider" align="top"/>
<field type="staticText" align="left" txt="License to import:"/>
<field type="file" align="left" variable="LICENSE_FILE">
<spec txt="" size="25" set="" fileext=".lic" fileextdesc=".lic"/>
</field>
</panel>
<panel id="user1">
<field type="title" txt="" bold="true" size="1" />
<field type="divider" align="top"/>
<!-- Tomcat Directory Selection -->
<field type="staticText" align="left" txt="Select Tomcat Directory:"/>
<field type="dir" align="left" variable="TOMCAT_PATH">
<spec txt="" size="25" set="" />
</field>
</panel>
<panel id="user2">
<field type="title" txt="" bold="true" size="1" />
<field type="divider" align="top"/>
<field type="staticText" align="left" txt="Name of the Web Application"/>
<field type="text" variable="webapp.path">
<spec txt="Path:" id="" size="50" set="${webapp.default.path}"/>
</field>
<field type="staticText" align="left" txt="Name of the Client Updater Web Application"/>
<field type="text" variable="webapp.updater.path">
<spec txt="Path:" id="" size="50" set="${webapp.updater.default.path}"/>
</field>
</panel>
Le mercredi 17 août 2016 09:20:06 UTC+2, René Krell a écrit :
Dne úterý 16. srpna 2016 14:48:26 UTC+2 samir.hadzic.pro napsal(a):
I used the FinishPanel and it did offer me the possibility to download an automatic installation script. However, if I do the exact same thing in console mode, and in graphical mode, the "auto-install.xml" files generated at the end are not identical.
The one generated by the graphical interface has all the information given in it, for example :
<com.izforge.izpack.panels.userinput.UserInputPanel id="user0">
<entry key="LICENSE_FILE" value="C:\Users\samir.hadzic\Desktop\Shuttle-Install\license.lic"/>
</com.izforge.izpack.panels.userinput.UserInputPanel>
But the one generated in console mode has nothing regarding my inputs :
<com.izforge.izpack.panels.userinput.UserInputPanel id="user0"/>
Do I need to activate something in order to save the input in Console mode?Typically not.This will need more details. Is just this single user input field affected or are there more differences?Is this reproducable in a short example, are there certain conditions bound to that field?
...
<panel id="user3">
<field type="text" variable="REPOSITORY_USER">
<spec txt="Database user name:" id="" size="50" set="" />
</field>
<field type="password" variable="REPOSITORY_PASSWORD">
<spec>
<pwd txt="Database password:" size="25" set=""/>
<pwd txt="Retype password:" size="25" set=""/>
</spec>
</field>
</panel>
Hi,
Also I have another issue in console mode, I have the feeling that password must have a value in order to go to next panel. But it's not the case in graphical mode.
I've read the documentation on password and text for example :
https://izpack.atlassian.net/wiki/display/IZPACK/Password+Input+Field
https://izpack.atlassian.net/wiki/display/IZPACK/Text+Input+Field
If I defined a panel like that :
<panel id="user3">
<field type="text" variable="REPOSITORY_USER">
<spec txt="Database user name:" id="" size="50" set="" />
</field>
<field type="password" variable="REPOSITORY_PASSWORD">
<spec>
<pwd txt="Database password:" size="25" set=""/>
<pwd txt="Retype password:" size="25" set=""/>
</spec>
</field>
</panel>
If I do not type any username and I type only a password, I can go to next step. But the reverse is false.
Do you have any ideas on how to do that? Because I want to let the possibility to have a proxy, with a login/password. But if the user doesn't want a proxy at all, I don't want the password to be mandatory.
Also, on a side note, is it possible to have dynamic variable within the same panel? For example, the user change a value in a ComboBox or a Radio buttons, and the textField underneath changes? I know it's possible when from one panel to another but when everything is inside I don't think..
Dne čtvrtek 18. srpna 2016 13:52:58 UTC+2 samir.hadzic.pro napsal(a):
Also, on a side note, is it possible to have dynamic variable within the same panel? For example, the user change a value in a ComboBox or a Radio buttons, and the textField underneath changes? I know it's possible when from one panel to another but when everything is inside I don't think..
<panels>
<panel classname="HTMLInfoPanel" id="info"/>
<panel classname="TargetPanel"/>
<panel classname="UserInputPanel" id="user0"/>
<panel classname="UserInputPanel" id="user1"/>
<panel classname="UserInputPanel" id="user2"/>
<panel classname="UserInputPanel" id="user3"/>
<panel classname="UserInputPanel" id="user4"/>
<panel classname="UserInputPanel" id="user5"/>
<panel classname="UserInputPanel" id="user6"/>
<panel classname="UserInputPanel" id="user7"/>
<panel classname="PacksPanel"/>
<panel classname="InstallPanel"/>
<panel classname="ProcessPanel"/>
<panel classname="FinishPanel"/>
</panels>
<panel id="user3">
<field type="title" txt="" bold="true" size="1" />
<field type="divider" align="top"/>
<field type="text" variable="REPOSITORY_NAME">
<spec txt="Repository name:" id="" size="50" set="default" />
</field>
<field type="text" variable="REPOSITORY_URL">
<spec txt="Database URL:" id="" size="50" set="jdbc:mysql://localhost:3306/storage" />
</field>
<field type="text" variable="REPOSITORY_USER">
<spec txt="Database user name:" id="" size="50" set="" />
</field>
<field type="password" variable="REPOSITORY_PASSWORD">
<spec>
<pwd txt="Database password:" size="25" set=""/>
<pwd txt="Retype password:" size="25" set=""/>
</spec>
</field>
</panel>
Hi René,
Did you had some time to look over the issue in Console mode? Regarding the install.xml generated at the end without the input and the password field blocking the workflow?
Regards,