Java 客观化未过滤的负荷组参考<&燃气轮机;数据

Java 客观化未过滤的负荷组参考<&燃气轮机;数据,java,google-cloud-endpoints,objectify,Java,Google Cloud Endpoints,Objectify,我正在使用Objectify的Google云端点为我的移动应用程序创建一个Java后端。除了返回完整的JSON树(即使在我使用Objectify加载组时也是如此)之外,一切都很好。例如,树的子集包括具有地址和楼层列表的建筑类: public class Building { @Load(Everything.class) private Ref<Address> address; @Load(Lite.class}) private List<

我正在使用Objectify的Google云端点为我的移动应用程序创建一个Java后端。除了返回完整的JSON树(即使在我使用Objectify加载组时也是如此)之外,一切都很好。例如,树的子集包括具有地址和楼层列表的建筑类:

public class Building {

    @Load(Everything.class)
    private Ref<Address> address;

    @Load(Lite.class})
    private List<Ref<Floor>> floors = new ArrayList<Ref<Floor>>();

    public Address getAddress() {
        return Deref.deref(address);
    }

    public List<Floor> getFloors() {
        return Deref.deref(floors);
    }

}

public class BuildingEndpoint {

    @ApiMethod(name = "building.getLite", path = "building_get_lite")
    public Building getLite(@Named("id") Long id) {     

    Building building = ofy().load().group(Lite.class).type(Building.class).id(id).now();

    return building;
    }

}
公共类建筑{
@加载(所有内容.类)
专用参考地址;
@加载(Lite.class})
私有列表层=新的ArrayList();
公共广播getAddress(){
返回Deref.Deref(地址);
}
公共列表getFloors(){
退单退单(楼层);
}
}
公共类构建点{
@ApiMethod(name=“building.getLite”,path=“building\u get\u lite”)
公共建筑getLite(@Named(“id”)Long id){
Building Building=ofy().load().group(Lite.class).type(Building.class).id(id).now();
回归大厦;
}
}
根据Objectify文档,应该加载地址,而不是楼层,但是,所有内容都在加载(以及楼层的子类,一直到对象层次结构的下方)

为了以防万一,Deref是个问题,我将其包括在这里:

public class Deref {

    public static class Func<T> implements Function<Ref<T>, T> {
        public static Func<Object> INSTANCE = new Func<Object>();

        @Override
        public T apply(Ref<T> ref) {
            return deref(ref);
        }
    }

    public static <T> T deref(Ref<T> ref) {
        return ref == null ? null : ref.get();
    }

    @SuppressWarnings({ "unchecked", "rawtypes" })
    public static <T> List<T> deref(List<Ref<T>> reflist) {
        return Lists.transform(reflist, (Func)Func.INSTANCE);
    }
}
公共类定义{
公共静态类Func实现函数{
public static Func INSTANCE=new Func();
@凌驾
公众不适用(参考){
返回deref(ref);
}
}
公共静态温度(参考){
return ref==null?null:ref.get();
}
@SuppressWarnings({“unchecked”,“rawtypes”})
公共静态列表deref(列表reflist){
返回Lists.transform(reflist,(Func)Func.INSTANCE);
}
}

对于为什么加载组不起作用,而整个对象层次结构仍在加载,我们非常感谢您提供的任何见解。

您是否找到了解决方案,或者您是否仍然遇到了这个问题?你是不是在学习这方面的教程?