post给出http错误代码415?

8dtrkrch  于 2021-06-27  发布在  Java
关注(0)|答案(1)|浏览(492)

我有以下几点 POST 使用的终结点 jax-rs 框架:

@POST
    @NoCache
    @Path("/{client}/email/template/type/{type}")
    public void sendEmail(
    @PathParam("client") String client,
    @PathParam("type") String communicationTemplateType) {
        emailService.sendEmail(client, communicationTemplateType);
    }

每当我点击这个端点时,我都会得到以下错误,错误代码为 415 :

JBWEB000135: The server refused this request because the request entity is in a format not supported by the requested resource for the requested method.

我的端点有什么问题?

m0rkklqb

m0rkklqb1#

在做了一些研究之后我修正了我以前的答案。。。
jax-rs规范支持@path(“/{client}/email/template/type/{type}”)。
如果jax-rs端点发布在“/”url下,那么像/c/email/template/type/t这样的请求应该与路径匹配。
通常按如下方式定义applicationpath:

@ApplicationPath("/") 
public class JaxRsActivator extends Application { }

另一种方法是在web.xml文件中发布端点的urlMap。
参考(雅加达ee 8):https://jakarta.ee/specifications/platform/8/apidocs/javax/ws/rs/applicationpath
参考(j2ee 7):https://docs.oracle.com/javaee/7/api/javax/ws/rs/applicationpath.html

相关问题