Skip to main content

Hi,

I would like to use System Caller to run an ili2fgdb command (http://www.eisenhutinformatik.ch/interlis/ili2fgdb/). The command works in cmd but not with System Caller. Does System Caller only work with .exe and batch files?

 

Here is my command:

"java -jar "C:\iliTools\ili2fgdb-4.4.4\ili2fgdb-4.4.4.jar" --trace --proxy xxx.xx.xxx.ch --proxyPort 8080 --schemaimport --defaultSrsCode 2056 --fgdbXyResolution 0.00005 --fgdbXyTolerance 0.0004 --createTidCol --createBasketCol --createEnumTabs --beautifyEnumDispName --dbfile "\path\BL_Natstr_oereb_20190514_SU_4_4_4.gdb" --modeldir "http://models.geo.admin.ch"" target="_blank">http://models.interlis.ch/;http://models.geo.admin.ch" --models OeREBKRMtrsfr_V1_1 --log "\path\BL_Natstr_oereb_Schemaimport_Log_4_4_4.txt""

How can I execute this command directly in system caller? 

 

Any help is much appreciated!

Many thanks in advance.

 

 

Do you have java.exe on your search path? If not, you'll have to specify the complete path.

There also seems to be something strange going on with the quotation marks in the command


Thank you for your fast reply!

 

I specified the path, but it still does not work.

I recognized that there is something strange going on with the quotation marks. But the FME documentation says that on Windows the entire command should be enclosed in double quotes. As soon as I do that, it looks strange again. I tried to run it with an without the quotes enclosing the entire command. It does not work either way.

"C:\path\java.exe" -jar "C:\iliTools\ili2fgdb-4.4.4\ili2fgdb-4.4.4.jar" --trace --proxy xxx.xx.xxx.ch --proxyPort 8080 --schemaimport --defaultSrsCode 2056 --fgdbXyResolution 0.00005 --fgdbXyTolerance 0.0004 --createTidCol --createBasketCol --createEnumTabs --beautifyEnumDispName --dbfile "\path\BL_Natstr_oereb_20190514_SU_4_4_4.gdb" --modeldir "http://models.geo.admin.ch"" target="_blank">http://models.interlis.ch/;http://models.geo.admin.ch" --models OeREBKRMtrsfr_V1_1 --log "\path\BL_Natstr_oereb_Schemaimport_Log_4_4_4.txt"

 


Thank you for your fast reply!

 

I specified the path, but it still does not work.

I recognized that there is something strange going on with the quotation marks. But the FME documentation says that on Windows the entire command should be enclosed in double quotes. As soon as I do that, it looks strange again. I tried to run it with an without the quotes enclosing the entire command. It does not work either way.

"C:\path\java.exe" -jar "C:\iliTools\ili2fgdb-4.4.4\ili2fgdb-4.4.4.jar" --trace --proxy xxx.xx.xxx.ch --proxyPort 8080 --schemaimport --defaultSrsCode 2056 --fgdbXyResolution 0.00005 --fgdbXyTolerance 0.0004 --createTidCol --createBasketCol --createEnumTabs --beautifyEnumDispName --dbfile "\path\BL_Natstr_oereb_20190514_SU_4_4_4.gdb" --modeldir "http://models.geo.admin.ch"" target="_blank">http://models.interlis.ch/;http://models.geo.admin.ch" --models OeREBKRMtrsfr_V1_1 --log "\path\BL_Natstr_oereb_Schemaimport_Log_4_4_4.txt"

 

The use of quotes above is correct, but you also need to enclose the entire command in a second pair of double quotes (weird and unusual, I find). From the help:

If paths contain spaces, enclose the path in double quotes, and only on Windows enclose the entire command in double quotes. 

So it should be:

""C:\path\java.exe" -jar "C:\iliTools\ili2fgdb-4.4.4\ili2fgdb-4.4.4.jar" --trace --proxy proxy.kt.lunet.ch --proxyPort 8080 --schemaimport --defaultSrsCode 2056 --fgdbXyResolution 0.00005 --fgdbXyTolerance 0.0004 --createTidCol --createBasketCol --createEnumTabs --beautifyEnumDispName --dbfile "\path\BL_Natstr_oereb_20190514_SU_4_4_4.gdb" --modeldir "http://models.geo.admin.ch"" target="_blank">http://models.interlis.ch/;http://models.geo.admin.ch" --models OeREBKRMtrsfr_V1_1 --log "\path\BL_Natstr_oereb_Schemaimport_Log_4_4_4.txt""

 


The use of quotes above is correct, but you also need to enclose the entire command in a second pair of double quotes (weird and unusual, I find). From the help:

If paths contain spaces, enclose the path in double quotes, and only on Windows enclose the entire command in double quotes. 

So it should be:

""C:\path\java.exe" -jar "C:\iliTools\ili2fgdb-4.4.4\ili2fgdb-4.4.4.jar" --trace --proxy proxy.kt.lunet.ch --proxyPort 8080 --schemaimport --defaultSrsCode 2056 --fgdbXyResolution 0.00005 --fgdbXyTolerance 0.0004 --createTidCol --createBasketCol --createEnumTabs --beautifyEnumDispName --dbfile "\path\BL_Natstr_oereb_20190514_SU_4_4_4.gdb" --modeldir "http://models.geo.admin.ch"" target="_blank">http://models.interlis.ch/;http://models.geo.admin.ch" --models OeREBKRMtrsfr_V1_1 --log "\path\BL_Natstr_oereb_Schemaimport_Log_4_4_4.txt""

 

Thank you for your help. I appreciate it.

As I mentioned in my previous reply, I also tried to run it with the path enclosed in double quotes. It does not work either.

 

This is the command i used:

""C:\path\java.exe" -jar "C:\iliTools\ili2fgdb-4.4.4\ili2fgdb-4.4.4.jar" --trace --proxy xxx.xx.xxx.ch --proxyPort 8080 --schemaimport --defaultSrsCode 2056 --fgdbXyResolution 0.00005 --fgdbXyTolerance 0.0004 --createTidCol --createBasketCol --createEnumTabs --beautifyEnumDispName --dbfile "\path\BL_Natstr_oereb_20190514_SU_4_4_4.gdb" --modeldir "http://models.geo.admin.ch"" target="_blank">http://models.interlis.ch/;http://models.geo.admin.ch" --models OeREBKRMtrsfr_V1_1 --log "\path\BL_Natstr_oereb_Schemaimport_Log_4_4_4.txt""

FME returns translation was successful, but nothing happend. The command was not executed.


The use of quotes above is correct, but you also need to enclose the entire command in a second pair of double quotes (weird and unusual, I find). From the help:

If paths contain spaces, enclose the path in double quotes, and only on Windows enclose the entire command in double quotes. 

So it should be:

""C:\path\java.exe" -jar "C:\iliTools\ili2fgdb-4.4.4\ili2fgdb-4.4.4.jar" --trace --proxy proxy.kt.lunet.ch --proxyPort 8080 --schemaimport --defaultSrsCode 2056 --fgdbXyResolution 0.00005 --fgdbXyTolerance 0.0004 --createTidCol --createBasketCol --createEnumTabs --beautifyEnumDispName --dbfile "\path\BL_Natstr_oereb_20190514_SU_4_4_4.gdb" --modeldir "http://models.geo.admin.ch"" target="_blank">http://models.interlis.ch/;http://models.geo.admin.ch" --models OeREBKRMtrsfr_V1_1 --log "\path\BL_Natstr_oereb_Schemaimport_Log_4_4_4.txt""

 

Dirty hack, of which I am not proud: put that command in a .bat file and run that .bat file through the SystemCaller 😅 


The use of quotes above is correct, but you also need to enclose the entire command in a second pair of double quotes (weird and unusual, I find). From the help:

If paths contain spaces, enclose the path in double quotes, and only on Windows enclose the entire command in double quotes. 

So it should be:

""C:\path\java.exe" -jar "C:\iliTools\ili2fgdb-4.4.4\ili2fgdb-4.4.4.jar" --trace --proxy proxy.kt.lunet.ch --proxyPort 8080 --schemaimport --defaultSrsCode 2056 --fgdbXyResolution 0.00005 --fgdbXyTolerance 0.0004 --createTidCol --createBasketCol --createEnumTabs --beautifyEnumDispName --dbfile "\path\BL_Natstr_oereb_20190514_SU_4_4_4.gdb" --modeldir "http://models.geo.admin.ch"" target="_blank">http://models.interlis.ch/;http://models.geo.admin.ch" --models OeREBKRMtrsfr_V1_1 --log "\path\BL_Natstr_oereb_Schemaimport_Log_4_4_4.txt""

 

What does the log say?

I tested with ili2fgdb (granted, with a limited set of parameters) and it worked for me. I may be that the backslaches are causing issues, perhaps try to replace them with forward slashes.


The use of quotes above is correct, but you also need to enclose the entire command in a second pair of double quotes (weird and unusual, I find). From the help:

If paths contain spaces, enclose the path in double quotes, and only on Windows enclose the entire command in double quotes. 

So it should be:

""C:\path\java.exe" -jar "C:\iliTools\ili2fgdb-4.4.4\ili2fgdb-4.4.4.jar" --trace --proxy proxy.kt.lunet.ch --proxyPort 8080 --schemaimport --defaultSrsCode 2056 --fgdbXyResolution 0.00005 --fgdbXyTolerance 0.0004 --createTidCol --createBasketCol --createEnumTabs --beautifyEnumDispName --dbfile "\path\BL_Natstr_oereb_20190514_SU_4_4_4.gdb" --modeldir "http://models.geo.admin.ch"" target="_blank">http://models.interlis.ch/;http://models.geo.admin.ch" --models OeREBKRMtrsfr_V1_1 --log "\path\BL_Natstr_oereb_Schemaimport_Log_4_4_4.txt""

 

Thank you very much for yout help!

The final problem was related to the transformer preceding SystemCaller. Now everything works fine, except that it is very slow.


Reply