¿Por qué esto es importante?

Para hospedar aplicaciones en una máquina diferente, en lugar de que sea directamente en el servidor que hospeda los componentes API de JavaScript, se requiere un método para omitir la política del mismo origen. Esto resulta particularmente útil durante el desarrollo de la aplicación, cuando los desarrolladores normalmente desean ejecutar sus códigos en una máquina local. La máquina local normalmente usará un nombre de host de localhost, o un nombre de máquina, y el servidor con los controles tendrá un nombre de host distinto, por lo tanto, un origen completamente diferente.

Para lograr esto, se proporcionó un proxy que reenviará las solicitudes a un host remoto y figurará para el navegador que todavía está en el dominio. El proxy Java se puede implementar en cualquier contenedor de Java servlet, que implemente la especificación Servlet 2.4 o superior.

El proxy simplemente toma la dirección URL como un parámetro y solicita la página, devolviendo el contenido al solicitante. Dado que el proxy está instalado en un servidor de una máquina local en el puerto 80, se puede tener acceso a la página web http://myserver:8765/some/path/example.html si se invoca http://localhost/riaproxy?url=http://myserver:8765/some/path/example.html. El resultado que envía el proxy será el mismo al que si accediera directamente a la dirección URL objetiva. La diferencia importante es que la segunda dirección URL se visualizará mediante un navegador como parte del dominio local http://localhost/ en lugar de http://myserver:8765/. Tenga en cuenta que el parámetro de la dirección URL se debe codificar adecuadamente para seguir las reglas de sintaxis de las URL de Internet (conf. RFC 1738: Uniform Resource Locators).