/ / Reescritura de URL en Java y Spring - java, spring, spring-mvc, url-rewriting, tuckey-urlrewrite-filter

Reescritura de URL en Java y Spring - java, spring, spring-mvc, url-rewriting, tuckey-urlrewrite-filter

Soy nuevo en Java y Spring. Necesito saber cómo podemos lograr la reescritura de URL en Java y Spring. Por ejemplo, en un entorno .NET podemos lograr esto utilizando el siguiente código:

Global.asax.cs:

 protected void Application_BeginRequest(object sender, EventArgs e)
{
try
{
string fullOrigionalpath = Request.Url.ToString();
if (fullOrigionalpath.Contains("/Home-Page"))
{
Context.RewritePath("~/home.aspx"); return;
}
}
}

Del mismo modo, tenemos que lograr en Java y Spring.

  1. ¿Podemos tener algo relacionado con esto en Java y Spring?
  2. Si no podemos utilizar el código anterior, ¿cómo podemos lograr la reescritura de URL?

La ayuda sería apreciada

Respuestas

2 para la respuesta № 1

Entiendo la pregunta en el camino, que necesita una reescritura de url en su servidor.

Eche un vistazo al tuckey UrlRewriteFilter.


2 para la respuesta № 2

Recomendaría usar OCPsoft Rewrite (beta) o OCPsoft PrettyFaces (final), que son herramientas más nuevas y más evolucionadas para realizar la reescritura de URL de Servlet de Java.

Rewrite también tiene soporte para su configuración tuckey, si desea aprovechar su configuración existente y agregar una configuración de Rewrite basada en Java más potente.

Es muy estable y bien probado.

package com.example;
public class ExampleConfigurationProvider extends HttpConfigurationProvider
{
@Override
public int priority()
{
return 10;
}

@Override
public Configuration getConfiguration(final ServletContext context)
{
return ConfigurationBuilder.begin()
.defineRule()
.when(Direction.isInbound().and(Path.matches("/some/{page}/.*/")))
.perform(Redirect.permanent("/new-{page}/"));
}
}

1 para la respuesta № 3

Si está usando Spring> = 3, puede usar @RequestMapping. Ver la documentación oficial