【发布时间】:2020-02-12 15:18:27
【问题描述】:
我正在使用 maven 处理我的旧项目,试图实现一个 rest 项目,一切正常,突然,当我试图在邮递员中调用 url 时,我不断收到“404 not found”。 我不知道到底发生了什么,因为一切都很完美!!
我所做的是在 EJB 文件夹中创建了三个包 一个用于实体 一个用于接口 另一个用于服务 然后在 webproject 我创建了一个包含两个文件的包,一个用于 web 服务 另一个用于其余的激活器!
这是网络服务文件:
package crm.webservices;
import java.util.List;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import crm.entities.Product;
import crm.impl.ProductImpl;
@Path("products")
public class ProductWs {
@EJB
ProductImpl productImpl;
private final String status = "{\"status\":\"ok\"}";
@GET
@Produces(MediaType.APPLICATION_JSON)
@Path("allproducts")
public List<Product> getProducts()
{
return productImpl.allProducts();
}
}
第二个文件:
package crm.webservices;
import javax.ejb.Stateless;
import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;
@ApplicationPath("api")
@Stateless
public class RestActivator extends Application {
}
我是 Maven 的新手,我不知道到底发生了什么,因为正如我所提到的,一切都很好。 任何人都可以帮助我,我在这里被困了大约 3 个小时!
【问题讨论】:
-
可以添加您正在使用的 cURL 吗?
-
localhost:9080/projetcrm-web/api/products/allproducts(它正在工作)我不知道到底发生了什么!
-
我认为这不是 Maven 的问题。因为如果您的 Maven 不起作用,它应该在您的 IDE/控制台上显示出来。问题可能来自您的应用程序构建的路径。记得在路径中加上“/”,以备不时之需。
-
在创建另一个新的maven项目后解决,我猜我的问题是由其中一个依赖引起的。谢谢。
标签: java maven jpa jakarta-ee ejb