Important note: Please note that Lobster cannot provide support for self-developed classes.This function allows you to execute Java code as a script. In parameter a, you can either put in the name of a file which contains Java code or you can put in the java code directly. Parameters b-j are optional and can be used within the script code. Furthermore, you can use all variables, lists and maps of your profile. To get access to a list or a map you have to use the following methods:
script.getMap("map_name") returns a map object of type java.util.Map.
script.getList("list_name") returns a list object of type java.util.List.
With the execute script function you can also handle DOM objects (org.jdom.Document) which are created in the call webservice() function. To access a DOM object use this method:
script.getDocument("document_name") returns an org.jdom.Document object.
The DOM object can also be deleted with method script.deleteDocument("document_name") or by using function delete DOM object().
Parameters
Parameter | Description |
|---|---|
a | Script or filename. |
b | (optional) Script parameter b. |
c | (optional) Script parameter c. |
d | (optional) Script parameter d. |
e | (optional) Script parameter e. |
f | (optional) Script parameter f. |
g | (optional) Script parameter g. |
h | (optional) Script parameter h. |
i | (optional) Script parameter i. |
j | (optional) Script parameter j. |
Examples
Parameter a | Parameter b | Parameter c | Parameter d | .. | Parameter j | Result |
|---|---|---|---|---|---|---|
b+c | Demo | Script | DemoScript | |||
return VAR_FILENAME; | demo.txt | |||||
./conf/MyScript.txt | 30 | yyyy-MM-dd | ||||
if(b.equals("demo")) return script.getMap(c).get("demo"); else return VAR_FILENAME; | test | map_demo | demo.txt | |||
./conf/webservice/DOM_script.java | myDOM | Object as string. |
int intValue = Integer.parseInt(b);
switch(intValue) {
case 10:
return "yyyyMMdd";
case 20:
return "dd.MM.yyyy";
case 30:
return "yyyy-MM-dd";
default:
return "yyyyMMdd";
}//Imports
import java.util.List;
import org.jdom.Document;
import org.jdom.Element;
//Method to print JDOM element
private void printElement(List children, StringBuffer res, String tab){
for (int i = 0; i < children.size(); i++) {
Element child = (Element)children.get(i);
res.append(child.getName() +": "+ child.getText() + "\n");
printElement(child.getChildren(),res, tab+"\t");
}
}
//Get JDOM document for DOM name given in parameter b
Document dom = script.getDocument(b);
if(dom == null){
return "DOM Object does not exsist";
}
Element root = dom.getRootElement();
List children = root.getChildren();
StringBuffer res = new StringBuffer();
//Call method from above
printElement(children, res, "");
//Returns string as function result
return res.toString();//Imports
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;
//Get JDOM document for DOM name given in parameter b
Document dom = script.getDocument(b);
if(dom == null){
return "DOM Object does not exsist";
}
//Return JDOM document as XML string
XMLOutputter outputter = new XMLOutputter();
outputter.setFormat(Format.getPrettyFormat());
return outputter.outputString(dom);