通配符不能解析DispatcherServlet中的子目录

时间:2018-11-05 15:37:44

标签: java spring apache

我正在尝试创建一个restcontroller,它具有一些规则,用于使用路径变量映射URI。使用我当前的配置,它似乎将完全匹配我的url模式,但是如果我添加任何种类的子目录,它将不会被映射。查看我的配置

<servlet-mapping>
    <servlet-name>SpringMVC</servlet-name>
    <url-pattern>/proxy/*</url-pattern>
</servlet-mapping>

@RestController
@RequestMapping("/proxy")
public class ProxyController {

    @RequestMapping("")
    @ResponseBody
    public String test(HttpServletRequest request) throws URISyntaxException{
        LOG.info("base");
        return "done";
    }

    @RequestMapping("/testplace")
    @ResponseBody
    public String test2(HttpServletRequest request) throws URISyntaxException{
        LOG.info("base");
        return "done2";
    }

所以按localhost:8080 / app / proxy可以正确返回,但是localhost:8080 / app / proxy / testplace可以给我

  

“在名称为'SpringMVC'的DispatcherServlet中找不到带有URI [/ app / proxy / testplace]的HTTP请求的映射”

即使在启动时我可以看到

  

“将“ {[/ proxy / testplace /]}”映射到公共java.lang.String ProxyController(javax.servlet.http.HttpServletRequest)会引发java.net.URISyntaxException”

这里是否缺少设置或其他配置选项?

谢谢

0 个答案:

没有答案