Class DefaultRequestToViewNameTranslator
java.lang.Object
org.springframework.web.servlet.view.DefaultRequestToViewNameTranslator
- All Implemented Interfaces:
RequestToViewNameTranslator
public class DefaultRequestToViewNameTranslator
extends Object
implements RequestToViewNameTranslator
RequestToViewNameTranslator
that simply transforms the URI of
the incoming request into a view name.
Can be explicitly defined as the viewNameTranslator
bean in a
DispatcherServlet
context.
Otherwise, a plain default instance will be used.
The default transformation simply strips leading and trailing slashes
as well as the file extension of the URI, and returns the result as the
view name with the configured prefix
and a
suffix
added as appropriate.
The stripping of the leading slash and file extension can be disabled
using the stripLeadingSlash
and
stripExtension
properties, respectively.
Find below some examples of request to view name translation.
http://localhost:8080/gamecast/display.html
»display
http://localhost:8080/gamecast/displayShoppingCart.html
»displayShoppingCart
http://localhost:8080/gamecast/admin/index.html
»admin/index
- Since:
- 2.0
- Author:
- Rob Harrop, Juergen Hoeller
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetViewName
(HttpServletRequest request) Translates the request URI of the incomingHttpServletRequest
into the view name based on the configured parameters.void
Set the prefix to prepend to generated view names.void
setSeparator
(String separator) Set the value that will replace '/
' as the separator in the view name.void
setStripExtension
(boolean stripExtension) Set whether file extensions should be stripped from the URI when generating the view name.void
setStripLeadingSlash
(boolean stripLeadingSlash) Set whether leading slashes should be stripped from the URI when generating the view name.void
setStripTrailingSlash
(boolean stripTrailingSlash) Set whether trailing slashes should be stripped from the URI when generating the view name.void
Set the suffix to append to generated view names.protected String
transformPath
(String lookupPath) Transform the request URI (in the context of the webapp) stripping slashes and extensions, and replacing the separator as required.
-
Constructor Details
-
DefaultRequestToViewNameTranslator
public DefaultRequestToViewNameTranslator()
-
-
Method Details
-
setPrefix
Set the prefix to prepend to generated view names.- Parameters:
prefix
- the prefix to prepend to generated view names
-
setSuffix
Set the suffix to append to generated view names.- Parameters:
suffix
- the suffix to append to generated view names
-
setSeparator
Set the value that will replace '/
' as the separator in the view name. The default behavior simply leaves '/
' as the separator. -
setStripLeadingSlash
public void setStripLeadingSlash(boolean stripLeadingSlash) Set whether leading slashes should be stripped from the URI when generating the view name. Default is "true". -
setStripTrailingSlash
public void setStripTrailingSlash(boolean stripTrailingSlash) Set whether trailing slashes should be stripped from the URI when generating the view name. Default is "true". -
setStripExtension
public void setStripExtension(boolean stripExtension) Set whether file extensions should be stripped from the URI when generating the view name. Default is "true". -
getViewName
Translates the request URI of the incomingHttpServletRequest
into the view name based on the configured parameters.- Specified by:
getViewName
in interfaceRequestToViewNameTranslator
- Parameters:
request
- the incomingHttpServletRequest
providing the context from which a view name is to be resolved- Returns:
- the view name, or
null
if no default found - Throws:
IllegalArgumentException
- if neither a parsed RequestPath, nor a String lookupPath have been resolved and cached as a request attribute.- See Also:
-
transformPath
Transform the request URI (in the context of the webapp) stripping slashes and extensions, and replacing the separator as required.- Parameters:
lookupPath
- the lookup path for the current request, as determined by the UrlPathHelper- Returns:
- the transformed path, with slashes and extensions stripped if desired
-