public class ServletUriComponentsBuilder extends UriComponentsBuilder
Modifier and Type | Field and Description |
---|---|
private java.lang.String |
originalPath |
Modifier | Constructor and Description |
---|---|
protected |
ServletUriComponentsBuilder()
Default constructor.
|
protected |
ServletUriComponentsBuilder(ServletUriComponentsBuilder other)
Create a deep copy of the given ServletUriComponentsBuilder.
|
Modifier and Type | Method and Description |
---|---|
ServletUriComponentsBuilder |
cloneBuilder()
Clone this
UriComponentsBuilder . |
static ServletUriComponentsBuilder |
fromContextPath(HttpServletRequest request)
Prepare a builder from the host, port, scheme, and context path of the
given HttpServletRequest.
|
static ServletUriComponentsBuilder |
fromCurrentContextPath()
Same as
fromContextPath(HttpServletRequest) except the
request is obtained through RequestContextHolder . |
static ServletUriComponentsBuilder |
fromCurrentRequest()
Same as
fromRequest(HttpServletRequest) except the
request is obtained through RequestContextHolder . |
static ServletUriComponentsBuilder |
fromCurrentRequestUri()
Same as
fromRequestUri(HttpServletRequest) except the
request is obtained through RequestContextHolder . |
static ServletUriComponentsBuilder |
fromCurrentServletMapping()
Same as
fromServletMapping(HttpServletRequest) except the
request is obtained through RequestContextHolder . |
static ServletUriComponentsBuilder |
fromRequest(HttpServletRequest request)
Prepare a builder by copying the scheme, host, port, path, and
query string of an HttpServletRequest.
|
static ServletUriComponentsBuilder |
fromRequestUri(HttpServletRequest request)
Prepare a builder from the host, port, scheme, and path (but not the query)
of the HttpServletRequest.
|
static ServletUriComponentsBuilder |
fromServletMapping(HttpServletRequest request)
Prepare a builder from the host, port, scheme, context path, and
servlet mapping of the given HttpServletRequest.
|
protected static HttpServletRequest |
getCurrentRequest()
Obtain current request through
RequestContextHolder . |
private static ServletUriComponentsBuilder |
initFromRequest(HttpServletRequest request)
Initialize a builder with a scheme, host,and port (but not path and query).
|
private void |
initPath(java.lang.String path) |
private static java.lang.String |
prependForwardedPrefix(HttpServletRequest request,
java.lang.String path) |
java.lang.String |
removePathExtension()
Remove any path extension from the
requestURI . |
build, build, build, build, buildAndExpand, buildAndExpand, clone, fragment, fromHttpRequest, fromHttpUrl, fromOriginHeader, fromPath, fromUri, fromUriString, host, newInstance, path, pathSegment, port, port, query, queryParam, queryParams, replacePath, replaceQuery, replaceQueryParam, replaceQueryParams, scheme, schemeSpecificPart, toUriString, uri, uriComponents, userInfo
protected ServletUriComponentsBuilder()
protected ServletUriComponentsBuilder(ServletUriComponentsBuilder other)
other
- the other builder to copy frompublic static ServletUriComponentsBuilder fromContextPath(HttpServletRequest request)
public static ServletUriComponentsBuilder fromServletMapping(HttpServletRequest request)
If the servlet is mapped by name, e.g. "/main/*"
, the path
will end with "/main". If the servlet is mapped otherwise, e.g.
"/"
or "*.do"
, the result will be the same as
if calling fromContextPath(HttpServletRequest)
.
public static ServletUriComponentsBuilder fromRequestUri(HttpServletRequest request)
public static ServletUriComponentsBuilder fromRequest(HttpServletRequest request)
private static ServletUriComponentsBuilder initFromRequest(HttpServletRequest request)
private static java.lang.String prependForwardedPrefix(HttpServletRequest request, java.lang.String path)
public static ServletUriComponentsBuilder fromCurrentContextPath()
fromContextPath(HttpServletRequest)
except the
request is obtained through RequestContextHolder
.public static ServletUriComponentsBuilder fromCurrentServletMapping()
fromServletMapping(HttpServletRequest)
except the
request is obtained through RequestContextHolder
.public static ServletUriComponentsBuilder fromCurrentRequestUri()
fromRequestUri(HttpServletRequest)
except the
request is obtained through RequestContextHolder
.public static ServletUriComponentsBuilder fromCurrentRequest()
fromRequest(HttpServletRequest)
except the
request is obtained through RequestContextHolder
.protected static HttpServletRequest getCurrentRequest()
RequestContextHolder
.private void initPath(java.lang.String path)
public java.lang.String removePathExtension()
requestURI
. This method must be invoked before any calls to UriComponentsBuilder.path(String)
or UriComponentsBuilder.pathSegment(String...)
.
GET http://foo.com/rest/books/6.json ServletUriComponentsBuilder builder = ServletUriComponentsBuilder.fromRequestUri(this.request); String ext = builder.removePathExtension(); String uri = builder.path("/pages/1.{ext}").buildAndExpand(ext).toUriString(); assertEquals("http://foo.com/rest/books/6/pages/1.json", result);
null
public ServletUriComponentsBuilder cloneBuilder()
UriComponentsBuilder
UriComponentsBuilder
.cloneBuilder
in class UriComponentsBuilder
UriComponentsBuilder
object