Skip to content

Commit

Permalink
Bug fix in CLI help and manual
Browse files Browse the repository at this point in the history
add missing handling of "help" Option in command line arguments and log4j configuration in manual
  • Loading branch information
jcthiele committed Oct 5, 2024
1 parent dcf4050 commit af3e7c5
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 14 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
<properties>
<!-- insert keystore password here -->
<keystore.password>passwort</keystore.password>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

<jsign.url>https://github.com/ebourg/jsign/releases/download/6.0/jsign-6.0.jar</jsign.url>
Expand Down
10 changes: 5 additions & 5 deletions resources/help/manual.html
Original file line number Diff line number Diff line change
Expand Up @@ -518,7 +518,7 @@ <h3><a id="cli">Kommandozeilen-Modus (CLI)</a></h3>
</p>
<p>
Die Hilfe kann mit dem Kommandozeilen-Parameter <i>-h</i> bzw. <i>--help</i> aufgerufen werden. <br />
<i>java -jar OpenXRechnungToolbox.jar -h</i>
<i>java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar -h</i>
</p>

<h4><a id="clivali">Validierung im Kommandozeilen-Modus</a></h4>
Expand All @@ -528,7 +528,7 @@ <h4><a id="clivali">Validierung im Kommandozeilen-Modus</a></h4>
</p>
<p class="h4">
Mit der .jar-Datei:<br />
<i>OpenXRechnungToolbox.jar -val -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_ubl.xml -o testreport1.html -v 3.0.2</i>.
<i>java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar -val -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_ubl.xml -o testreport1.html -v 3.0.2</i>.
</p>
<p class="h4">
Mit der .exe-Datei:<br />
Expand All @@ -549,7 +549,7 @@ <h4><a id="cliviz">Visualisierung im Kommandozeilen-Modus</a></h4>
</p>
<p class="h4">
Mit der .jar-Datei:<br />
<i>OpenXRechnungToolbox.jar -viz -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_ubl.xml -o tesviz.html</i>.
<i>java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar -viz -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_ubl.xml -o tesviz.html</i>.
</p>
<p class="h4">
Mit der .exe-Datei:<br />
Expand All @@ -561,7 +561,7 @@ <h4><a id="cliviz">Visualisierung im Kommandozeilen-Modus</a></h4>
</p>
<p class="h4">
Mit der .jar-Datei:<br />
<i>OpenXRechnungToolbox.jar -viz -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_ubl.xml -o tesviz.pdf -p</i>.
<i>java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar -viz -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_ubl.xml -o tesviz.pdf -p</i>.
</p>
<p class="h4">
Mit der .exe-Datei:<br />
Expand All @@ -583,7 +583,7 @@ <h4><a id="clicon">Konvertierung von CII zu UBL im Kommandozeilen-Modus</a></h4>
</p>
<p class="h4">
Mit der .jar-Datei:<br />
<i>OpenXRechnungToolbox.jar -con -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_uncefact.xml -o convertedFromCII.xml</i>.
<i>java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar -con -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_uncefact.xml -o convertedFromCII.xml</i>.
</p>
<p class="h4">
Mit der .exe-Datei:<br />
Expand Down
10 changes: 5 additions & 5 deletions resources/help/manual_en.html
Original file line number Diff line number Diff line change
Expand Up @@ -518,7 +518,7 @@ <h3><a id="cli">Kommandozeilen-Modus (CLI)</a></h3>
</p>
<p>
Die Hilfe kann mit dem Kommandozeilen-Parameter <i>-h</i> bzw. <i>--help</i> aufgerufen werden. <br />
<i>java -jar OpenXRechnungToolbox.jar -h</i>
<i>java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar -h</i>
</p>

