Coucho puede proporcionar tanto arpillera como arpillera. Burlap es un sustituto de Hessian basado en xml. Podemos usar las clases BurlapServiceExporter y BurlapProxyFactoryBean para implementar el servicio remoto de arpillera.
Implementación: debe crear los siguientes archivos para crear una aplicación de arpillera simple:
- Cálculo.java
- CalculationImpl.java
- web.xml
- arpillera-servlet.xml
- cliente-beans.xml
- Cliente.java
La estructura del proyecto quedará de la siguiente manera:
A. Archivo: Cálculo.java
Java
// Java Program to illustrate Simple Interface // Containing a Method package com.geeksforgeeks; // Interface public interface Calculation { int cube(int number); }
B. Archivo: CalculationImpl.java
Java
// Java Program to Implement Calculation Interface package com.geeksforgeeks; // Class // Implementing interface public class CalculationImpl implements Calculation { // Method public int cube(int number) { // Returning cube of a number return number * number * number; } }
C. Archivo: web.xml
El controlador frontal se define en este archivo XML denominado DispatcherServlet. Cualquier solicitud que termine en .http se enrutará a DispatcherServlet.
XML
<?xml version="1.0" encoding="UTF-8"?> <web-app> <servlet> <servlet-name>burlap</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>burlap</servlet-name> <url-pattern>*.http</url-pattern> </servlet-mapping> </web-app>
D. Archivo: arpillera-servlet.xml
Tiene que ser colocado en la carpeta WEB-INF. Debe llamarse servletname-servlet.xml. Especifica CalculationImpl y BurlapServiceExporter como beans.
XML
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="calculationBean" class="com.geeksforgeeks.CalculationImpl"> </bean> <bean name="/Calculation.http" class="org.springframework.remoting.caucho.BurlapServiceExporter"> <property name="service" ref="calculationBean"></property> <property name="serviceInterface" value="com.geeksforgeeks.Calculation"></property> </bean> </beans>
E. Archivo: client-beans.xml
El bean para BurlapProxyFactoryBean se define en este archivo XML. Esta clase requiere que se definan dos atributos.
- URL de servicio
- interfaz de servicio
XML
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="calculationBean" class="org.springframework.remoting.caucho.BurlapProxyFactoryBean"> <property name="serviceUrl" value="http://localhost:8888/burlap/Calculation.http"></property> <property name="serviceInterface" value="com.geeksforgeeks.Calculation"></property> </bean> </beans>
F. Archivo: Cliente.java
Esta clase obtiene la instancia de Calculation y llama al método cube.
Java
// Java Program to Illustrate Client Class package com.geeksforgeeks; // Importing required classes import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; // Class public class Client { // Main driver method public static void main(String[] args) { // Creating an object of ApplicationContext class ApplicationContext context = new ClassPathXmlApplicationContext( "client-beans.xml"); Calculation calculation = (Calculation)context.getBean( "calculationBean"); // Printing cube of a random number System.out.println(calculation.cube(3)); } }
Producción:
27
Nota: Para ejecutar el fragmento de código anterior para obtener el resultado:
- Inicie e implemente el proyecto, asumiendo que el servidor está escuchando en el puerto 8888. Cambie el serviceURL en client-beans.xml si se cambia el número de puerto.
- A continuación, se debe compilar y ejecutar el archivo Client.java.
Publicación traducida automáticamente
Artículo escrito por sanketnagare y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA