Проблема с отображением URL Spring Rest API - PullRequest
0 голосов
/ 22 апреля 2020

Я моделирую проблему, как описано ниже:

Есть две функции преобразования и создания. Ниже приведен пример того же кода.

@RestController
@RequestMapping(value = "/products", produces = "application/json", consumes = "application/json")
public class ProductResourceImpl implements ProductResource {

    private final SomeFactory someFactory;

    public ProductResourceImpl(final SomeFactory someFactory) {
        this.someFactory = someFactory;
    }

    @Override
    @PostMapping(value = "/model/convert")
    public Product convert(@RequestBody ProductConversionRequest productConversionRequest) {
        // Do processing
    }

    @Override
    @PostMapping(value = "/model")
    public Product create(@RequestBody ProductCreateRequest productCreateRequest) {
        // Do processing
    }

Я также пробовал с различными порядками функций, но столкнулся с той же проблемой. И не понимаю, почему я сталкиваюсь с этой проблемой.

РЕДАКТИРОВАТЬ: Он работает для преобразования @PostMapping(value = "/model/convert"), но не работает для ящика @PostMapping(value = "/model") и когда я обновил создать конечную точку с @PostMapping(value = "/model/anything") это начало работать. Я не понимаю, почему он показывает ошибку для поста URL /products/model.

Ниже приведены журналы того же. Очень благодарен за ваши предложения и помощь заранее.

"Request method 'POST' not supported"
org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' not supported
    at org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping.handleNoMatch(RequestMappingInfoHandlerMapping.java:200) ~[spring-webmvc-5.1.8.RELEASE.jar:5.1.8.RELEASE]
    at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.lookupHandlerMethod(AbstractHandlerMethodMapping.java:419) ~[spring-webmvc-5.1.8.RELEASE.jar:5.1.8.RELEASE]
    at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.getHandlerInternal(AbstractHandlerMethodMapping.java:365) ~[spring-webmvc-5.1.8.RELEASE.jar:5.1.8.RELEASE]
    at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.getHandlerInternal(AbstractHandlerMethodMapping.java:65) ~[spring-webmvc-5.1.8.RELEASE.jar:5.1.8.RELEASE]
...