wemx WebService V1.0

Size: px
Start display at page:

Download "wemx WebService V1.0"

Transcription

1 wemx WebService

2 2 wemx WebService WEMX WEBSERVICE WEB SERVICE INTRODUCTION SYSTEM PAGE USER PAGE WEB SERVICE API SYSTEM PAGE PROVIDED BY THE WEB SERVICE SYSTEM PAGE EXAMPLE SETTING THE WEB SERVER CONNECTING TO/USING THE SYSTEM PAGE SYSTEM PAGE COMPOSITION SETTINGS FOR USING AUTHORIZATION FEATURES MAKING AN USER PAGE WITH WEB SERVICE API USING WEB SERVICE API WITH JAVASCRIPT CREATING A REQUEST OBJECT SENDING REQUESTS PROCESSING RESPONSES WEB SERVICE API ADDRESS READING SINGLE ADDRESS READING INDEX.HTML HMX PROJECT Installing wemx Designer and creating a screen WRITING INDEX.HTML HTML JavaScript CONSECUTIVE ADDRESS READING INDEX.HTML... 30

3 wemx WebService HMX PROJECT Installing wemx Designer and creating a screen WRITING INDEX.HTML HTML CONFIGURING USER PAGE SETTINGS WEB SERVICE API ADDRESS WRITING SINGLE ADDRESS WRITING INDEX.HTML HMX PROJECT Installing wemx Designer and creating a screen 설치및화면만들기 WRITING INDEX.HTML HTML JavaScript CONSECUTIVE ADDRESS WRITING INDEX.HTML HMX PROJECT Installing wemx Designer and creating a screen WRITING INDEX.HTML HTML JavaScript CONFIGURING USER PAGE SETTINGS WEB SERVICE API READING/WRITING MULTIPLE ADDRESSES AT ONCE INDEX.HTML HMX PROJECT INSTALLING WEMX DESIGNER AND CREATING A SCREEN WRITING INDEX.HTML HTML JAVASCRIPT Multiple Address Handling Example Requesting Response... 56

4 4 wemx WebService 7.4. CONFIGURING USER PAGE SETTINGS WEB SERVICE API READING ALARMS INDEX.HTML HMX PROJECT INSTALLING WEMX DESIGNER AND CREATING A SCREEN WRITING INDEX.HTML HTML JAVA SCRIPT Initializing Terminating Example of Reading (Paging) History Alarms Requesting Response CONFIGURING USER PAGE SETTINGS WEB SERVICE API ALARM CHECK/DELETE INDEX.HTML HMX PROJECT INSTALLING WEMX DESIGNER AND CREATING A SCREEN WRITING INDEX.HTML HTML JAVA SCRIPT Example of checking all History Alarms Example of deleting all History Alarms Requesting for Alarm Checks Requesting for Alarm Deletes CONFIGURING USER PAGE SETTINGS WEB SERVICE API AUTHORIZATION INDEX.HTML HMX PROJECT... 81

5 wemx WebService INSTALLING WEMX DESIGNER AND CREATING A SCREEN WRITING INDEX.HTML HTML JAVA SCRIPT Log-in Example Log-out Example CONFIGURING USER PAGE SETTINGS... 85

6 6 wemx WebService 1. WEB SERVICE INTRODUCTION wemxplayercontains a web server by default. The Web Service allows monitoring and controlling of wemx Player s data through various web browsers. In order to use our Web Service, devices with wemx Players installed must be configured with an IP address. wemx is largely composed ofsystem Page and User Page to provide the Web Service 1.1. System Page The System Page is a webpage provided by wemx Player by default. Users can manage& monitor addresses of devicesthat are connected to the wemx Player, and control & monitoralarms.

7 wemx WebService User Page User Page s UI can be customized according to various requests and tastes through HTML, CSS, JS, Image, and JSON to replacethe System Page. The page provides Web Service API to allow it to be synced with wemx Player. By utilizing these APIs, users can monitor/control specific address, or check alarms. Users can also monitor/control all addresses used by HMX Projects, and check occurring alarms in real-time.

8 8 wemx WebService 1.3. Web Service API Through the webpage, wemx provides a variety of Web Service APIs in order to allow users to monitor/control addresses from HMX Projects. The Web Service API utilizes RESTFul API method, and uses GET, PUT, POST, and DELETE methods to send requests, and receiveresponses through JSON. API can be largely divided into Account, Address, Alarm.Their functions are as follows: - Account: Log-in/out function - Address: Address read/write function - Alarm: Alarm list view/delete function More details on APIs can be found in the wemx-webservice-api document.

9 wemx WebService 9 2. SYSTEM PAGE PROVIDED BY THE WEB SERVICE We will now look into how to use the System Page, which is provided by wemx by default. The System Page provides monitoring/controlling functionalities for addresses and alarms. These features are provided by default, and anyone can use them after understanding the basics System Page Example Let s learn how to use the System Page by looking at an example (Modbus). A simple HMX Project is prepared to use the Web Service.

10 10 wemx WebService Setting the web server In [Project] [System Settings] [Screen], select [Web Server] tab to configure necessary settings for using the Web Service. In settings, using of Web Server is disabled by default. Enable Use Web Server to use the Web Service. Default Web Page settingsare divided into System Page setting, and User Page Setting.

11 wemx WebService 11 In order to configure the System Page, select the Default Web Page to be System Page. In order to configure the User Page, Select the Default Web Page to be User page. By clicking Import, you can import previously created User Page files (HTML, CSS, JS, Image, etc.) to HMX Projects. The Connect Port is set to 80 by default. In order to target Android devices, you cannot use Well-Known Ports. Please check the list of ports usable by Android systems. In this example, we will use port 8080, or 8081, in case an error occurs. Thread Count is set to 4 as default. Users can set any value between 1~8. Use SSL will be available in the near future.

12 12 wemx WebService Connecting to/using the System Page 1. Configure necessary settings to connect with anandroid Device. Use pymodslaveqt that simulates Modbus Slavewith external devices 2. Check the IP information of devices (PC, etc.) using wemx Player, and run the Player. 3. Open a web browser and type in the IP address. 4. On the left menu, go to [Address] [Monitor]. [Monitor] page contains features for monitoring specific Addresses. 5. Enter an address you wish to monitor in the Address section. We typed in [PLC1] in the example. 6. Set Data Type to the type of address you wish to monitor. We selected Bit in the example. 7. Click the Get button to start monitoring. 8. On the left menu, go to [Address] [Control]. [Control] page contains features for setting necessary values for specific addresses. 9. Enter an address you wish to change the value of in the Address section. We typed in [PLC1] in the example. 10. Set Data Type to the type of address you wish to change. We selected Integer 16bit in the example.

13 wemx WebService Type in the value you would like to set on the Value section. We typed in 77 in the example. 12. Click the Set button and the value of address will be changed.

14 14 wemx WebService System Page Composition Next is about wemx System Page composition. [Address] [Monitor] Address Data Type Count Refresh Type in the address you wish to monitor. Ex) [DISPLAY]USR00000, [PLC1]D00001, [PLC1]P0001 Set the data type of address you wish to monitor. Supported type: Bit, Integer 16bit, Integer 32bit, Unsigned Integer 16bit, Unsigned Integer 32bit, Text(UTF-8) Type in the number of values you wish to import that are within the data type of entered addresses starting number In case of Text types, count must be specified. In this case, count is considered a byte count. Set the monitoring cycle (seconds)

15 wemx WebService 15 [Address] [Control] Address Data Type Value Type in the address you wish to change. Ex) [DISPLAY]USR00000, [PLC1]D00001, [PLC1]P0001 Set the data type of address you wish to change. Supported type: Bit, Integer 16bit, Integer 32bit, Unsigned Integer 16bit, Unsigned Integer 32bit, Text(UTF-8) Type in the value you wish to change into.

16 16 wemx WebService [Alarm] Block No. Type Column Row Set the block number which was set in the alarm setting. Set the type of alarm you wish to monitor. Selectable type: History, Log, Active Select the alarm category you wish to display when monitoring. Set the number of alarms that are displayed in a single page. Page number will increase if the number of alarms exceeds the set amount.

17 wemx WebService Settings for Using Authorization Features You can use authorization featureswhen using the System Page. Go to [Project] [Common Settings] [Security]-[Password] and enable Use Security, and ID Setting, and set the ID and Password. After the above process, you will be directed to a log-in page when connecting to the webpage.

18 18 wemx WebService 3. MAKING AN USER PAGE WITH WEB SERVICE API User Page is a utilization of web servers provided by wemx Player after importing a user-made webpage. File formats such as HTML, CSS, JS, and Image are supported. The System Page simply uses preset structure to allow users to monitor/control specific addresses and check alarms, but the User Page allows users to configure the UI according to their tastes, monitor/control all addresses being used by HMX Projects, and check occurring alarms in real-time. In this section, we will look into how to configure a simple HMX Project and a webpage. 1. Install wemx Designer 2. Refer to Making a simple screen to create a project and add numeric display and string one by one.

19 wemx WebService 19 In the Numeric Display section, set the address to use [DISPLAY]USR Create an index.html file to convert the above HMX Project into a webpage. <!DOCTYPE html> <html xmlns=" <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>wemx Web Service Demo</title> </head> <body> <form> <table> <tr> <td>id_value:</td> <td id="id_value" width="125"> </td> <td> <input type="button" onclick="getdata()" width="50" value="get"> </td> </tr> </table> </form> </body> </html> You can use HTML to create a display like above, and add some touches with tools such as CSS. HTML examples from now on will add necessary lines on to the above format.

