Is RestyGWT可用于泛型和多态类



我很难在gwt中处理请求工厂。我可以使它与泛型和多态类一起工作。请参阅此处:

带有泛型的类型类的RequestFactory客户端继承

Gwt请求工厂。客户端上的泛型和继承

RequestFactory实体';s参数:列表<OfOtherEntity>在客户端上为null。服务器上的正常

我想换成restygwt作为运输层。这是一个新的应用程序,所以没有太多需要重写的地方。我原以为射频能满足我的需要,但不幸的是,我没能让它发挥作用。所以我在想Resty。

请告诉我它能和下面这样的泛型和多态类一起工作吗:

@MappedSuperclass
public  class GenericModel<T extends GenericModel<T>> implements Identifiable, Versionable {
    getId();
    getVersion();
}
@MappedSuperclass
public abstract class GenericDictionaryModel<T extends GenericModel<T>> extends GenericModel<T> {        getName();
    getActive();
}
@Entity class VocabularyDictionaryModel extends GenericDictionaryModel {
    someCustomeMethod();
}

public class GenericDao<T extends GenericModel<T>> {
    public List<GenericModel<T>> getList() {
        return JPA.em().createQuery("FROM " + entityClass.getSimpleName()).getResultList();
    }
}

public class GenericDictionaryDao<T extends GenericDictionaryModel<T>> extends GenericDao<T>{
    public List<GenericDictionaryModel<T>> getListOrderedByName() {
        try {
            return JPA.em()
                      .createQuery("FROM " + entityClass.getSimpleName() + " ORDER BY name")
                      .getResultList();
        } catch (ClassCastException e) {
            return new LinkedList<GenericDictionaryModel<T>>();
        }
    }
}
是的,在Resty中使用泛型应该没有问题。您必须稍微处理一下Jackson注释,才能使它们正确地继承。主要是CCD_ 1和CCD_。

请记住,你将不得不或多或少地自己处理错误处理。与rf相比,有相当多的代码可以让rest应用程序工作,但IMHO使您的API更易于移植到更多的平台类型。

下面是你所问问题的一个例子。我经常使用单元测试来解决一些边缘情况。

https://github.com/resty-gwt/resty-gwt/blob/master/restygwt/src/test/java/org/fusesource/restygwt/client/basic/ParameterizedTypeDTO.java

最新更新