La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Comunicación con el servidor, RPC GWT Google Web Toolkit Prof. Ing. Esteban Ramírez.

Presentaciones similares


Presentación del tema: "Comunicación con el servidor, RPC GWT Google Web Toolkit Prof. Ing. Esteban Ramírez."— Transcripción de la presentación:

1 Comunicación con el servidor, RPC GWT Google Web Toolkit Prof. Ing. Esteban Ramírez

2 Contenido Llamadas al servidor AJAX Client Side vs Server Side Asynchronous Calls JSON (JavaScript Object Notation) Plugin GWT - RPC

3 Llamadas al servidor Ajax

4 Client-side vs Server-side Servidor Web JScript TestGWT.java

5 Pasos En orden para definir su interface RPC, se necesita: 1. Definir una interface sincrona (client-side) para su servicio que extienda RemoteService y liste todos los métodos RPC. 2. Definir una interface asynchrona (client-side) para su servicio a ser llamada desde el codigo cliente. 3. Definir una clase que implemente el código (server-side)que extienda RemoteServiceServlet e implemente la interface que se creó en el paso 1.

6 ServiceDefTarget (interface) RemoteService (interface) RemoteServiceServlet (interface) Client-side Server-side YourServiceAsync (interface) YourServiceAsync (interface) YourService (interface) YourService (interface) YourServiceImpl (class) YourServiceImpl (class) Extends YourServiceProxy (class) Implements Standar Java Code (Se ejecuta como bytecode en el server) TranslatablaJava Code (Se ejecuta como JavaScript en el cliente) Related Importadas Escritas Generadas

7 Pasos En orden para definir su interface RPC, se necesita: 1. Definir una interface sincrona (client-side) para su servicio que extienda RemoteService y liste todos los métodos RPC. 2. Definir una interface asynchrona (client-side) para su servicio a ser llamada desde el codigo cliente. 3. Definir una clase que implemente el código (server-side)que extienda RemoteServiceServlet e implemente la interface que se creó en el paso 1.

8 ServiceDefTarget (interface) RemoteService (interface) RemoteServiceServlet (interface) Client-side Server-side YourServiceAsync (interface) YourServiceAsync (interface) YourService (interface) YourService (interface) YourServiceImpl (class) YourServiceImpl (class) Extends YourServiceProxy (class) Implements Standar Java Code (Se ejecuta como bytecode en el server) TranslatablaJava Code (Se ejecuta como JavaScript en el cliente) Related Importadas Escritas Generadas

9 Pasos En orden para definir su interface RPC, se necesita: 1. Definir una interface sincrona (client-side) para su servicio que extienda RemoteService y liste todos los métodos RPC. 2. Definir una interface asynchrona (client-side) para su servicio a ser llamada desde el codigo cliente. 3. Definir una clase que implemente el código (server-side)que extienda RemoteServiceServlet e implemente la interface que se creó en el paso 1.

10 ServiceDefTarget (interface) RemoteService (interface) RemoteServiceServlet (interface) Client-side Server-side YourServiceAsync (interface) YourServiceAsync (interface) YourService (interface) YourService (interface) YourServiceImpl (class) YourServiceImpl (class) Extends YourServiceProxy (class) Implements Standar Java Code (Se ejecuta como bytecode en el server) TranslatablaJava Code (Se ejecuta como JavaScript en el cliente) Related Importadas Escritas Generadas

11 Ejemplo Servidor Web Jose Personas 1 – Pedro 2 – Diego 3 – Juan ? – ???

12 Ejemplo Servidor Web 4 Personas 1 – Pedro 2 – Diego 3 – Juan Jose 4 – Jose

13 Ejemplo New GWT Java Project: TestRPC New GWT Module: TestRPCmodule Package Name: com.cursojava.testrpc

14 Ejemplo Servicio: AgregarPersona Pantalla

15 Ejemplo Servicio: AgregarPersona Interface síncrona del servicio Client -side

16 Ejemplo Servicio: AgregarPersona Interface Asíncrona del servicio Client -side

17 Ejemplo Servicio: AgregarPersona Implementación del servicio en Server-side

