Я смотрел на это в течение двух часов, но я не вижу, как batchid переменная может придумать, как «» (пустая строка, а не нулевой) в отладчике.@PathParam является Null
Я попытался удалить @ Produces/@ Использует аннотации, но не повезло.
Я использую POST командной строки Linux, которая выглядит следующим образом:
http POST http://localhost:8080/cr/feed/send-batch/550f9ef7-b586-4029-bf7d-4d0659a08707
Может кто-то определить свою ошибку?
import javax.enterprise.context.RequestScoped;
import javax.websocket.server.PathParam;
import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
@Path("/feed")
@RequestScoped
public class FeedHandler {
@POST
@Path("/send-batch/{batchid}")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public Response sendBatch(@PathParam("batchid") String batchid) {
}
Можете ли вы опубликовать также импортированные теги? Возможно, вы используете не проверенные аннотации. STH. например: import javax.ws.rs.Path; import javax.ws.rs.PathParam; И я не думаю, что вам нужно первое '/' на пути :-) – user3280180
Импортные заявления добавлены. На какой «/» вы ссылаетесь? Класс или аннотация метода. – EdgeCase
Требуется ли методу POST? Если вам просто нужен PathParam, вы также можете попробовать GET. – user3280180