public class

InternalPathMethodNameResolver

extends AbstractUrlMethodNameResolver
java.lang.Object
   ↳ org.springframework.web.servlet.mvc.multiaction.AbstractUrlMethodNameResolver
     ↳ org.springframework.web.servlet.mvc.multiaction.InternalPathMethodNameResolver

Class Overview

Simple implementation of MethodNameResolver that maps URL to method name. Although this is the default implementation used by the MultiActionController class (because it requires no configuration), it's bit naive for most applications. In particular, we don't usually want to tie URL to implementation methods.

Maps the resource name after the last slash, ignoring an extension. E.g. "/foo/bar/baz.html" to "baz", assuming a "/foo/bar/baz.html" controller mapping to the corresponding MultiActionController handler. method. Doesn't support wildcards.

Summary

[Expand]
Inherited Fields
From class org.springframework.web.servlet.mvc.multiaction.AbstractUrlMethodNameResolver
Public Constructors
InternalPathMethodNameResolver()
Public Methods
void setPrefix(String prefix)
Specify a common prefix for handler method names.
void setSuffix(String suffix)
Specify a common suffix for handler method names.
Protected Methods
String extractHandlerMethodNameFromUrlPath(String uri)
Extract the handler method name from the given request URI.
String getHandlerMethodNameForUrlPath(String urlPath)
Extracts the method name indicated by the URL path.
String getPrefix()
Return the common prefix for handler method names.
String getSuffix()
Return the common suffix for handler method names.
String postProcessHandlerMethodName(String methodName)
Build the full handler method name based on the given method name as indicated by the URL path.
[Expand]
Inherited Methods
From class org.springframework.web.servlet.mvc.multiaction.AbstractUrlMethodNameResolver
From class java.lang.Object
From interface org.springframework.web.servlet.mvc.multiaction.MethodNameResolver

Public Constructors

public InternalPathMethodNameResolver ()

Public Methods

public void setPrefix (String prefix)

Specify a common prefix for handler method names. Will be prepended to the internal path found in the URL: e.g. internal path "baz", prefix "my" -> method name "mybaz".

public void setSuffix (String suffix)

Specify a common suffix for handler method names. Will be appended to the internal path found in the URL: e.g. internal path "baz", suffix "Handler" -> method name "bazHandler".

Protected Methods

protected String extractHandlerMethodNameFromUrlPath (String uri)

Extract the handler method name from the given request URI. Delegates to WebUtils.extractViewNameFromUrlPath(String).

Parameters
uri the request URI (e.g. "/index.html")
Returns
  • the extracted URI filename (e.g. "index")

protected String getHandlerMethodNameForUrlPath (String urlPath)

Extracts the method name indicated by the URL path.

Parameters
urlPath the URL path to use for lookup, according to the settings in this class
Returns
  • a method name that can handle this request. Should return null if no matching method found.

protected String getPrefix ()

Return the common prefix for handler method names.

protected String getSuffix ()

Return the common suffix for handler method names.

protected String postProcessHandlerMethodName (String methodName)

Build the full handler method name based on the given method name as indicated by the URL path.

The default implementation simply applies prefix and suffix. This can be overridden, for example, to manipulate upper case / lower case, etc.

Parameters
methodName the original method name, as indicated by the URL path
Returns
  • the full method name to use