try {
parent.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
String[] roots = new String[] { file.getParentFile().getAbsolutePath() };
GroovyScriptEngine gse = new GroovyScriptEngine(roots, parent.getClass().getClassLoader());
Binding binding = new Binding();
binding.setVariable("session", model.getClientSession().getSession());
binding.setVariable("binding", model.getClientSession().getSession().getBinding());
binding.setVariable("out", out);
gse.run(file.getName(), binding);
} catch (Exception ex) {
ClientHelper.showError(null, ex);
} finally {
parent.setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));