Package org.springframework.web.servlet.resource

# Class LiteWebJarsResourceResolver

java.lang.Object
org.springframework.web.servlet.resource.AbstractResourceResolver
org.springframework.web.servlet.resource.LiteWebJarsResourceResolver

All Implemented Interfaces:
  `ResourceResolver`

public class LiteWebJarsResourceResolver extends AbstractResourceResolver
A `ResourceResolver` that delegates to the chain to locate a resource and then attempts to find a matching versioned resource contained in a WebJar JAR file.

This allows WebJars.org users to write version agnostic paths in their templates, like `<script src="/webjars/jquery/jquery.min.js"/>`. This path will be resolved to the unique version `<script src="/webjars/jquery/1.2.0/jquery.min.js"/>`, which is a better fit for HTTP caching and version management in applications.

This also resolves resources for version agnostic HTTP requests `"GET /jquery/jquery.min.js"`.

This resolver requires the `org.webjars:webjars-locator-lite` library on the classpath and is automatically registered if that library is present.

Since:
  6.2
Author:
  Sebastien Deleuze
See Also:
  - `ResourceChainRegistration`
  - webjars.org

## Field Summary

### Fields inherited from class org.springframework.web.servlet.resource.AbstractResourceResolver

`logger`

## Constructor Summary

Constructors
Constructor
Description
`LiteWebJarsResourceResolver()`
Create a `LiteWebJarsResourceResolver` with a default `WebJarVersionLocator` instance.
`LiteWebJarsResourceResolver(org.webjars.WebJarVersionLocator webJarVersionLocator)`
Create a `LiteWebJarsResourceResolver` with a custom `WebJarVersionLocator` instance, for example, with a custom cache implementation.

## Method Summary

Modifier and Type
Method
Description
`protected String`
`findWebJarResourcePath(String path)`
`protected org.springframework.core.io.Resource`
`resolveResourceInternal(HttpServletRequest request, String requestPath, List<? extends org.springframework.core.io.Resource> locations, ResourceResolverChain chain)`
`protected String`
`resolveUrlPathInternal(String resourceUrlPath, List<? extends org.springframework.core.io.Resource> locations, ResourceResolverChain chain)`

### Methods inherited from class org.springframework.web.servlet.resource.AbstractResourceResolver

`resolveResource, resolveUrlPath`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### LiteWebJarsResourceResolver

public LiteWebJarsResourceResolver()
Create a `LiteWebJarsResourceResolver` with a default `WebJarVersionLocator` instance.

### LiteWebJarsResourceResolver

public LiteWebJarsResourceResolver(org.webjars.WebJarVersionLocator webJarVersionLocator)
Create a `LiteWebJarsResourceResolver` with a custom `WebJarVersionLocator` instance, for example, with a custom cache implementation.

## Method Details

### resolveResourceInternal

@Nullable protected org.springframework.core.io.Resource resolveResourceInternal(@Nullable HttpServletRequest request, String requestPath, List<? extends org.springframework.core.io.Resource> locations, ResourceResolverChain chain)

Specified by:
  `resolveResourceInternal` in class `AbstractResourceResolver`

### resolveUrlPathInternal

@Nullable protected String resolveUrlPathInternal(String resourceUrlPath, List<? extends org.springframework.core.io.Resource> locations, ResourceResolverChain chain)

Specified by:
  `resolveUrlPathInternal` in class `AbstractResourceResolver`

### findWebJarResourcePath

@Nullable protected String findWebJarResourcePath(String path)