相关疑难解决方法(0)

使用Jersey 2.0进行依赖注入

从头开始没有任何以前的Jersey 1.x知识,我很难理解如何在我的Jersey 2.0项目中设置依赖注入.

我也明白HK2可用于Jersey 2.0,但我似乎无法找到有助于Jersey 2.0集成的文档.

@ManagedBean
@Path("myresource")
public class MyResource {

    @Inject
    MyService myService;

    /**
     * Method handling HTTP GET requests. The returned object will be sent
     * to the client as "text/plain" media type.
     *
     * @return String that will be returned as a text/plain response.
     */
    @GET
    @Produces(MediaType.APPLICATION_JSON)
    @Path("/getit")
    public String getIt() {
        return "Got it {" + myService + "}";
    }
}

@Resource
@ManagedBean
public class MyService {
    void serviceCall() {
        System.out.print("Service calls");
    }
}
Run Code Online (Sandbox Code Playgroud)

的pom.xml …

java dependency-injection jersey jersey-2.0 hk2

106
推荐指数
4
解决办法
9万
查看次数

泽西岛(REST)子资源CDI

我正在开发一个企业项目,该项目具有EJB模块和在GlassFish v3.1,Weld v1.1和Jersey上运行的Web项目.在EJB中,我定义了一个实体类Manufacturer并生成了一个会话Facade ManufacturerFacade.

在Web项目中,我希望Manufacturer通过REST 公开实例.为此,我创建了以下资源:

ManufacturersResource是一个容器资源,它返回存储在数据库中的所有制造商的列表.它通过注入ManufacturerFacade和调用findAll()方法来实现.缩写代码:

@RequestScoped
@Path("/manufacturer")
public class ManufacturersResource {

    @Inject
    private ManufacturerFacade manufacturerFacade;

    @GET
    @Produces("application/xml")
    public List<Manufacturer> getManufacturers() {
        return manufacturerFacade.findAll();
    }
}
Run Code Online (Sandbox Code Playgroud)

该资源还有一个子资源:

@Path("{id}")
public ManufacturerResource getManufacturer(@PathParam("id") String id) {
    return ManufacturerResource.getInstance(id, manufacturerFacade);
}
Run Code Online (Sandbox Code Playgroud)

ManufacturerFacade如下外观:

public class ManufacturerResource {

    @Inject
    private ManufacturerFacade manufacturerFacade;

    private long id;

    private ManufacturerResource(String id) {
        this.id = Long.parseLong(id);
    }

    public static ManufacturerResource getInstance(String id,) {
        return new …
Run Code Online (Sandbox Code Playgroud)

java rest jersey java-ee

8
推荐指数
1
解决办法
4036
查看次数

标签 统计

java ×2

jersey ×2

dependency-injection ×1

hk2 ×1

java-ee ×1

jersey-2.0 ×1

rest ×1