无法到达请求映射端点,所以我得到404错误



我创建了一个带有请求映射的新控制器"路线";但是无论我做什么,我都无法到达端点CCD_ 1。我总是得到404。

如何在不获取404的情况下访问端点路由?

@RestController
public interface RouteController {
@ApiOperation(value = "Add a route details to adapter", nickname = "addroute", notes = "Add route details to the table and Send it to ATLAS", tags = {
"route", })
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Successful Insertion into DB and Proceded for Transformation"),
@ApiResponse(code = 405, message = "Invalid Input") })
@RequestMapping(value = "/route", produces = { "application/json" }, consumes = {
"application/json" }, method = RequestMethod.POST)
public ResponseEntity<Void> createData(
@ApiParam(value = "Route Array", required = true) @Valid @RequestBody RouteArray routeArray) ;
}

实现类

public class RouteControllerImpl implements RouteController {
@Autowired
private RouteService routeService;

@Override
public ResponseEntity<Void> createData(@ApiParam(value = "Route Details", required = true) @Valid @RequestBody RouteArray routeArray) {
return new ResponseEntity<Void>(routeService.transformRoute(routeArray));
}

}

您需要更改实现中的一些内容。您不应该在OpenAPI api中使用@RestController,而应该使用@api注释。您应该在实现这个API的类上使用@RestController。

@Validated
@Api(
value = "route",
description = The Controller API"
)
public interface RouteController {
@ApiOperation(value = "Add a route details to adapter", nickname = "addroute", notes = "Add route details to the table and Send it to ATLAS", tags = {
"route", })
@ApiResponses(value = {
@ApiResponse(code = 200, message = "Successful Insertion into DB and Proceded for Transformation"),
@ApiResponse(code = 405, message = "Invalid Input") })
@RequestMapping(value = "/route", produces = { "application/json" }, consumes = {
"application/json" }, method = RequestMethod.POST)
public ResponseEntity<Void> createData(
@ApiParam(value = "Route Array", required = true) @Valid @RequestBody RouteArray routeArray) ;
}

实施:

@RestController
public class RouteControllerImpl implements RouteController {
@Autowired
private RouteService routeService;

@Override
public ResponseEntity<Void> createData(@Valid RouteArray routeArray) {
return new ResponseEntity<Void>(routeService.transformRoute(routeArray));
}

最新更新