unsupported resource origin jax javaee enable cross control allow web-services soap cors jax-ws

web-services - resource - jax-rs cors



Cómo habilitar CORS en el lado del servidor de JAX-WS en Java (1)

Como JAX-RS, la respuesta debería estar enriquecida con encabezados CORS. En la implementación de JAX-RS se logra mediante la definición de filtro. En JAX-WS, puede aplicar la misma técnica con "Manejadores".

https://docs.oracle.com/cd/E13222_01/wls/docs103/webserv_adv/handlers.html

Aquí puedes encontrar un ejemplo. Utilice SOAPHandler y pruebe si se trata de un "OutBoundMessage", luego agregue encabezados CORS aquí.

He expuesto el servicio web SOAP usando JAX-WS en Java. Lo siguiente es el fragmento de código:

package com.soap.calculator; import javax.jws.WebMethod; import javax.jws.WebService; @WebService public class Calci { @WebMethod public int add(int x, int y){ return x+y; } @WebMethod public int subtract(int x, int y){ return x-y; } }

A continuación se muestra un fragmento de código para publicar este servicio web:

paquete com.soap.calculator;

import javax.xml.ws.Endpoint; public class Server { public static void main(String agrs[]){ Endpoint ep = Endpoint.publish("http://localhost:8081/SoapwebService", new Calci()); System.out.println("Service created"); } }

Estoy usando el plugin jQuery para comunicarme con este servicio web utilizando SOAP. Dado que este servicio web está expuesto en otro dominio, el navegador está habilitado en el modo CORS y genera la solicitud de verificación previa para acceder al servicio web. Mi pregunta es ¿Cómo habilitar el soporte de CORS en el lado del servidor usando jax-ws?