20 20 wemx WebService 4. USING WEB SERVICE API WITH JAVASCRIPT You can utilize a variety of methods when using wemx s Web Service API. Examples on Web Service User Page use an asynchronous method called AJAX to send requests and receive results. On this section, we will look into how AJAX work by using an example. AJAX is an acronym for Asynchronous JavaScript and XML. Which is an asynchronous communication method that uses JavaScript and XML. In recent years, JSON is mostly used instead of XML. The process of using AJAX for communication is as follows: 1. Create an object for a request. 2. Use JavaScript to make requests with the created object. 3. Send the request 4. Receive a result and process it through JavaScript. Most of our examples use the following structure. <!DOCTYPE html> <html xmlns=" <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>wemx Web Service Demo</title> </head> <body> <script type="text/javascript"> function getdata() { var xmlhttp = null; if (window.activexobject) { try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); catch(e1) { try { return new ActiveXObject("Microsoft.XMLHTTP"); catch(e1) { alert('giving up :( Cannot create an XMLHTTP instance'); return; else if (window.xmlhttprequest) { xmlhttp = new XMLHttpRequest(); if (xmlhttp == null) { return; var url = " + window.location.host + "/feeds/address"

21 wemx WebService 21 xmlhttp.open("get", url, true); + "?displayname=[display]usr00001" + "&type=uint16"; xmlhttp.onreadystatechange = function () { if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) { document.getelementbyid("id_value").innerhtml = decodeuricomponent(json["value"]); xmlhttp.send(); </script> <form> <table> <tr> <td>value:</td> <td id="id_value" width="125"> </td> <td> <input type="button" onclick="getdata()" width="50" value="get"> </td> </tr> </table> </form> </body> </html> Now, in the order of what was mentioned above, let s understand the process of AJAX step-by-step.

22 22 wemx WebService 4.1. Creating a Request Object In order to use AJAX, you must first create an object according to the web browser that uses XMLHttpRequest. var xmlhttp = null; if (window.activexobject) { try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); catch(e1) { try { return new ActiveXObject("Microsoft.XMLHTTP"); catch(e1) { alert('giving up :( Cannot create an XMLHTTP instance'); return; else if (window.xmlhttprequest) { xmlhttp = new XMLHttpRequest(); if (xmlhttp == null) { return; In case of Internet Explorer, ActiveXObjects must be used to create XMLHttpRequest, and other browsers can create with XMLHttpRequest.

23 wemx WebService Sending Requests Use the created xmlhttp object and open() function to send a request. xmlhttp.open("get", url, true); In the example, we used a GET as a first variable of open() function. This variable defines the request sending method. GET, PUT, POST, and DELETE can be used. For the second variable, input the address you wish to send the request to. For the third variable, define whether to use synchronistic (true), or asynchronistic (false) method. After above process is finished, use the send() function to send the request. xmlhttp.send(); In case of POST, send() function sends a parameter in order to send the formed data. In cases such as GET, PUT, DELETE that sendsparameters to addresses, parametersare not sent. In order to send the parameter, the data is converted to JSON before being sent. var request = []; var readjob1 = {; readjob1["job"] = "read"; readjob1["displayname"] = "[DISPLAY]USR00001"; readjob1["type"] = "uint16"; readjob1["count"] = 1; request[0] = readjob1; var json = {; json["jobs"] = request; xmlhttp.send(json.stringify(json)); With above code, JSON can be created as following: { "jobs": [ { ], "job": "read", "displayname": "[DISPLAY]USR00001", "type": "uint16", "count": 1

24 24 wemx WebService 4.3. Processing Responses In order to process responses after requests are sent with send() function, the process must take placein the moment the status of request object changes. For this to happen, request object defines a JavaScript function through onreadystatechange. xmlhttp.onreadystatechange = function () { if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) { document.getelementbyid("id_value").innerhtml = decodeuricomponent(json["value"]); The process happens when the value of readystate reaches 4. The state can have total of 5 values. 0: Before connection 1: Connected 2: Response standby status 3: Receiving response 4: Received After the point 4: Received, received JSON data will go through a syntax analysis, and the result will be displayed var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) { document.getelementbyid("id_value").innerhtml = decodeuricomponent(json["value"]);

25 wemx WebService WEB SERVICE API ADDRESS READING By using address readingapi, wemx Player s address can be read. There are 2 types of address reading. Single address reading, and consecutive address reading Single Address Reading On the example below, you can check the entered value on the datadisplay ([DISPLAY]USR00001) by connecting to the webpage through the Web Service API.

26 26 wemx WebService Index.html <!DOCTYPE html> <html xmlns=" <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>wemx Web Service Demo</title> </head> <body> <script type="text/javascript"> function getdata() { var xmlhttp = null; if (window.activexobject) { try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); catch(e1) { try { return new ActiveXObject("Microsoft.XMLHTTP"); catch(e1) { alert('giving up :( Cannot create an XMLHTTP instance'); return; else if (window.xmlhttprequest) { xmlhttp = new XMLHttpRequest(); if (xmlhttp == null) { return; var url = " + window.location.host + "/feeds/address" + "?displayname=[display]usr00001" + "&type=uint16"; xmlhttp.open("get", url, true); xmlhttp.onreadystatechange = function () { if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) { document.getelementbyid("id_value").innerhtml = decodeuricomponent(json["value"]); xmlhttp.send(); </script> <form> <table> <tr> <td>id_value:</td> <td id="id_value" width="125"> </td> <td> <input type="button" onclick="getdata()" width="50" value="get"> </td> </tr>

27 wemx WebService 27 </table> </form> </body> </html> HMX Project Installing wemx Designer and creating a screen Install wemx Designerto use the web service. Refer to Making a Simplescreen to create a project and add a numeric display and string one by one. In the Numeric Display section, set the address to use [DISPLAY]USR Writing index.html On requesting with JavaScript and processing the response data (JSON), refer to information below HTML <form> <table> <tr> <td>id_value:</td> <td id="id_value" width="125"> </td> <td> <input type="button" onclick="getdata()" width="50" value="get"> </td> </tr> </table> </form>

28 28 wemx WebService If an input button is clicked within HTML, getdata() JavaScript is called to assign the value received from the set address in place of id in id_value JavaScript Single Address Reading Example Method Example GET [Request] [Response] HTTP/ OK Content-Type: application/json; charset=utf-8; Keep-Alive: timeout=5, max=100 { "version": "1.0", "value": 999 This is an example of reading a single address. On detailed information on address API, you can refer to wemx- WebService-API document. All User Page examples contain codes for requestingurl and processing the received data (JSON) Request var url = " + window.location.host + "/feeds/address" + "?displayname=[display]usr00001" + "&type=uint16"; xmlhttp.open("get", url, true); Click the Get button on the webpage to request for the addresses value. Define the address that will be read as API s parameter as displayname. Type can be set to bit, int16, int32, uint16, uint32, or text. In case of text, count parameter must be added to input the number of bytes.in case of text, only UTF-8 encoding is supported Response xmlhttp.onreadystatechange = function () { if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) {

29 wemx WebService 29 decodeuricomponent(json["value"]); document.getelementbyid("id_value").innerhtml = Within HTML, assign the received address value (json[ value ])to theplace of id in id_value. When strings are received, use decodeuricomponent() function to decode & properly display the data.

30 30 wemx WebService 5.2. Consecutive Address Reading On the example below, values entered to data display([display]usr00001 ~ [DISPLAY]USR00003) are displayed in the webpage through the Web Service API Index.html <!DOCTYPE html> <html xmlns=" <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>wemx Web Service Demo</title> </head> <body> <script type="text/javascript"> function getdata() { var xmlhttp = null; if (window.activexobject) { try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); catch(e1) { try { return new ActiveXObject("Microsoft.XMLHTTP"); catch(e1) { alert('giving up :( Cannot create an XMLHTTP instance'); return;

31 wemx WebService 31 else if (window.xmlhttprequest) { xmlhttp = new XMLHttpRequest(); if (xmlhttp == null) { return; var url = " + window.location.host + "/feeds/address" + "?displayname=[display]usr00001" + "&type=uint16" + "&count=3"; xmlhttp.open("get", url, true); xmlhttp.onreadystatechange = function () { if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) { var values = json["values"] document.getelementbyid("id_value1").innerhtml = decodeuricomponent(values[0]); document.getelementbyid("id_value2").innerhtml = decodeuricomponent(values[1]); document.getelementbyid("id_value3").innerhtml = decodeuricomponent(values[2]); xmlhttp.send(); </script> <form> <table> <tr><td>id_value1:</td> <td id="id_value1" width="125"> </td></tr> <tr><td>id_value2:</td> <td id="id_value2" width="125"> </td></tr> <tr><td>id_value3:</td> <td id="id_value3" width="125"> </td></tr> <tr> <td><input type="button" onclick="getdata()" width="50" value="get"> </td> </tr> </table> </form> </body> </html> HMX Project Installing wemx Designer and creating a screen Install wemx Designerto use the web service.

32 32 wemx WebService Refer to Making a SimpleScreento create a project and add 3 numeric displays and 3 strings. Starting from the first numeric display, set the address to use ([DISPLAY]USR00001 ~ [DISPLAY]USR00003) in the correct order Writing index.html On requesting with JavaScript and processing the response data (JSON), refer to information below HTML <form> <table> <tr><td>id_value1:</td> <td id="id_value1" width="125"> </td></tr> <tr><td> id_value2:</td> <td id="id_value2" width="125"> </td></tr> <tr><td> id_value3:</td> <td id="id_value3" width="125"> </td></tr> <tr> <td><input type="button" onclick="getdata()" width="50" value="get"> </td> </tr> </table> </form> If an input button is clicked within HTML, getdata() JavaScript is called to assign the values received from the set address in place of id in id_value1, id_value2, id_value3.

33 wemx WebService 33 JavaScript Consecutive Address Reading Example Method Example GET [Request] [Response] HTTP/ OK Content-Type: application/json; charset=utf-8; { "version": "1.0", "displayname": "[DISPLAY]USR ", "type": "bit", "count": 3, "values": [999, 888, 777] This is an example of consecutive address reading. On detailed information on address API, you can refer to wemx-webservice-api document. All User Page examples contain codes for requesting URL and processing the received data (JSON) Request var url = " + window.location.host + "/feeds/address" + "?displayname=[display]usr00001" + "&type=uint16" + "&count=3"; xmlhttp.open("get", url, true); Click the Get button on the webpage to request for the addresses value. Define the address that will be read as API s parameter as displayname. Type can be set to bit, int16, int32, uint16, uint32, or text. In case of count parameter, enter the number of addresses that will be consecutively read Response xmlhttp.onreadystatechange = function () {

34 34 wemx WebService if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) { var values = json["values"] document.getelementbyid("id_value1").innerhtml = decodeuricomponent(values[0]); document.getelementbyid("id_value2").innerhtml = decodeuricomponent(values[1]); document.getelementbyid("id_value3").innerhtml = decodeuricomponent(values[2]); Within HTML, assign the received address value (var values = json[ value ]) to theplace of id in id_value1, id_value2, and id_value3. When strings are received, use decodeuricomponent() function to decode & properly display the data.

35 wemx WebService Configuring User Page Settings In order to upload the completed webpage to the web server, you have to configure theweb Server Settings in wemx Designer.Type in the IP address and Port to the webpage s address bar to use User Webpage.

36 36 wemx WebService 6. WEB SERVICE API ADDRESS WRITING By using addresswriting API, wemx Player s address can be written. There are 2 types of address writing. Single address writing, and consecutive address writing Single Address Writing On the example below, you can check the written value on the datadisplay ([DISPLAY]USR00001, [DISPLAY]USR00002) by connecting to the webpage through the Web Service API Index.html <!DOCTYPE html> <html xmlns=" <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>wemx Web Service Demo</title> </head> <body> <script type="text/javascript"> function setdata() { var xmlhttp = null; if (window.activexobject) { try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); catch(e1) { try { return new ActiveXObject("Microsoft.XMLHTTP");

37 wemx WebService 37 catch(e1) { alert('giving up :( Cannot create an XMLHTTP instance'); return; else if (window.xmlhttprequest) { xmlhttp = new XMLHttpRequest(); if (xmlhttp == null) { return; var value = document.getelementbyid("id_value1").value; var url = " + window.location.host + "/feeds/address" + "?displayname=[display]usr00001" + "&type=uint16" + "&value=" + value; //+ "&quite=true"; xmlhttp.open("put", url, true); xmlhttp.onreadystatechange = function () { if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) { document.getelementbyid("id_value1").innerhtml = decodeuricomponent(json["value"]); xmlhttp.send(); function settext() { var xmlhttp = null; if (window.activexobject) { try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); catch(e1) { try { return new ActiveXObject("Microsoft.XMLHTTP"); catch(e1) { alert('giving up :( Cannot create an XMLHTTP instance'); return; else if (window.xmlhttprequest) { xmlhttp = new XMLHttpRequest(); if (xmlhttp == null) { return; var value = document.getelementbyid("id_value2").value; var url = " + window.location.host + "/feeds/address" + "?displayname=[display]usr00002" + "&type=text";

38 38 wemx WebService xmlhttp.open("put", url, true); xmlhttp.onreadystatechange = function () { if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) { document.getelementbyid("id_value2").innerhtml = decodeuricomponent(json["value"]); var job = {; job["value"] = value; job["count"] = 10; xmlhttp.send(json.stringify(job)); </script> <form> <table> <tr> <td>value:</td> <td width="125"><input id="id_value1" type="number"></input></td> <td> <input type="button" onclick="setdata()" width="50" value="set"> </td> </tr> <tr> <td>value:</td> <td width="125"><input id="id_value2" type="text"></input></td> <td> <input type="button" onclick="settext()" width="50" value="set"> </td> </tr> </table> </form> </body> </html> HMX Project Installing wemx Designer and creating a screen 설치및화면만들기 Install wemx Designerto use the web service. one. Refer to Making a SimpleScreento create a project and add a numeric display, a string display and a string one by

39 wemx WebService 39 In the firstnumeric Display section, set the address to use ([DISPLAY]USR00001) In the second String Display section, set the address to use ([DISPLAY]USR00002)and the number of bytes (15) Writing index.html On requesting with JavaScript and processing the response data (JSON), refer to information below HTML <form> <table> <tr> <td>value:</td> <td width="125"><input id="id_value1" type="number"></input></td> <td> <input type="button" onclick="setdata()" width="50" value="set"> </td> </tr> <tr> <td>value:</td> <td width="125"><input id="id_value2" type="text"></input></td> <td>

40 40 wemx WebService <input type="button" onclick="settext()" width="50" value="set"> </td> </tr> </table> </form> If the input button is clicked within HTML, setdata() JavaScript is called to write the assigned value from the address, and received value will be written in the place of id in id_value. After that, if the input button on below is clicked, settext() JavaScript is called to write the assigned value from the address, and received value will be written in the place of id in id_value JavaScript Single Address Writing Example Metho d Exampl e PUT [Request] e=true [Response] HTTP/ OK Content-Type: application/json; charset=utf-8; { "version": "1.0", "displayname": "[DISPLAY]USR00001", "type": "uint16", "count": 1, "value": 333 This is an example of single address writing. On detailed information on address API, you can refer to wemx- WebService-API document. All User Page examples contain codes for requesting URL and processing the received data (JSON) Request var value = document.getelementbyid("id_value1").value;

41 wemx WebService 41 var url = " + window.location.host + "/feeds/address" + "?displayname=[display]usr00001" + "&type=uint16" + "&value=" + value; //+ "&quite=true"; xmlhttp.open("put", url, true); Click the Set button on the webpage to request the address for writing a value. In case of strings, the intended string and address must be converted to JSON, and sent with the request. Click the second Set button on the webpage to request the address for writing strings. var value = document.getelementbyid("id_value2").value; var url = " + window.location.host + "/feeds/address" + "?displayname=[display]usr00002" + "&type=text"; xmlhttp.open("put", url, true); Create JSON like below to send it with the request. var job = {; job["value"] = value; job["count"] = 10; xmlhttp.send(json.stringify(job)); Define the address that will be recognized as API s parameter as displayname. Type can be set to bit, int16, int32, uint16, uint32, or text. In case of text, count parameter must be added to input the number of bytes.in case of text, only UTF-8 encoding is supported. Also, if the value of quite is set to true, only successfully written result values will be received Response xmlhttp.onreadystatechange = function () { if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) { document.getelementbyid("id_value1").innerhtml = decodeuricomponent(json["value"]); Within HTML, assign the received address value ( json[ value ]) to theplace of id in id_value1. When strings are received, use decodeuricomponent() function to decode & properly display the data.

42 42 wemx WebService 6.2. Consecutive Address Writing On the example below, the data display([display]usr00001 ~ [DISPLAY]USR00003) displays written valuesin the webpage through the Web Service API Index.html <!DOCTYPE html> <html xmlns=" <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>wemx Web Service Demo</title> </head> <body> <script type="text/javascript"> function setdata() { var xmlhttp = null; if (window.activexobject) { try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); catch(e1) { try { return new ActiveXObject("Microsoft.XMLHTTP"); catch(e1) { alert('giving up :( Cannot create an XMLHTTP instance'); return;

43 wemx WebService 43 else if (window.xmlhttprequest) { xmlhttp = new XMLHttpRequest(); if (xmlhttp == null) { return; var url = " + window.location.host + "/feeds/address" + "?displayname=[display]usr00001" + "&type=uint16" + "&count=3" + "&values=[" + document.getelementbyid("id_value1").value + "," + document.getelementbyid("id_value2").value + "," + document.getelementbyid("id_value3").value + "]"; xmlhttp.open("put", url, true); xmlhttp.onreadystatechange = function () { if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); console.log(json); if (json!= undefined && json["error"] == undefined) { var values = json["values"] console.log(values[0]) document.getelementbyid("id_value1").innerhtml = decodeuricomponent(values[0]); document.getelementbyid("id_value2").innerhtml = decodeuricomponent(values[1]); document.getelementbyid("id_value3").innerhtml = decodeuricomponent(values[2]); xmlhttp.send(); </script> <form> <table> <tr><td>id_value1:</td> <td width="125"><input id="id_value1" type="number"></input></td></tr> <tr><td>id_value2:</td> <td width="125"><input id="id_value2" type="number"></input></td></tr> <tr><td>id_value3:</td> <td width="125"><input id="id_value3" type="number"></input></td></tr> <tr> <td><input type="button" onclick="setdata()" width="50" value="set"> </td> </tr> </table> </form> </body> </html>

44 44 wemx WebService HMX Project Installing wemx Designer and creating a screen Install wemx Designerto use the web service. Refer to Making a SimpleScreen to create a project and add 3 numeric displays and 3 strings. Starting from the first numeric display, set the address to use ([DISPLAY]USR00001 ~ [DISPLAY]USR00003) in the correct order Writing index.html On requesting with JavaScript and processing the response data (JSON), refer to information below HTML <form> <table> <tr><td>id_value1:</td> <td id="id_value1" width="125"> </td></tr> <tr><td>id_value1:</td> <td id="id_value2" width="125"> </td></tr>

45 wemx WebService 45 <tr><td>id_value3:</td> <td id="id_value3" width="125"> </td></tr> <tr> <td><input type="button" onclick="setdata()" width="50" value="get"> </td> </tr> </table> </form> If an input button is clicked within HTML, setdata() JavaScript is called to write received values to the set addresses webpage, and assign the received values in place of id in id_value1, id_value2, id_value JavaScript Consecutive Address Writing Example Metho d Exampl e PUT [Request] =[555,666,888] [Response] HTTP/ OK Content-Type: application/json; charset=utf-8; { "version": "1.0", "displayname": "[DISPLAY]USR00000", "count": 3, "values": [555, 666, 888] This is an example of consecutive address writing. On detailed information on address API, you can refer to wemx-webservice-api document. All User Page examples contain codes for requesting URL and processing the received data (JSON) Request var url = " + window.location.host + "/feeds/address"

46 46 wemx WebService xmlhttp.open("put", url, true); + "?displayname=[display]usr00001" + "&type=uint16" + "&count=3" + "&values=[" + document.getelementbyid("id_value1").value + "," + document.getelementbyid("id_value2").value + "," + document.getelementbyid("id_value3").value + "]"; Click the Set button on the webpage to request for the addresses values to be written. With above method, write values on consecutive addresses. Define the address that will be read as API s parameter as displayname. Type can be set to bit, int16, int32, uint16, uint32, or text. In case of count parameter, enter the number of addresses that will be consecutively read. Place the values between [, and ] to list them Response xmlhttp.onreadystatechange = function () { if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) { var values = json["values"] document.getelementbyid("id_value1").innerhtml = decodeuricomponent(values[0]); document.getelementbyid("id_value2").innerhtml = decodeuricomponent(values[1]); document.getelementbyid("id_value3").innerhtml = decodeuricomponent(values[2]); Within HTML, assign the received address value (var values = json[ value ]) to theplace of id in id_value1, id_value2, and id_value3. When strings are received, use decodeuricomponent() function to decode & properly display the data.

47 wemx WebService Configuring User Page Settings In order to upload the completed webpage to the web server, you have to configure theweb Server Settings in wemx Designer. Type in the IP address and Port to the webpage s address bar to use User Webpage.

48 48 wemx WebService 7. WEB SERVICE API READING/WRITING MULTIPLE ADDRESSES AT ONCE By using an API that reads/writes multiple addresses, you can read/write from wemx s multiple addresses at once. On the example below, you can display the written values on the datadisplay ([DISPLAY]USR00001) and string display ([DISPLAY]USR00002) to the webpageby using the Web Service API. Values that are entered in the webpage are written on data display ([DISPLAY]USR00018), and string display (DISPLAY)USR00019) Index.html <!DOCTYPE html> <html xmlns=" <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>wemx Web Service Demo</title> </head> <body> <script type="text/javascript"> function getdata() {

49 wemx WebService 49 var xmlhttp = null; if (window.activexobject) { try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); catch(e1) { try { return new ActiveXObject("Microsoft.XMLHTTP"); catch(e1) { alert('giving up :( Cannot create an XMLHTTP instance'); return; else if (window.xmlhttprequest) { xmlhttp = new XMLHttpRequest(); if (xmlhttp == null) { return; var url = " + window.location.host + "/feeds/address"; xmlhttp.open("post", url, true); xmlhttp.onreadystatechange = function () { if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) { var values = json["results"] document.getelementbyid("id_value1").innerhtml = decodeuricomponent(values[0].value); document.getelementbyid("id_value2").innerhtml = decodeuricomponent(values[1].values); document.getelementbyid("id_value3").innerhtml = decodeuricomponent(values[2].value); document.getelementbyid("id_value4").innerhtml = decodeuricomponent(values[3].value); var request = []; var readjob1 = {; readjob1["job"] = "read"; readjob1["displayname"] = "[DISPLAY]USR00001"; readjob1["type"] = "uint16"; readjob1["count"] = 1; request[0] = readjob1; var readjob2 = { readjob2["job"] = "read"; readjob2["displayname"] = "[DISPLAY]USR00002"; readjob2["type"] = "text"; readjob2["count"] = 15; request[1] = readjob2; var writejob1 = { writejob1["job"] = "write"; writejob1["displayname"] = "[DISPLAY]USR00018"; writejob1["type"] = "uint16"; writejob1["count"] = 1; writejob1["value"] = encodeuricomponent(document.getelementbyid("id_value3").value); request[2] = writejob1;

50 50 wemx WebService var writejob2 = { writejob2["job"] = "write"; writejob2["displayname"] = "[DISPLAY]USR00019"; writejob2["type"] = "text"; writejob2["count"] = 15; writejob2["value"] = encodeuricomponent(document.getelementbyid("id_value4").value); request[3] = writejob2; var json = {; json["jobs"] = request; xmlhttp.send(json.stringify(json)); </script> <form> <table> <tr><td>id_value1:</td> <td id="id_value1" width="125"> </td></tr> <tr><td>id_value2:</td> <td id="id_value2" width="125"> </td></tr> <tr><td>id_value3:</td> <td width="125"><input id="id_value3" type="number"></input></td></tr> <tr><td>id_value4:</td> <td width="125"><input id="id_value4" type="text"></input></td></tr> <tr><td><input type="button" onclick="getdata()" width="50" value="get/set"></td></tr> </table> </form> </body> </html>

51 wemx WebService HMX Project Installing wemx Designer and creating a screen Install wemx Designerto use the web service. Refer to Making asimplescreen to create a project and add each of four numeric displays, string displays and strings. In the firstnumeric Display section, set the address to use ([DISPLAY]USR00001) In the second String Display section, set the address to use ([DISPLAY]USR00002) and the number of bytes (15).

52 52 wemx WebService In thethirdnumeric Display section, set the address to use ([DISPLAY]USR00018). Be sure to use [DISPLAY]USR00018.Be sure to use [DISPLAY]USR00018, because the second String Display is using 15 bytes. In thefourth Numeric Display section, set the address to use ([DISPLAY]USR00019)and byte number (15).

53 wemx WebService Writing Index.html On requesting with JavaScript and processing the response data (JSON), refer to information below HTML <form> <table> <tr><td>id_value1:</td> <td id="id_value1" width="125"> </td></tr> <tr><td>id_value2:</td> <td id="id_value2" width="125"> </td></tr> <tr><td>id_value3:</td> <td width="125"><input id="id_value3" type="number"></input></td></tr> <tr><td>id_value4:</td> <td width="125"><input id="id_value4" type="text"></input></td></tr> <tr><td><input type="button" onclick="getdata()" width="50" value="get/set"></td></tr> </table> </form> If an input button is clicked within HTML, getdata() JavaScript is called to react as defined from set addresses. Received values from addresses will be written in place of id in id_value1, id_value2, id_value3, and id_value JavaScript Multiple Address Handling Example Method Example POST [Request] Content-Type: application/json; charset=utf-8 POST { "jobs": [ {, { "job":"read", "displayname":"[display]usr00001", "type":"uint16", "count":1

54 54 wemx WebService ], {, { "job":"read", "displayname":"[display]usr00002", "type":"text", "count":15 "job":"write", "displayname":"[display]usr00018", "type":"uint16", "count":1, "value":"888" "job":"write", "displayname":"[display]usr00019", "type":"text", "count":15, "value":"%ec%95%88%eb%85%95" [Response] HTTP/ OK Content-Type: application/json; charset=utf-8; { "version":"1.0", "results": [ {, { "job":"read", "displayname":"[display]usr00001", "type":"uint16", "count":1, "value":777

55 wemx WebService 55 ], {, { "job":"read", "displayname":"[display]usr00002", "type":"text", "count":15, "values":["hello"] "job":"write", "displayname":"[display]usr00018", "type":"uint16", "count":1 "job":"write", "displayname":"[display]usr00019", "type":"text", "count":15, "value":"%ec%95%88%eb%85%95" This is an example of address multi-process. On detailed information on address API, you can refer to wemx- WebService-API document. All User Page examples contain codes for requesting URL and processing the received data (JSON) Request var url = " + window.location.host + "/feeds/address"; xmlhttp.open("post", url, true); Click the Get/Set button on the webpage to request for the addresses actions. Request for Multiple action will be made as a POST method. In order to make the request, make each addresses action into JSON and send them var request = [];

56 56 wemx WebService var readjob1 = {; readjob1["job"] = "read"; readjob1["displayname"] = "[DISPLAY]USR00001"; readjob1["type"] = "uint16"; readjob1["count"] = 1; request[0] = readjob1; var readjob2 = { readjob2["job"] = "read"; readjob2["displayname"] = "[DISPLAY]USR00002"; readjob2["type"] = "text"; readjob2["count"] = 15; request[1] = readjob2; var writejob1 = { writejob1["job"] = "write"; writejob1["displayname"] = "[DISPLAY]USR00018"; writejob1["type"] = "uint16"; writejob1["count"] = 1; writejob1["value"] = encodeuricomponent(document.getelementbyid("id_value3").value); request[2] = writejob1; var writejob2 = { writejob2["job"] = "write"; writejob2["displayname"] = "[DISPLAY]USR00019"; writejob2["type"] = "text"; writejob2["count"] = 15; writejob2["value"] = encodeuricomponent(document.getelementbyid("id_value4").value); request[3] = writejob2; var json = {; json["jobs"] = request; xmlhttp.send(json.stringify(json)); Response xmlhttp.onreadystatechange = function () { if (xmlhttp.readystate == 4) { if (xmlhttp.status == 200) { var json = JSON.parse(xmlhttp.responseText); if (json!= undefined && json["error"] == undefined) { var values = json["results"] document.getelementbyid("id_value1").innerhtml = decodeuricomponent(values[0].value); document.getelementbyid("id_value2").innerhtml = decodeuricomponent(values[1].values); document.getelementbyid("id_value3").innerhtml = decodeuricomponent(values[2].value); document.getelementbyid("id_value4").innerhtml = decodeuricomponent(values[3].value); Within HTML, assign the received address value (var values = json[ values ]) to theplace of id in id_value1, id_value2, id_value3, and id_value4. When strings are received, use decodeuricomponent() function to decode & properly display the data.

57 wemx WebService Configuring User Page Settings In order to upload the completed webpage to the web server, you have to configure theweb Server Settings in wemx Designer. Type in the IP address and Port to the webpage s address bar to use User Webpage.

58 58 wemx WebService 8. WEB SERVICE API ALARMS PAGING By using the alarm Paging API, you can import the list of occurring alarms from the wemx Player to the webpage. Alarms types are as follows: History Alarm, Active Alarm, and Log Alarm. Below figure shows an example of importing History Alarms that occurred in wemx Player.

59 wemx WebService index.html <!DOCTYPE html> <html xmlns=" <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>wemx Web Service Demo</title> </head> <body> <script type="text/javascript"> window.onload = function (){ loadalarmreportdata(); timer = setinterval(loadalarmreportdata, 1000); window.onunload = function (){ clearinterval(timer); function loadalarmreportdata(){ var xmlhttp = null; if (window.activexobject){ try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); catch(e1){ try { return new ActiveXObject("Microsoft.XMLHTTP"); catch(e1){ alert('giving up :( Cannot create an XMLHTTP instance'); return; else if (window.xmlhttprequest){ xmlhttp = new XMLHttpRequest(); if (xmlhttp == null){ return; time.tostring(); var time = new Date().getTime(); var url = " + window.location.host +"/feeds/alarm/history?block=1&time=" + xmlhttp.open("get", url, true); xmlhttp.onreadystatechange = function (){ if (xmlhttp.readystate == 4){ console.log("xmlhttp.status : " + xmlhttp.status); if (xmlhttp.status == 200){ var json = JSON.parse(xmlhttp.responseText); if (json == undefined json["count"] == undefined){ return; document.getelementbyid("listcontainer"); var listcontainer =

60 60 wemx WebService while (listcontainer.firstchild) { listcontainer.removechild(listcontainer.firstchild); var numberoflistitems = json["count"]; var results = json["results"]; for (var i = 0 ; i < numberoflistitems ; ++i) { var listelement = document.createelement("tr"); listcontainer.appendchild(listelement); var listitem = document.createelement("td"); listitem.innerhtml = results[i].index; listelement.appendchild(listitem); listitem = document.createelement("td"); listitem.innerhtml = results[i].id; listelement.appendchild(listitem); decodeuricomponent(results[i].message); listitem = document.createelement("td"); listitem.innerhtml = listelement.appendchild(listitem); listitem = document.createelement("td"); listitem.innerhtml = results[i].status; listelement.appendchild(listitem); listitem = document.createelement("td"); listitem.innerhtml = results[i].triggered; listelement.appendchild(listitem); listitem = document.createelement("td"); listitem.innerhtml = results[i].acknowledged; listelement.appendchild(listitem); listitem = document.createelement("td"); listitem.innerhtml = results[i].recovered; listelement.appendchild(listitem); listitem = document.createelement("td"); listitem.innerhtml = results[i].count; listelement.appendchild(listitem); </script> xmlhttp.send(); listitem = document.createelement("td"); listitem.innerhtml = results[i].level; listelement.appendchild(listitem); <form action="" method="post"> <table> <tr> <th>index</th> <th>id</th> <th>message</th>

61 wemx WebService 61 </form> </body> </html> </table> <th>status</th> <th>triggered</th> <th>ack</th> <th>recovered</th> <th>count</th> <th>level</th> </tr> <tbody id="listcontainer"></tbody>

62 62 wemx WebService 8.2. HMX Project Installing wemx Designer and creating a screen Install wemx Designer to use the web service. Prepare a HMX Project with alarm features. Set the alarms in [Project] [Common Settings] [Alarm] Create an Alarm display in [Part] [Alarm].

63 wemx WebService Writing index.html HTML <form action="" method="post"> <table> <tr> </form> </table> <th>index</th> <th>id</th> <th>message</th> <th>status</th> <th>triggered</th> <th>ack</th> <th>recovered</th> <th>count</th> <th>level</th> </tr> <tbody id="listcontainer"></tbody> Create a table to import a list of alarms. In HTML, basic structure of the Table is as follows: Java Script Initializing window.onload = function () { loadalarmreportdata(); timer = setinterval(loadalarmreportdata, 1000); When the webpage is loaded, call theloadalarmreportdata() function. Set the Timer to call the function every 1,000ms, and refresh the list of alarms.

64 64 wemx WebService Terminating window.onunload = function () { clearinterval(timer); Disable the Timer when closing the webpage Example of Reading (Paging) History Alarms Method Example GET [Request] [Response] HTTP/ OK Content-Type: application/json; charset=utf-8; { "version": "1.0", "block": 1, "type": "history", // log, active "total": 100, "count": 10, "results": [ { "index": 0, "id": 1, "message": "Temperature is too high.", "status": "triggered", "triggered": " T13:15:43Z", "acknowledged": null "recovered": null "count": 1 "level": 0, //... ] On detailed information on parameters used byalarm API and alarm API, you can refer to wemx-webservice- API document. All User Page examples contain codes for requesting URL and processing the received data (JSON).

65 wemx WebService Requesting var time = new Date().getTime(); var url = " + window.location.host +"/feeds/alarm/history?block=1&time=" + time.tostring(); xmlhttp.open("get", url, true); Request for the whole list of alarms on the History Alarm Block 1. By using the filters, which is API s parameter, you can only request for necessary information. startindex, and count can be used to set the number of alarm lists when importing them Response var numberoflistitems = json["count"]; var results = json["results"]; for (var i = 0 ; i < numberoflistitems ; ++i){ var listitem = document.createelement("td"); listitem.innerhtml = results[i].index; listelement.appendchild(listitem); By utilizing the received data, form the table by repeatedly going through the alarm list ( json[ count ]) times. Add the received values to the Table (id, message, ack, etc.). In case of message, use decodeuricomponent() function to decode & properly display the data.

66 66 wemx WebService 8.4. Configuring User Page Settings In order to upload the completed webpage to the web server, you have to configure theweb Server Settings in wemx Designer. Type in the IP address and Port to the webpage s address bar to use User Webpage.

67 wemx WebService WEB SERVICE API ALARMCHECK/DELETE By using the Alarm Check/Delete API, you can check the occurred Alarms in wemx Player, or delete the list of Alarms. History Alarm, Log Alarm, and Activate Alarm can be checked/deleted one by one, or all at once. The figure below is an example of checking all occurred History Alarm, and deleting the list. Checking alarms

XMLHttpRequest. CS144: Web Applications

XMLHttpRequest. CS144: Web Applications XMLHttpRequest http://oak.cs.ucla.edu/cs144/examples/google-suggest.html Q: What is going on behind the scene? What events does it monitor? What does it do when

More information

AJAX. Introduction. AJAX: Asynchronous JavaScript and XML

AJAX. Introduction. AJAX: Asynchronous JavaScript and XML AJAX 1 2 Introduction AJAX: Asynchronous JavaScript and XML Popular in 2005 by Google Create interactive web applications Exchange small amounts of data with the server behind the scenes No need to reload

More information

AJAX. Lecture 26. Robb T. Koether. Fri, Mar 21, Hampden-Sydney College. Robb T. Koether (Hampden-Sydney College) AJAX Fri, Mar 21, / 16

AJAX. Lecture 26. Robb T. Koether. Fri, Mar 21, Hampden-Sydney College. Robb T. Koether (Hampden-Sydney College) AJAX Fri, Mar 21, / 16 AJAX Lecture 26 Robb T. Koether Hampden-Sydney College Fri, Mar 21, 2014 Robb T. Koether (Hampden-Sydney College) AJAX Fri, Mar 21, 2014 1 / 16 1 AJAX 2 Http Requests 3 Request States 4 Handling the Response

More information

Web Application Security

Web Application Security Web Application Security Rajendra Kachhwaha rajendra1983@gmail.com September 23, 2015 Lecture 13: 1/ 18 Outline Introduction to AJAX: 1 What is AJAX 2 Why & When use AJAX 3 What is an AJAX Web Application

More information

AJAX and PHP AJAX. Christian Wenz,

AJAX and PHP AJAX. Christian Wenz, AJAX and PHP Christian Wenz, AJAX A Dutch soccer team A cleaner Two characters from Iliad A city in Canada A mountain in Colorado... Asynchronous JavaScript + XML 1 1 What is AJAX?

More information

AJAX(Asynchronous Javascript + XML) Creating client-side dynamic Web pages

AJAX(Asynchronous Javascript + XML) Creating client-side dynamic Web pages AJAX(Asynchronous Javascript + XML) Creating client-side dynamic Web pages AJAX = Asynchronous JavaScript and XML.AJAX is not a new programming language, but a new way to use existing standards. AJAX is

More information

Phase I. Initialization. Research. Code Review. Troubleshooting. Login.aspx. M3THOD, LLC Project Documentation

Phase I. Initialization. Research. Code Review. Troubleshooting. Login.aspx. M3THOD, LLC Project Documentation Client: J.H. Cohn Project: QlikView Login & Deployment Date: May 16, 2011 Phase I Initialization Research Obtained credentials for connecting to the DMZ server. Successfully connected and located the file

More information

A.A. 2008/09. What is Ajax?

A.A. 2008/09. What is Ajax? Internet t Software Technologies AJAX IMCNE A.A. 2008/09 Gabriele Cecchetti What is Ajax? AJAX stands for Asynchronous JavaScript And XML. AJAX is a type of programming made popular in 2005 by Google (with

More information

A synchronous J avascript A nd X ml

A synchronous J avascript A nd X ml A synchronous J avascript A nd X ml The problem AJAX solves: How to put data from the server onto a web page, without loading a new page or reloading the existing page. Ajax is the concept of combining

More information

Use of PHP for DB Connection. Middle and Information Tier

Use of PHP for DB Connection. Middle and Information Tier Client: UI HTML, JavaScript, CSS, XML Use of PHP for DB Connection Middle Get all books with keyword web programming PHP Format the output, i.e., data returned from the DB SQL DB Query Access/MySQL 1 2

More information

CITS1231 Web Technologies. Ajax and Web 2.0 Turning clunky website into interactive mashups

CITS1231 Web Technologies. Ajax and Web 2.0 Turning clunky website into interactive mashups CITS1231 Web Technologies Ajax and Web 2.0 Turning clunky website into interactive mashups What is Ajax? Shorthand for Asynchronous JavaScript and XML. Coined by Jesse James Garrett of Adaptive Path. Helps

More information

Auto Start Analyzer after AppPool Recycle by IIS

Auto Start Analyzer after AppPool Recycle by IIS Auto Start Analyzer after AppPool Recycle by IIS Background It is often sites running on the Internet Information Service (IIS) will get recycled by IIS service at a set interval (nightly for example).

More information

AJAX. Ajax: Asynchronous JavaScript and XML *

AJAX. Ajax: Asynchronous JavaScript and XML * AJAX Ajax: Asynchronous JavaScript and XML * AJAX is a developer's dream, because you can: Read data from a web server - after the page has loaded Update a web page without reloading the page Send data

More information

Contents. Demos folder: Demos\14-Ajax. 1. Overview of Ajax. 2. Using Ajax directly. 3. jquery and Ajax. 4. Consuming RESTful services

Contents. Demos folder: Demos\14-Ajax. 1. Overview of Ajax. 2. Using Ajax directly. 3. jquery and Ajax. 4. Consuming RESTful services Ajax Contents 1. Overview of Ajax 2. Using Ajax directly 3. jquery and Ajax 4. Consuming RESTful services Demos folder: Demos\14-Ajax 2 1. Overview of Ajax What is Ajax? Traditional Web applications Ajax

More information

WebApp development. Outline. Web app structure. HTML basics. 1. Fundamentals of a web app / website. Tiberiu Vilcu

WebApp development. Outline. Web app structure. HTML basics. 1. Fundamentals of a web app / website. Tiberiu Vilcu Outline WebApp development Tiberiu Vilcu Prepared for EECS 411 Sugih Jamin 20 September 2017 1 2 Web app structure HTML basics Back-end: Web server Database / data storage Front-end: HTML page CSS JavaScript

More information

jmaki Overview Sang Shin Java Technology Architect Sun Microsystems, Inc.

jmaki Overview Sang Shin Java Technology Architect Sun Microsystems, Inc. jmaki Overview Sang Shin Java Technology Architect Sun Microsystems, Inc. sang.shin@sun.com www.javapassion.com Agenda What is and Why jmaki? jmaki widgets Using jmaki widget - List widget What makes up

More information

Introduction to Ajax

Introduction to Ajax Introduction to Ajax with Bob Cozzi What is AJAX? Asynchronous JavaScript and XML A J a X Asynchronous data retrieval using the XMLHttpRequest object from JavaScript Data is retrieved from the server as

More information

Use of PHP for DB Connection. Middle and Information Tier. Middle and Information Tier

Use of PHP for DB Connection. Middle and Information Tier. Middle and Information Tier Use of PHP for DB Connection 1 2 Middle and Information Tier PHP: built in library functions for interfacing with the mysql database management system $id = mysqli_connect(string hostname, string username,

More information

EECS1012. Net-centric Introduction to Computing. Lecture "Putting It All Together" and a little bit of AJAX

EECS1012. Net-centric Introduction to Computing. Lecture Putting It All Together and a little bit of AJAX EECS 1012 Net-centric Introduction to Computing Lecture "Putting It All Together" and a little bit of AJAX Acknowledgements The contents of these slides may be modified and redistributed, please give appropriate

More information

An Introduction to AJAX. By : I. Moamin Abughazaleh

An Introduction to AJAX. By : I. Moamin Abughazaleh An Introduction to AJAX By : I. Moamin Abughazaleh How HTTP works? Page 2 / 25 Classical HTTP Process Page 3 / 25 1. The visitor requests a page 2. The server send the entire HTML, CSS and Javascript code

More information

Ajax Ajax Ajax = Asynchronous JavaScript and XML Using a set of methods built in to JavaScript to transfer data between the browser and a server in the background Reduces the amount of data that must be

More information

Hyperlinks, Tables, Forms and Frameworks

Hyperlinks, Tables, Forms and Frameworks Hyperlinks, Tables, Forms and Frameworks Web Authoring and Design Benjamin Kenwright Outline Review Previous Material HTML Tables, Forms and Frameworks Summary Review/Discussion Email? Did everyone get

More information

AJAX. Lab. de Bases de Dados e Aplicações Web MIEIC, FEUP 2010/11. Sérgio Nunes

AJAX. Lab. de Bases de Dados e Aplicações Web MIEIC, FEUP 2010/11. Sérgio Nunes AJAX Lab. de Bases de Dados e Aplicações Web MIEIC, FEUP 2010/11 Sérgio Nunes Server calls from web pages using JavaScript call HTTP data Motivation The traditional request-response cycle in web applications

More information

Ajax. Ronald J. Glotzbach

Ajax. Ronald J. Glotzbach Ajax Ronald J. Glotzbach What is AJAX? Asynchronous JavaScript and XML Ajax is not a technology Ajax mixes well known programming techniques in an uncommon way Enables web builders to create more appealing

More information

Lesson 12: JavaScript and AJAX

Lesson 12: JavaScript and AJAX Lesson 12: JavaScript and AJAX Objectives Define fundamental AJAX elements and procedures Diagram common interactions among JavaScript, XML and XHTML Identify key XML structures and restrictions in relation

More information

JavaScript + PHP AJAX. Costantino Pistagna

JavaScript + PHP AJAX. Costantino Pistagna JavaScript + PHP AJAX Costantino Pistagna What s is Ajax? AJAX is not a new programming language It s a new technique for better and faster web applications. JavaScript can communicate

More information

Web Programming/Scripting: PHP and AJAX Refresher

Web Programming/Scripting: PHP and AJAX Refresher CS 312 Internet Concepts Web Programming/Scripting: PHP and AJAX Refresher Dr. Michele Weigle Department of Computer Science Old Dominion University mweigle@cs.odu.edu http://www.cs.odu.edu/~mweigle/cs312-f11

More information

Ajax Ajax Ajax = Asynchronous JavaScript and XML Using a set of methods built in to JavaScript to transfer data between the browser and a server in the background Reduces the amount of data that must be

More information

Ajax- XMLHttpResponse. Returns a value such as ArrayBuffer, Blob, Document, JavaScript object, or a DOMString, based on the value of

Ajax- XMLHttpResponse. Returns a value such as ArrayBuffer, Blob, Document, JavaScript object, or a DOMString, based on the value of Ajax- XMLHttpResponse XMLHttpResponse - A Read only field Returns a value such as ArrayBuffer, Blob, Document, JavaScript object, or a DOMString, based on the value of XMLHttpRequest.responseType. This

More information

AJAX Programming Chris Seddon

AJAX Programming Chris Seddon AJAX Programming Chris Seddon seddon-software@keme.co.uk 2000-12 CRS Enterprises Ltd 1 2000-12 CRS Enterprises Ltd 2 What is Ajax? "Asynchronous JavaScript and XML" Originally described in 2005 by Jesse

More information

2/6/2012. Rich Internet Applications. What is Ajax? Defining AJAX. Asynchronous JavaScript and XML Term coined in 2005 by Jesse James Garrett

2/6/2012. Rich Internet Applications. What is Ajax? Defining AJAX. Asynchronous JavaScript and XML Term coined in 2005 by Jesse James Garrett What is Ajax? Asynchronous JavaScript and XML Term coined in 2005 by Jesse James Garrett http://www.adaptivepath.com/ideas/essays/archives /000385.php Ajax isn t really new, and isn t a single technology

More information

ecommerce in OpenEdge 10

ecommerce in OpenEdge 10 1 INNOV-2: Building ecommerce solutions in OpenEdge 10 jrb@bravepoint.com ecommerce in OpenEdge 10 Introductions Senior Product Architect Using Progress since 1987 BravePoint, Inc jrb@bravepoint.com 2

More information

CSE 130 Programming Language Principles & Paradigms Lecture # 20. Chapter 13 Concurrency. + AJAX Discussion

CSE 130 Programming Language Principles & Paradigms Lecture # 20. Chapter 13 Concurrency. + AJAX Discussion Chapter 13 Concurrency + AJAX Discussion Introduction Concurrency can occur at four levels: Machine instruction level (Processor) High-level language statement level Unit level Program level (OS) Because

More information

c360 Web Connect Configuration Guide Microsoft Dynamics CRM 2011 compatible c360 Solutions, Inc. c360 Solutions

c360 Web Connect Configuration Guide Microsoft Dynamics CRM 2011 compatible c360 Solutions, Inc.   c360 Solutions c360 Web Connect Configuration Guide Microsoft Dynamics CRM 2011 compatible c360 Solutions, Inc. www.c360.com c360 Solutions Contents Overview... 3 Web Connect Configuration... 4 Implementing Web Connect...

More information

Table of Contents. 1. A Quick Overview of Web Development...1 EVALUATION COPY

Table of Contents. 1. A Quick Overview of Web Development...1 EVALUATION COPY Table of Contents Table of Contents 1. A Quick Overview of Web Development...1 Client-side Programming...1 HTML...1 Cascading Style Sheets...1 JavaScript...1 Dynamic HTML...1 Ajax...1 Adobe Flash...2 Server-side

More information

AJAX: The Basics CISC 282 March 25, 2014

AJAX: The Basics CISC 282 March 25, 2014 AJAX: The Basics CISC 282 March 25, 2014 Synchronous Communication User and server take turns waiting User requests pages while browsing Waits for server to respond Waits for the page to load in the browser

More information

Wed 02 Nov :01:06 AM EST modpow.html

Wed 02 Nov :01:06 AM EST modpow.html Wed 02 Nov 2005 02:01:06 AM EST modpow.html

More information

/ Introduction to XML

/   Introduction to XML Introduction to XML XML stands for Extensible Markup Language. It is a text-based markup language derived from Standard Generalized Markup Language (SGML). XML tags identify the data and are used to store

More information

AJAX: Introduction CISC 282 November 27, 2018

AJAX: Introduction CISC 282 November 27, 2018 AJAX: Introduction CISC 282 November 27, 2018 Synchronous Communication User and server take turns waiting User requests pages while browsing Waits for server to respond Waits for the page to load in the

More information

Session 11. Ajax. Reading & Reference

Session 11. Ajax. Reading & Reference Session 11 Ajax Reference XMLHttpRequest object Reading & Reference en.wikipedia.org/wiki/xmlhttprequest Specification developer.mozilla.org/en-us/docs/web/api/xmlhttprequest JavaScript (6th Edition) by

More information

CSC 415/515 PROJECT 3 JAVASCRIPT CONCENTRATION GAME. 1. Introduction

CSC 415/515 PROJECT 3 JAVASCRIPT CONCENTRATION GAME. 1. Introduction CSC 415/515 PROJECT 3 JAVASCRIPT CONCENTRATION GAME PROF. GODFREY MUGANDA DEPT OF COMPUTER SCIENCE 1. Introduction Using JavaScript, write a game that will help people work on their concentration and memory

More information

Front-end / Back-end. How does your application communicate with services?

Front-end / Back-end. How does your application communicate with services? Front-end / Back-end How does your application communicate with services? Mission Help students implement a mock-up that actually gets (and sometimes stores) data using some kind of external service. The

More information

TIME SCHEDULE MODULE TOPICS PERIODS. HTML Document Object Model (DOM) and javascript Object Notation (JSON)

TIME SCHEDULE MODULE TOPICS PERIODS. HTML Document Object Model (DOM) and javascript Object Notation (JSON) COURSE TITLE : ADVANCED WEB DESIGN COURSE CODE : 5262 COURSE CATEGORY : A PERIODS/WEEK : 4 PERIODS/SEMESTER : 52 CREDITS : 4 TIME SCHEDULE MODULE TOPICS PERIODS 1 HTML Document Object Model (DOM) and javascript

More information

Session 18. jquery - Ajax. Reference. Tutorials. jquery Methods. Session 18 jquery and Ajax 10/31/ Robert Kelly,

Session 18. jquery - Ajax. Reference. Tutorials. jquery Methods. Session 18 jquery and Ajax 10/31/ Robert Kelly, Session 18 jquery - Ajax 1 Tutorials Reference http://learn.jquery.com/ajax/ http://www.w3schools.com/jquery/jquery_ajax_intro.asp jquery Methods http://www.w3schools.com/jquery/jquery_ref_ajax.asp 2 10/31/2018

More information

Supplementary Material

Supplementary Material Supplementary Material Example query results for /pathways/interactions/byentity/count call for AKT2 Supplementary Figure 1: Result in the JSON format of the AKT2 query from Figure 3. This is the count

More information

AJAX: The Basics CISC 282 November 22, 2017

AJAX: The Basics CISC 282 November 22, 2017 AJAX: The Basics CISC 282 November 22, 2017 Synchronous Communication User and server take turns waiting User requests pages while browsing Waits for server to respond Waits for the page to load in the

More information

The Discussion of Cross-platform Mobile Application Development Based on Phone Gap Method Limei Cui

The Discussion of Cross-platform Mobile Application Development Based on Phone Gap Method Limei Cui 6th International Conference on Sensor Network and Computer Engineering (ICSNCE 2016) The Discussion of Cross-platform Mobile Application Development Based on Phone Gap Method Limei Cui Qujing Normal University,

More information

AJAX: Asynchronous Event Handling Sunnie Chung

AJAX: Asynchronous Event Handling Sunnie Chung AJAX: Asynchronous Event Handling Sunnie Chung http://adaptivepath.org/ideas/ajax-new-approach-web-applications/ http://stackoverflow.com/questions/598436/does-an-asynchronous-call-always-create-call-a-new-thread

More information

Advanced Web Programming Practice Exam II

Advanced Web Programming Practice Exam II Advanced Web Programming Practice Exam II Name: 12 December 2017 This is a closed book exam. You may use one sheet of notes (8.5X11in, front only) but cannot use any other references or electronic device.

More information

Module 5 JavaScript, AJAX, and jquery. Module 5. Module 5 Contains 2 components

Module 5 JavaScript, AJAX, and jquery. Module 5. Module 5 Contains 2 components Module 5 JavaScript, AJAX, and jquery Module 5 Contains 2 components Both the Individual and Group portion are due on Monday October 30 th Start early on this module One of the most time consuming modules

More information

1 Explain the following in brief, with respect to usage of Ajax

1 Explain the following in brief, with respect to usage of Ajax PES Institute of Technology, Bangalore South Campus (Formerly PES School of Engineering) (Hosur Road, 1KM before Electronic City, Bangalore-560 100) INTERNAL TEST (SCHEME AND SOLUTION) 1 Subject Name:

More information

Session 11. Calling Servlets from Ajax. Lecture Objectives. Understand servlet response formats

Session 11. Calling Servlets from Ajax. Lecture Objectives. Understand servlet response formats Session 11 Calling Servlets from Ajax 1 Lecture Objectives Understand servlet response formats Text Xml Html JSON Understand how to extract data from the XMLHttpRequest object Understand the cross domain

More information

ajax1.html 1/2 lectures/7/src/ ajax1.html 2/2 lectures/7/src/

ajax1.html 1/2 lectures/7/src/ ajax1.html 2/2 lectures/7/src/ ajax1.html 1/2 3: ajax1.html 5: Gets stock quote from quote1.php via Ajax, displaying result with alert(). 6: 7: David J. Malan 8: Dan Armendariz 9: Computer Science E-75 10: Harvard Extension School 11:

More information

Web Development and HTML. Shan-Hung Wu CS, NTHU

Web Development and HTML. Shan-Hung Wu CS, NTHU Web Development and HTML Shan-Hung Wu CS, NTHU Outline How does Internet Work? Web Development HTML Block vs. Inline elements Lists Links and Attributes Tables Forms 2 Outline How does Internet Work? Web

More information

Introduction to InfoSec SQLI & XSS (R10+11) Nir Krakowski (nirkrako at post.tau.ac.il) Itamar Gilad (itamargi at post.tau.ac.il)

Introduction to InfoSec SQLI & XSS (R10+11) Nir Krakowski (nirkrako at post.tau.ac.il) Itamar Gilad (itamargi at post.tau.ac.il) Introduction to InfoSec SQLI & XSS (R10+11) Nir Krakowski (nirkrako at post.tau.ac.il) Itamar Gilad (itamargi at post.tau.ac.il) Covered material Useful SQL Tools SQL Injection in a Nutshell. Mass Code

More information

CSC 405 Computer Security. Web Security

CSC 405 Computer Security. Web Security CSC 405 Computer Security Web Security Alexandros Kapravelos akaprav@ncsu.edu (Derived from slides by Giovanni Vigna and Adam Doupe) 1 The XMLHttpRequest Object Microsoft developers working on Outlook

More information

Creating SDK plugins

Creating SDK plugins Creating SDK plugins 1. Introduction... 3 2. Architecture... 4 3. SDK plugins... 5 4. Creating plugins from a template in Visual Studio... 6 5. Creating custom action... 9 6. Example of custom action...10

More information

User Interaction: jquery

User Interaction: jquery User Interaction: jquery Assoc. Professor Donald J. Patterson INF 133 Fall 2012 1 jquery A JavaScript Library Cross-browser Free (beer & speech) It supports manipulating HTML elements (DOM) animations

More information

At the Forge Prototype Reuven M. Lerner Abstract Prototype eases the burden of using JavaScript in Ajax. During the last few months, we have looked at ways to use JavaScript, a version of which is included

More information

At the Forge Beginning Ajax Reuven M. Lerner Abstract How to put the A (asynchronous) in Ajax. Many programmers, myself included, have long seen JavaScript as a way to change the appearance of a page of

More information

Chapter4: HTML Table and Script page, HTML5 new forms. Asst. Prof. Dr. Supakit Nootyaskool Information Technology, KMITL

Chapter4: HTML Table and Script page, HTML5 new forms. Asst. Prof. Dr. Supakit Nootyaskool Information Technology, KMITL Chapter4: HTML Table and Script page, HTML5 new forms Asst. Prof. Dr. Supakit Nootyaskool Information Technology, KMITL Objective To know HTML5 creating a new style form. To understand HTML table benefits

More information

Ajax Application Design

Ajax Application Design Ajax Application Design Reuven M. Lerner Abstract Asynchronous is the operative word with Ajax, and here's what it's all about. During the past few months, I've used this column to explore a number of

More information

Chapter 3: Web Paradigms and Interactivity

Chapter 3: Web Paradigms and Interactivity Chapter 3: Web Paradigms and Interactivity 3.1 AJAX: Asynchronous Interactivity in the Web 3.2 Paradigms for Web-Based Communication 3.3 Reverse AJAX and COMET 3.4 Web Sockets and Web Messaging 3.5 Web

More information

Credits: Some of the slides are based on material adapted from

Credits: Some of the slides are based on material adapted from 1 The Web, revisited WEB 2.0 marco.ronchetti@unitn.it Credits: Some of the slides are based on material adapted from www.telerik.com/documents/telerik_and_ajax.pdf 2 The old web: 1994 HTML pages (hyperlinks)

More information

Notes General. IS 651: Distributed Systems 1

Notes General. IS 651: Distributed Systems 1 Notes General Discussion 1 and homework 1 are now graded. Grading is final one week after the deadline. Contract me before that if you find problem and want regrading. Minor syllabus change Moved chapter

More information

Building Desktop RIAs with PHP, HTML & Javascript in AIR. Ed Finkler, ZendCon08, September 17, 2008 funkatron.com /

Building Desktop RIAs with PHP, HTML & Javascript in AIR. Ed Finkler, ZendCon08, September 17, 2008 funkatron.com / Building Desktop RIAs with PHP, HTML & Javascript in AIR Ed Finkler, ZendCon08, September 17, 2008 funkatron.com / funkatron@gmail.com What is AIR? For the desktop Not a browser plugin Build desktop apps

More information

Pure JavaScript Client

Pure JavaScript Client Pure JavaScript Client This is a message-receiving client for Apache ESME that is written entirely in Javascript. This very first cut of a client was created as a proof-ofconcept to show that a very simple

More information

Composer Help. Web Request Common Block

Composer Help. Web Request Common Block Composer Help Web Request Common Block 7/4/2018 Web Request Common Block Contents 1 Web Request Common Block 1.1 Name Property 1.2 Block Notes Property 1.3 Exceptions Property 1.4 Request Method Property

More information

Module7: AJAX. Click, wait, and refresh user interaction. Synchronous request/response communication model. Page-driven: Workflow is based on pages

Module7: AJAX. Click, wait, and refresh user interaction. Synchronous request/response communication model. Page-driven: Workflow is based on pages INTERNET & WEB APPLICATION DEVELOPMENT SWE 444 Fall Semester 2008-2009 (081) Module7: Objectives/Outline Objectives Outline Understand the role of Learn how to use in your web applications Rich User Experience

More information

In this exercise we shall be using jsfiddle.net to build a simple data driven web site in HTML5. Building Blocks

In this exercise we shall be using jsfiddle.net to build a simple data driven web site in HTML5. Building Blocks Web Building Blocks In this exercise we are going to look at the four building blocks of the web: structure, style, content and action. This methodology forms the basis of a data driven web site. In this

More information

Unit Notes. ICAWEB411A Produce basic client-side script for dynamic web pages Topic 1 Introduction to JavaScript

Unit Notes. ICAWEB411A Produce basic client-side script for dynamic web pages Topic 1 Introduction to JavaScript Unit Notes ICAWEB411A Produce basic client-side script for dynamic web pages Topic 1 Introduction to JavaScript Copyright, 2013 by TAFE NSW - North Coast Institute Date last saved: 18 September 2013 by

More information

CSC 615 FINAL EXAM SINGLE PAGE APPS. 1. Introduction

CSC 615 FINAL EXAM SINGLE PAGE APPS. 1. Introduction CSC 615 FINAL EXAM SINGLE PAGE APPS DR. GODFREY C. MUGANDA 1. Introduction For the final exam, you are going to write a single page application that is basically a JAX-RS web service with a HTML5/JavaScript

More information

CS 5142 Scripting Languages

CS 5142 Scripting Languages CS 5142 Scripting Languages 10/16/2015 Web Applications Databases 1 Outline Stateful Web Applications AJAX 2 Concepts Scope in Server-Side Scripts Request $_GET, $_POST global $g; Session $_SESSION Application

More information

AJAX เสถ ยร ห นตา ส าน กเทคโนโลย สารสนเทศและการส อสาร มหาว ทยาล ยนเรศวร พะเยา

AJAX เสถ ยร ห นตา ส าน กเทคโนโลย สารสนเทศและการส อสาร มหาว ทยาล ยนเรศวร พะเยา AJAX เสถ ยร ห นตา ส าน กเทคโนโลย สารสนเทศและการส อสาร มหาว ทยาล ยนเรศวร พะเยา 1 Ajax ( Asynchronous JavaScript and XML ) Ajax ค ออะไร JavaScript DHTML = Dynamic HTML XML = Extensive Markup Language Css

More information

Using Development Tools to Examine Webpages

Using Development Tools to Examine Webpages Chapter 9 Using Development Tools to Examine Webpages Skills you will learn: For this tutorial, we will use the developer tools in Firefox. However, these are quite similar to the developer tools found

More information

Fall Semester (081) Module7: AJAX

Fall Semester (081) Module7: AJAX INTERNET & WEB APPLICATION DEVELOPMENT SWE 444 Fall Semester 2008-2009 (081) Module7: AJAX Dr. El-Sayed El-Alfy Computer Science Department King Fahd University of Petroleum and Minerals alfy@kfupm.edu.sa

More information

When created, it is given a name.

When created, it is given a name. Ajax Service Ajax (which is an acronym for Asynchronous JavaScript and XML) is a description for the practice of constructing web pages that have dynamic content with call-outs to external services to

More information

Controlled Assessment Task. Question 1 - Describe how this HTML code produces the form displayed in the browser.

Controlled Assessment Task. Question 1 - Describe how this HTML code produces the form displayed in the browser. Controlled Assessment Task Question 1 - Describe how this HTML code produces the form displayed in the browser. The form s code is displayed in the tags; this creates the object which is the visible

More information

Ajax Hacks by Bruce Perry

Ajax Hacks by Bruce Perry Ajax Hacks by Bruce Perry Copyright 2006 O Reilly Media, Inc. All rights reserved. Printed in the United States of America. Published by O Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol,

More information

Abstract. 1. Introduction. 2. AJAX overview

Abstract. 1. Introduction. 2. AJAX overview Asynchronous JavaScript Technology and XML (AJAX) Chrisina Draganova Department of Computing, Communication Technology and Mathematics London Metropolitan University 100 Minories, London EC3 1JY c.draganova@londonmet.ac.uk

More information

Jquery Ajax Json Php Mysql Data Entry Example

Jquery Ajax Json Php Mysql Data Entry Example Jquery Ajax Json Php Mysql Data Entry Example Then add required assets in head which are jquery library, datatable js library and css By ajax api we can fetch json the data from employee-grid-data.php.

More information

Arc en Ciel Ltd. Gazetteer Webservice FactSheet

Arc en Ciel Ltd. Gazetteer Webservice FactSheet Arc en Ciel Ltd. Gazetteer Webservice FactSheet Overview We provide two gazetteer webservices: on place name and on street name. The place name service allows a user to browse for any town, village or

More information

Oracle WebLogic Portal

Oracle WebLogic Portal Oracle WebLogic Portal Client-Side Developer s Guide 10g Release 3 (10.3) September 2008 Oracle WebLogic Portal Client-Side Developer s Guide, 10g Release 3 (10.3) Copyright 2008, Oracle and/or its affiliates.

More information

MediaCMD HTTP/Ajax Interface

MediaCMD HTTP/Ajax Interface MediaCMD HTTP/Ajax Interface (c) copyright 1998-2018 Drastic Technologies Ltd. All Rights Reserved. www.drastic.tv 1 MediaCMD HTTP/Ajax Interface...1 Overview...4 Full MediaCmd Ajax/XML Access...5 VVWXMLMediaCmd

More information

Date Picker Haim Michael

Date Picker Haim Michael Date Picker Introduction The date picker is one of the most popular jquery widgets in use. It is highly configurable and extremely easy to implement. Introduction Simple Date Picker

More information

Session 14. Serialization/JSON. Lecture Objectives

Session 14. Serialization/JSON. Lecture Objectives Session 14 Serialization/JSON 1 Lecture Objectives Understand the need for serialization Understand various approaches to serialization Understand the use of JSON as a popular approach to serialization

More information

Advanced Authoring Templates for WebSphere Portal content publishing

Advanced Authoring Templates for WebSphere Portal content publishing By David Wendt (wendt@us.ibm.com) Software Engineer, IBM Corp. October 2003 Advanced Authoring Templates for WebSphere Portal content publishing Abstract This paper describes some advanced techniques for

More information

A Sample PhoneGap Application Using SUP

A Sample PhoneGap Application Using SUP This document summarizes the creation of a PhoneGap application on android platform which uses SUP server to fetch the data. This document also describes the basics of PhoneGap from the environment setup,

More information

MAX 2006 Beyond Boundaries

MAX 2006 Beyond Boundaries Flash and Ajax MAX 006 Beyond Boundaries Jason Williams Integrating Flex Apps with Browsers and AJAX Adobe Systems, Inc. Ajax is likely to become a mainstream tool used by web developers as an alternative

More information

Part of this connection identifies how the response can / should be provided to the client code via the use of a callback routine.

Part of this connection identifies how the response can / should be provided to the client code via the use of a callback routine. What is AJAX? In one sense, AJAX is simply an acronym for Asynchronous JavaScript And XML In another, it is a protocol for sending requests from a client (web page) to a server, and how the information

More information

Writing Web Applications with Web Services

Writing Web Applications with Web Services Writing Web Applications with Web Services and Ajax Mike Diehl Abstract An Ajax primer with Perl and PostgreSQL. If you've done any Web development at all recently, you've no doubt heard the buzz going

More information

Term Paper. P r o f. D r. E d u a r d H e i n d l. H o c h s c h u l e F u r t w a n g e n U n i v e r s i t y. P r e s e n t e d T o :

Term Paper. P r o f. D r. E d u a r d H e i n d l. H o c h s c h u l e F u r t w a n g e n U n i v e r s i t y. P r e s e n t e d T o : Version: 0.1 Date: 02.05.2009 Author(s): Doddy Satyasree AJAX Person responsable: Doddy Satyasree Language: English Term Paper History Version Status Date 0.1 Draft Version created 02.05.2009 0.2 Final

More information

AJAX ASYNCHRONOUS JAVASCRIPT AND XML. Laura Farinetti - DAUIN

AJAX ASYNCHRONOUS JAVASCRIPT AND XML. Laura Farinetti - DAUIN AJAX ASYNCHRONOUS JAVASCRIPT AND XML Laura Farinetti - DAUIN Rich-client asynchronous transactions In 2005, Jesse James Garrett wrote an online article titled Ajax: A New Approach to Web Applications (www.adaptivepath.com/ideas/essays/archives/000

More information

Assignment: Seminole Movie Connection

Assignment: Seminole Movie Connection Assignment: Seminole Movie Connection Assignment Objectives: Building an application using an Application Programming Interface (API) Parse JSON data from an HTTP response message Use Ajax methods and

More information

6. Accelerated Development with jquery Library and AJAX Technology

6. Accelerated Development with jquery Library and AJAX Technology Web Engineering I BIT Pre-Semester Accelerated Development with jquery Library and AJAX Technology (Modal Question) Lessons for Mid-Exam 1. Web Administration skills in Analysis, Design, Develop and Deploy

More information

Internet publishing HTML (XHTML) language. Petr Zámostný room: A-72a phone.:

Internet publishing HTML (XHTML) language. Petr Zámostný room: A-72a phone.: Internet publishing HTML (XHTML) language Petr Zámostný room: A-72a phone.: 4222 e-mail: petr.zamostny@vscht.cz Essential HTML components Element element example Start tag Element content End tag

More information

Static Webpage Development

Static Webpage Development Dear Student, Based upon your enquiry we are pleased to send you the course curriculum for PHP Given below is the brief description for the course you are looking for: - Static Webpage Development Introduction

More information

The University of Bradford Institutional Repository

The University of Bradford Institutional Repository The University of Bradford Institutional Repository http://bradscholars.brad.ac.uk This work is made available online in accordance with publisher policies. Please refer to the repository record for this

More information

Enhancing WebGen5 with Access Control, AJAX Support, and Editable-and-Insertable Select Form.

Enhancing WebGen5 with Access Control, AJAX Support, and Editable-and-Insertable Select Form. Enhancing WebGen5 with Access Control, AJAX Support, and Editable-and-Insertable Select Form. by Mariko Imaeda Submitted to Oregon State University In partial fulfillment of the requirements for the degree

More information

Ajax Simplified Nicholas Petreley Abstract Ajax can become complex as far as implementation, but the concept is quite simple. This is a simple tutorial on Ajax that I hope will ease the fears of those

More information