There must be a cycle after call to IClient.connect() waiting for actual connect.
IClient.packToJfx() method must create jfx file or throw exception.
Provide full program execution log, please.
package compile;
import com.dukascopy.api.system.*;
import java.io.File;
public class Compile {
private static String jnlpUrl = "https://www.dukascopy.com/client/demo/jclient/jforex.jnlp";
private static String userName = "username";
private static String password = "password";
private static IClient client;
public static void main(String[] args) throws JFAuthenticationException, JFVersionException, Exception {
try {
client = ClientFactory.getDefaultInstance();
} catch (InstantiationException e) {
System.err.println("getDefaultInstance problem" + e);
System.exit(1);
}
client.connect(jnlpUrl, userName, password);
//wait for it to connect
int i = 10; //wait max ten seconds
while (i > 0 && !client.isConnected()) {
Thread.sleep(1000);
i--;
}
if (!client.isConnected()) {
System.err.println("Failed to connect Dukascopy servers");
System.exit(1);
}
for (String s: args) {
System.out.println("Converting file " + s);
File ffile = new File(s);
client.packToJfx(ffile);
}
System.out.println("Done converting files.");
Thread.sleep(3000);
client.disconnect();
System.exit(0);
}
}