|
|
(20 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
− | <br>
| |
| | | |
− | :
| |
− |
| |
− | = EDT version .7 =
| |
− |
| |
− | In EDT version .7, a service is accessible only from a Rich UI application, and your task follows this pattern: declare a service-access variable and use it in a call statement.
| |
− |
| |
− | == Accessing a dedicated service ==
| |
− |
| |
− | <source lang="java">
| |
− | // use a Service or Interface type to declare the service-access variable
| |
− | myService MyServiceType?{@dedicatedService}
| |
− |
| |
− | // use the variable to call the service
| |
− | call myService.theOperation() returning to theCallBack
| |
− | onException theExceptionHandler;
| |
− |
| |
− | /*
| |
− | * create a new EGL project for "web 2.0 application with services".
| |
− | * add the following
| |
− | * type valid input into the first text box; for example:
| |
− | * 5, 12, 4
| |
− | */
| |
− |
| |
− | package client;
| |
− |
| |
− | import server.MyServiceType;
| |
− | import org.eclipse.edt.rui.widgets.GridLayout;
| |
− | import org.eclipse.edt.rui.widgets.TextField;
| |
− | import org.eclipse.edt.rui.widgets.GridLayoutData;
| |
− | import dojo.widgets.DojoButton;
| |
− | import dojo.widgets.DojoTextField;
| |
− |
| |
− | handler Test type RUIhandler{initialUI =[ui],
| |
− | onConstructionFunction = start,
| |
− | cssFile = "css/ProjectInEDT.7.css",
| |
− | title = "MyHandler"}
| |
− |
| |
− | ui GridLayout{columns = 3, rows = 4, cellPadding = 4,
| |
− | children =[myResult, myButton, scores]};
| |
− | scores TextField{layoutData =
| |
− | new GridLayoutData{row = 2, column = 2}};
| |
− | myButton DojoButton{layoutData =
| |
− | new GridLayoutData{row = 4, column = 2},
| |
− | text = "Calculate",
| |
− | onClick ::= ui_onClick};
| |
− | myResult DojoTextField{layoutData =
| |
− | new GridLayoutData{row = 4, column = 3}};
| |
− |
| |
− | function start()
| |
− |
| |
− | end
| |
− |
| |
− | function theExceptionHandler(exp AnyException in)
| |
− | SysLib.writeStdOut(exp.message);
| |
− | end
| |
− |
| |
− | function theCallBack(retResult decimal(4, 2) in)
| |
− | myResult.text = retResult;
| |
− | end
| |
− |
| |
− | function ui_onClick(event Event in)
| |
− |
| |
− | inputLength int = scores.text.length();
| |
− |
| |
− | myDelimiters string = ", ";
| |
− | myPosition int = 1;
| |
− | myToken string;
| |
− | myList int[];
| |
− | while(myPosition < inputLength)
| |
− | myToken = StringLib.getNextToken(scores.text,
| |
− | myPosition, myDelimiters);
| |
− | if(myToken != null)
| |
− | myList.appendElement(myToken as int);
| |
− | end
| |
− | end
| |
− | myService MyServiceType?{@DedicatedService};
| |
− | call myService.calculate(myList) returning to theCallBack
| |
− | onException theExceptionHandler;
| |
− | end
| |
− | end
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− | </source>
| |
− |
| |
− | == Accessing an EGL REST-RPC service ==
| |
− |
| |
− | == Accessing a third-party REST service ==
| |
− |
| |
− | = EDT version .8 =
| |
− |
| |
− | <br>
| |
− |
| |
− | <br>
| |
− |
| |
− | <br>
| |
− |
| |
− | <br>
| |
− |
| |
− | <br>
| |
− |
| |
− | <br> <source lang="java">
| |
− |
| |
− | // From a a Access a dedicated service
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− |
| |
− | http HttpRest{request.uri="http:host\\myService"};
| |
− | srvc IRest?;
| |
− | srvc = ServiceLib.completeBind(srvc, http);
| |
− | </source>
| |
− |
| |
− | '''Accessing HTTP request headers'''
| |
− |
| |
− | <source lang="java">
| |
− | http HttpRest{};
| |
− | http.request.headers = new Dictionary { param1 = "a value to pass to my service" };
| |
− | srvc IRest?{@Resource {}};
| |
− | srvc = ServiceLib.completeBind(srvc, http);
| |
− | </source>
| |
− |
| |
− | '''HTTP request and response'''
| |
− |
| |
− | <source lang="java">
| |
− | function invokeDoSomething()
| |
− | call srvc.doSomething() returning to serviceCallback;
| |
− | end
| |
− |
| |
− | function serviceCallback(returnValueOne String, callbackHttp IHTTP in)
| |
− | // process callback request or response
| |
− | end
| |
− | </source>
| |