18 Ejemplo Servicio: AgregarPersona Contenedor de personas

19 Ejemplo Servicio: AgregarPersona com.cursojava.testrpc.client AgregarPersonaService.java Interface síncrona del servicio Client -side

20 Ejemplo Servicio: AgregarPersona com.cursojava.testrpc.client AgregarPersonaServiceAsync.java Interface Asíncrona del servicio Client -side

21 Ejemplo Servicio: AgregarPersona com.cursojava.testrpc.client AgregarPersonaServiceAsync.java Interface Asíncrona del servicio Client -side

22 Ejemplo Servicio: AgregarPersona WEB-INF/ web.xml Configuración del Servlet que manejará el servicio

23 Ejemplo Servicio: AgregarPersona com.cursojava.testrpc.client TestRPCmodule.java

24 Ejemplo Servicio: AgregarPersona com.cursojava.testrpc.client TestRPCmodule.java

25 Ejemplo Servicio: AgregarPersona com.cursojava.testrpc.client TestRPCmodule.java

26 Ejemplo Servicio: AgregarPersona com.cursojava.testrpc.client TestRPCmodule.java

27 Ejemplo Servicio: AgregarPersona com.cursojava.testrpc.client TestRPCmodule.java

28 Ejemplo Servicio: AgregarPersona com.cursojava.testrpc.client TestRPCmodule.java

29 Ejemplo Servicio: AgregarPersona com.cursojava.testrpc.client TestRPCmodule.java

30 Plugin GWT - RPC

31 Asynchronous Calls Code is not necessarily executed sequentially Server call synchronously: But if you fetch the data asynchronously:

32 Naming Standards A type is serializable and can be used in a service interface if the type: The type is primitive, such as char, byte, short, int, long, boolean, float, or double. The type an instance of the String, Date, or a primitive wrapper such as Character, Byte, Short, Integer, Long, Boolean, Float, or Double. The type is an enumeration. Enumeration constants are serialized as a name only; none of the field values are serialized. The type is an array of serializable types (including other serializable arrays). The type is a serializable user-defined class.

33 JSON JSON (JavaScript Object Notation - Notación de Objetos de JavaScript) es un formato ligero de intercambio de datos. Leerlo y escribirlo es simple para humanos, mientras que para las máquinas es simple interpretarlo y generarlo. La simplicidad de JSON ha dado lugar a la generalización de su uso, especialmente como alternativa a XML en AJAX.AJAX

34 JSON

35 Un objeto es un conjunto desordenado de pares nombre/valor. Un objeto comienza con { (llave de apertura) y termine con } (llave de cierre). Cada nombre es seguido por : (dos puntos) y los pares nombre/valor están separados por, (coma).

36 JSON Un arreglo es una colección de valores. Un arreglo comienza con [ (corchete izquierdo) y termina con ] (corchete derecho). Los valores se separan por, (coma).

37 JSON Un valor puede ser una cadena de caracteres con comillas dobles, o un número, o true o false o null, o un objeto o un arreglo. Estas estructuras pueden anidarse.

38 JSON Una cadena de caracteres es una colección de cero o más caracteres Unicode, encerrados entre comillas dobles, usando barras divisorias invertidas como escape.

39 JSON Un número es similar a un número C o Java, excepto que no se usan los formatos octales y hexadecimales.

40 JSON vs XML

41 Ejercicio 1 Hacer una copia del sistema GestionAcademicaWeb llamándole GestionAcademicaWeb2 y agregar una llamada a un servicio RPC donde se le envíe el objeto curso y se imprima en el server-side los valores del curso. El nuevo servicio puede llamarse GuardarCurso. El método tendrá la siguiente firma: String guardarCurso(Curso curso); Probar la aplicación compilada en el Tomcat.

42 Ejercicio 1

43

44 Servicio Síncrono Servicio Asíncrono Implementación Servicio

45 Ejercicio 1


Descargar ppt "Comunicación con el servidor, RPC GWT Google Web Toolkit Prof. Ing. Esteban Ramírez."

Presentaciones similares


Anuncios Google