return;
}
try {
scriptEngine = getScriptEngineByExtension(implementation.getScriptLanguage());
if (scriptEngine == null) {
throw new ObjectCreationException("no script engine found for language: " + implementation.getScriptLanguage());
}
if (!(scriptEngine instanceof Invocable)) {
throw new ObjectCreationException("script engine does not support Invocable: " + scriptEngine);
}
for (Reference reference : ct.getReferences()) {
scriptEngine.put(reference.getName(), createReferenceProxy(reference.getName(), rc));
}
for (Property property : ct.getProperties()) {
ObjectFactory<?> propertyValueFactory = propertyFactory.createValueFactory(property);
if ( propertyValueFactory != null) {
scriptEngine.put(property.getName(), propertyValueFactory.getInstance());
}
}
scriptEngine.eval(new StringReader(implementation.getScriptSrc()));
} catch (ScriptException e) {
throw new ObjectCreationException(e);
}
// set the databinding and xmlhelper for wsdl interfaces
for (Service service : rc.getServices()) {
InterfaceContract ic = service.getInterfaceContract();