Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
dad:rmi [2023/11/30 10:11] – [Implementación Cliente] thejuanvisu | dad:rmi [2024/01/06 20:35] (actual) – [Unable to make public abstract boolean] thejuanvisu | ||
---|---|---|---|
Línea 94: | Línea 94: | ||
==== Implementación Servidor ==== | ==== Implementación Servidor ==== | ||
+ | |||
+ | Aquí implementaremos las funciones de la interfaz del servidor. Se debe heredar de UnicastRemoteObject con un Extends e indicar que se va a implementar la interface anterior con Implements: | ||
+ | |||
<code java ImplementacionInterfaceServidor.jar> | <code java ImplementacionInterfaceServidor.jar> | ||
- | public class ImplementacionInterfaceServidor extends UnicastRemoteObject implements | + | public class ImplementacionInterfaceServidor extends UnicastRemoteObject implements |
private static final long serialVersionUID = 1L; | private static final long serialVersionUID = 1L; | ||
| | ||
Línea 124: | Línea 127: | ||
==== Implementación servidor ==== | ==== Implementación servidor ==== | ||
+ | |||
<code java Server.jar> | <code java Server.jar> | ||
Línea 129: | Línea 133: | ||
public server(){ | public server(){ | ||
try{ | try{ | ||
- | | + | |
+ | //creamos el servicio en el puerto 1099 | ||
LocateRegistry.createRegistry(1099); | LocateRegistry.createRegistry(1099); | ||
+ | //creamos un nuevo objeto con la funcionalidad | ||
InterfazServidor is = new ImplementacionInterfaceServidor(); | InterfazServidor is = new ImplementacionInterfaceServidor(); | ||
- | Naming.rebind(" | + | |
+ | //Ejemplo de URL(" | ||
+ | | ||
| | ||
}catch (Exception e){ | }catch (Exception e){ | ||
Línea 140: | Línea 148: | ||
| | ||
public static void main(String args[]){ | public static void main(String args[]){ | ||
- | new CalculatorServer(); | + | new Server(); |
} | } | ||
| | ||
Línea 153: | Línea 161: | ||
public static void main(String[] args){ | public static void main(String[] args){ | ||
try{ | try{ | ||
- | InterfazServidor is = (InterfazServidor)Naming.lookup(" | + | |
+ | //Formato de la URL: RMI:// | ||
+ | | ||
| | ||
System.out.println(is.sumar(3, | System.out.println(is.sumar(3, | ||
Línea 169: | Línea 179: | ||
</ | </ | ||
+ | ===== Soluciones a Errores comunes ===== | ||
+ | ==== Unable to make public abstract boolean ==== | ||
+ | En el archivo module-info.java debemos revisar que se esté exportando el paquete | ||
+ | <code java module-info.java> | ||
+ | module nombre_proyecto { | ||
+ | exports nombre_paquete; | ||
+ | } | ||
+ | |||
+ | </ | ||