<h4><a id="clivali">Validierung im Kommandozeilen-Modus</a></h4>
Expand All @@ -528,7 +528,7 @@ <h4><a id="clivali">Validierung im Kommandozeilen-Modus</a></h4>
</p>
<p class="h4">
Mit der .jar-Datei:<br />
<i>OpenXRechnungToolbox.jar -val -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_ubl.xml -o testreport1.html -v 3.0.2</i>.
<i>java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar -val -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_ubl.xml -o testreport1.html -v 3.0.2</i>.
</p>
<p class="h4">
Mit der .exe-Datei:<br />
Expand All @@ -549,7 +549,7 @@ <h4><a id="cliviz">Visualisierung im Kommandozeilen-Modus</a></h4>
</p>
<p class="h4">
Mit der .jar-Datei:<br />
<i>OpenXRechnungToolbox.jar -viz -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_ubl.xml -o tesviz.html</i>.
<i>java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar -viz -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_ubl.xml -o tesviz.html</i>.
</p>
<p class="h4">
Mit der .exe-Datei:<br />
Expand All @@ -561,7 +561,7 @@ <h4><a id="cliviz">Visualisierung im Kommandozeilen-Modus</a></h4>
</p>
<p class="h4">
Mit der .jar-Datei:<br />
<i>OpenXRechnungToolbox.jar -viz -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_ubl.xml -o tesviz.pdf -p</i>.
<i>java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar -viz -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_ubl.xml -o tesviz.pdf -p</i>.
</p>
<p class="h4">
Mit der .exe-Datei:<br />
Expand All @@ -583,7 +583,7 @@ <h4><a id="clicon">Konvertierung von CII zu UBL im Kommandozeilen-Modus</a></h4>
</p>
<p class="h4">
Mit der .jar-Datei:<br />
<i>OpenXRechnungToolbox.jar -con -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_uncefact.xml -o convertedFromCII.xml</i>.
<i>java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar -con -i exampleInvoices\XRechnung_v3.0.2\01.01a-INVOICE_uncefact.xml -o convertedFromCII.xml</i>.
</p>
<p class="h4">
Mit der .exe-Datei:<br />
Expand Down
22 changes: 19 additions & 3 deletions src/main/java/org/oxt/toolbox/gui/AppWindow.java
Original file line number Diff line number Diff line change
Expand Up @@ -357,8 +357,12 @@ public static void main(String[] args) throws Exception {

Options baseOptions = new Options();

OptionGroup vizvalGroup = new OptionGroup();
Option vizOption = new Option("viz", "visualization", false, "run visualization without GUI in Command Line Interface (CLI) mode.");
Option helpOpt = new Option("h", "help", false, "print this message");
helpOpt.setRequired(false);
baseOptions.addOption(helpOpt);

OptionGroup vizvalGroup = new OptionGroup();
Option vizOption = new Option("viz", "visualization", false, "run visualization without GUI in Command Line Interface (CLI) mode.");
vizOption.setRequired(false);
vizvalGroup.addOption(vizOption);
Option valOption = new Option("val", "validation", false, "run validation without GUI in Command Line Interface (CLI) mode.");
Expand Down Expand Up @@ -390,7 +394,16 @@ public static void main(String[] args) throws Exception {

try {
CommandLine cmd = parser.parse(baseOptions, args);

if (cmd.hasOption("help")) {
// not necessary to define the usage modes when option configuration is correctly configured with groups...
// just use: help.printHelp("java OpenXRechnungToolbox.jar", options, true)
// don't forget to add -Dlog4j.configuration option (or Java VM options in general)
help.printHelp("\n"
+ "Gui mode: java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar --config <path to config file> \n"
+ "CLI mode validation: java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar --validation --input <path to invoice file> --output <path of report file> --valiVersion <version of XRechnung to validate against> \n"
+ "CLI mode visualization: java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar --visualization --input <path to invoice file> --output <path of visualization file> --type <pdf or html>", baseOptions);
System.exit(1);
}
if (cmd.hasOption("config")) {
String alternativeConfig = cmd.getOptionValue("config");
if (alternativeConfig != null) {
Expand Down Expand Up @@ -451,6 +464,9 @@ public static void main(String[] args) throws Exception {
}
} catch (ParseException e) {
System.out.println(e.getMessage());
// not necessary to define the usage modes when option configuration is correctly configured with groups...
// just use: help.printHelp("java OpenXRechnungToolbox.jar", options, true)
// don't forget to add -Dlog4j.configuration option (or Java VM options in general)
help.printHelp("\n"
+ "Gui mode: java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar --config <path to config file> \n"
+ "CLI mode validation: java -Dlog4j.configuration=./resources/log4j2.xml -jar OpenXRechnungToolbox.jar --validation --input <path to invoice file> --output <path of report file> --valiVersion <version of XRechnung to validate against> \n"
Expand Down

0 comments on commit af3e7c5

Please sign in to comment.