Requestfactory始终获取所有依赖项

时间:2011-10-10 22:04:38

标签: requestfactory gwt-2.4

当我使用requestfactory获取对象时,即使不使用with(),它也总是获取所有依赖项。 我创建了一个测试用例:

public class TestObjectC {

    String c;
    TestObjectB b;

    public TestObjectC() {
    }
    public String getC() {
        return c;
    }
    public void setC(String c) {
        this.c = c;
    }
    public TestObjectB getB() {
        return b;
    }
    public void setB(TestObjectB b) {
        this.b = b;
    }
}

public class TestObjectB {

    String b;
    TestObjectA a;

    public TestObjectB() {
    }
    public String getB() {
        return b;
    }
    public void setB(String b) {
        this.b = b;
    }
    public TestObjectA getA() {
        return a;
    }
    public void setA(TestObjectA a) {
        this.a = a;
    }
}

我的代理人是:

@ProxyForName(value = "com.myproject.testing.TestObjectC")
public interface TestObjectCProxy extends ValueProxy {

    public String getC();
    public void setC(String c);
    public TestObjectBProxy getB();
    public void setB(TestObjectBProxy b);

}

@ProxyForName(value = "com.myproject.testing.TestObjectB")
public interface TestObjectBProxy extends ValueProxy {

    public String getB();
    public void setB(String b);
    public TestObjectAProxy getEins();
    public void setEins(TestObjectAProxy eins);

}

当我发出请求时: requestFactory.myRequest()。getTest()                 .fire(新接收者(){

                @Override
                public void onSuccess(TestObjectCProxy response) {
                    System.out.println(response.getB());
                    System.out.println(response.getB().getB());
                }
            });
一切正常。我不应该得到Nullpointer-Exception吗? 我需要使用ProxyFor(...)因为代理项目与我的数据对象不同。我在服务器端使用Dependency-Injection来加载服务类。 这可能是一个问题吗?

此致 ·阿尔

1 个答案:

答案 0 :(得分:4)

虽然这并没有引起如此多人的兴趣,但答案可能对某人有所帮助。我不知道的是,ValueProxys总是带有所有属性。如果需要延迟提取,则只能使用EntityProxys。