自定义arquillian arquillianresteasyresource应用程序路径-此url不支持错误http方法post

7d7tgy0s  于 2021-07-06  发布在  Java
关注(0)|答案(1)|浏览(350)

我的rest api在部署时工作正常,但我的测试在使用jersey arquillian扩展时失败:

@Test
@RunAsClient
public void postTest(@ArquillianResteasyResource final WebTarget webTarget) {

    MyRequest request = new MyRequest();

    String response = webTarget.path("/demo").request(MediaType.APPLICATION_JSON)
            .post(Entity.json(request)).readEntity(String.class);

    Assert.assertEquals("OK", response);

}

我得到一个错误:

Error HTTP method POST is not supported by this URL

我的jax-rs程序看起来不错:

@ApplicationPath("api")
public class JaxRsActivator extends Application {

}

@Path("/demo")
@Stateless
public class DemoResource extends BaseResource {

    @POST
    public Response demo(MyRequest request) {
        return Response.ok().entity("OK").build();
    }
}
m4pnthwp

m4pnthwp1#

的默认值 @ArquillianResteasyResourcerest ,但我的jaxrsactivator设置为 api .
为了解决这个问题,我使用了:

@ArquillianResteasyResource("api")

要获取完整的uri: webTarget.getUri()

相关问题