Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么不是';我的spring boot@RequestMapping不工作吗?_Java_Spring_Spring Mvc_Spring Boot - Fatal编程技术网

Java 为什么不是';我的spring boot@RequestMapping不工作吗?

Java 为什么不是';我的spring boot@RequestMapping不工作吗?,java,spring,spring-mvc,spring-boot,Java,Spring,Spring Mvc,Spring Boot,我有以下资料: @RepositoryRestController public class DataSetController { @RequestMapping(value = "/cars/test", method = RequestMethod.GET) public String testFetch() { return "HELLO"; } } @RepositoryRestResource public interfac

我有以下资料:

@RepositoryRestController
public class DataSetController {

     @RequestMapping(value = "/cars/test", method = RequestMethod.GET)
        public String testFetch() {
         return "HELLO";

     }
}

@RepositoryRestResource
public interface DataSetRepository extends PagingAndSortingRepository<DataSet, Integer>, QueryDslPredicateExecutor<DataSet> {}
@RepositoryRestController
公共类数据集控制器{
@RequestMapping(value=“/cars/test”,method=RequestMethod.GET)
公共字符串testFetch(){
回复“你好”;
}
}
@存储资源
公共接口DataSetRepository扩展了分页和排序存储库,QueryDSL谓词执行器{}
启动时的日志显示以下内容:

@RepositoryRestController
public class DataSetController {

     @RequestMapping(value = "/cars/test", method = RequestMethod.GET)
        public String testFetch() {
         return "HELLO";

     }
}

@RepositoryRestResource
public interface DataSetRepository extends PagingAndSortingRepository<DataSet, Integer>, QueryDslPredicateExecutor<DataSet> {}
2015-08-21 18:49:46.050信息52448---[主要] o、 s.d.r.w.RepositoryRestHandlerMapping:已映射 “{[/cars/test],methods=[GET]}”到公共java.lang.String com.example.hello.dataset.DataSetController.testFetch()

我的配置中的基本uri是:

基本uri:/api

所以我应该能够得到localhost:8080/api/cars/test

但以下是我从日志中得到的信息:

2015-08-21 18:58:10.847警告52476---[nio-8080-exec-1] o、 s.web.servlet.PageNotFound:未找到HTTP的映射 在名为的DispatcherServlet中使用URI[/api/cars/test]请求 “dispatcherServlet”


为什么?

在配置中似乎没有正确设置基本URI
/api
,这就是dispatcher无法找到正确映射的原因

由于您的所有请求都将具有
/api
基础,因此我建议您向控制器添加@RequestMapping注释:

@RepositoryRestController
@RequestMapping("/api")
public class DataSetController {

}

您的基本URI
/api
似乎未在配置中正确设置,这就是dispatcher无法找到正确映射的原因

由于您的所有请求都将具有
/api
基础,因此我建议您向控制器添加@RequestMapping注释:

@RepositoryRestController
@RequestMapping("/api")
public class DataSetController {

}

您说过您在配置中使用了
base uri
,但它应该是
spring.data.rest.base uri

您说过您在配置中使用了
base uri
,但它应该是
spring.data.rest.base uri

这是正确的,它解决了我的问题,但是你知道为什么我的其他控制器会像预期的那样工作吗?我有一个应用程序配置,其中有spring.data.rest.base uri=/api。只是这个控制器没有像我帮助的那样正常工作。显然,spring.data.rest.*配置存在一个持续的问题(请参阅)。您是否扩展了
RepositoryRestMvcConfiguration
?这是正确的,它解决了我的问题,但您知道为什么我的其他控制器会按预期工作吗?我有一个应用程序配置,其中有spring.data.rest.base uri=/api。只是这个控制器没有像我帮助的那样正常工作。显然,spring.data.rest.*配置存在一个持续的问题(请参阅)。您是否扩展了
RepositoryRestMvcConfiguration