gpt4 book ai didi

jax-rs - 为什么我无法访问 JAX-RS api?

转载 作者:行者123 更新时间:2023-12-02 08:44:56 27 4
gpt4 key购买 nike

我接到了一家公司的任务,该任务向我发送了一台已完成所有设置的虚拟机。任务是我必须创建一个 API 来从数据库中检索人员详细信息并显示它。

问题是,当我运行应用程序时,服务器返回一个包含 hello world 文本的 index.html。但是,当我尝试更改index.html时,它在浏览器中不会更改,但是当我通过 postman 请求时,我会得到“更新的”index.html。

我还意识到我无法访问我创建的 API,因此首先检查我是否可以访问 API。

index.html返回的路径为“http://hocalhost:8080/tutorial-applicans/

我的服务是PersonService.java:

import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

@Stateless
@Path("person")
public class PersonService{

@PersistenceContext(unitName = "de.erknrw_tutorial-applicants_pu")
private EntityManager em;

@GET
@Path("hello")
@Produces(MediaType.TEXT_PLAIN)
public String sayHello(){
return "Hello World!!!"
}


}



我试图得到“Hello World!!!”,但当我尝试“http://hocalhost:8080/tutorial-applicans/person/hello”时,我的路径是错误的。

可能值得一提的是,还有一个 JAXRSConfiguration.java 文件:

import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Applications;

@ApplicationPath(JAXRSConfiguration.RESTROOT)
public class JAXRSConfiguration extends Application{

public static final String RESTROOT = "webresources";
}


如何访问 sayHello()?路径是什么样的?

提前致谢

最佳答案

在 Web 应用程序上部署时,JAX-RS 应用程序被配置为 Servlet。因此,您必须在资源路径之前添加应用程序路径。

端点将是:

http://[server]:[port]/[context path]/[application path]/[resource path]/[operation path]

就您而言:

http://hocalhost:8080/tutorial-applicans/webresources/person/hello

关于jax-rs - 为什么我无法访问 JAX-RS api?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61144683/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com