相关疑难解决方法(0)

Jersey 2.26:在 ResourceConfig bindFactory 中注册 @Inject 无法将工厂转换为供应商

现在我使用的球衣,我想注入GeneralForm映射到资源类方面,它接受所有application/jsonmultipart/form-dataapplication/x-www-form-urlencoded格式的提交。

我按照 Jersey 文档中指定的说明进行操作:

https://jersey.github.io/documentation/latest/ioc.html#d0e17033

通用表格.java

package cn.easecloud.jrf.provider;
import java.util.HashMap;

public class GeneralForm extends HashMap<String, Object> {
}
Run Code Online (Sandbox Code Playgroud)

通用表单工厂.java

package cn.easecloud.jrf.provider;

import org.glassfish.hk2.api.Factory;
import javax.inject.Inject;
import javax.servlet.http.HttpServletRequest;

public class GeneralFormFactory implements Factory<GeneralForm> {

    private final HttpServletRequest request;

    @Inject
    public GeneralFormFactory(HttpServletRequest request) {
        this.request = request;
    }

    @Override
    public GeneralForm provide() {
        GeneralForm result = new GeneralForm();
        return result;
    }

    @Override
    public void dispose(GeneralForm t) {
    }

}
Run Code Online (Sandbox Code Playgroud)

然后我将该工厂注册到我的 ResouceConfig 中:

package cn.cwhale.bowei; …
Run Code Online (Sandbox Code Playgroud)

java forms rest json jersey-2.0

4
推荐指数
1
解决办法
2475
查看次数

标签 统计

forms ×1

java ×1

jersey-2.0 ×1

json ×1

rest ×1