Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
gwt rpc+appengine+使用restlet的持久性抛出异常_Gwt_Google Cloud Datastore_Gwt Rpc_Restlet - Fatal编程技术网

gwt rpc+appengine+使用restlet的持久性抛出异常

gwt rpc+appengine+使用restlet的持久性抛出异常,gwt,google-cloud-datastore,gwt-rpc,restlet,Gwt,Google Cloud Datastore,Gwt Rpc,Restlet,我试图为GWT+GAE重建Restlet示例应用程序。 我改变了一点,因为我计划做一些不同的事情,但我认为这将是一个好的开始 直到现在,一切都很顺利。Put正在通过app engine,但当我尝试使用JPA持久化对象时,我遇到以下异常: Caused by: org.datanucleus.exceptions.ClassNotResolvedException: Class "de.fr1zle.shoplist.web.gae.client.ShoppingListRessourceProx

我试图为GWT+GAE重建Restlet示例应用程序。 我改变了一点,因为我计划做一些不同的事情,但我认为这将是一个好的开始

直到现在,一切都很顺利。Put正在通过app engine,但当我尝试使用JPA持久化对象时,我遇到以下异常:

Caused by: org.datanucleus.exceptions.ClassNotResolvedException: Class "de.fr1zle.shoplist.web.gae.client.ShoppingListRessourceProxy" was not found in the CLASSPATH. Please check your specification and your CLASSPATH.
    at org.datanucleus.JDOClassLoaderResolver.classForName(JDOClassLoaderResolver.java:250)
    at org.datanucleus.JDOClassLoaderResolver.classForName(JDOClassLoaderResolver.java:415)
    at org.datanucleus.metadata.MetaDataManager.loadPersistenceUnit(MetaDataManager.java:767)
    ... 79 more
如您所见,当从persistence.xml加载信息时,datanucleus以某种方式尝试访问GWT代理类。 我在ServerRessource中使用以下内容:

@Put
public void putShoppingList(ShoppingList shoppingList) {
    ShoppingListDOA shoppingListDOA = new ShoppingListDOA(shoppingList);
    EntityManagerFactory emf = Persistence
            .createEntityManagerFactory("transactions-optional");
    try {
        EntityManager entityManager = emf.createEntityManager();
        EntityTransaction transaction = entityManager.getTransaction();
        transaction.begin();
        entityManager.persist(shoppingListDOA);
        entityManager.flush();
        transaction.commit();
        entityManager.close();
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
        if (emf != null)
            emf.close();
    }
}
我有一种感觉,DataNucleus也增强了代理类,尽管我更改了属性使其不这样做

使用:GAE1.4.2也尝试了1.4.3、GWT2.2和Restlet 2.1m3

我是不是漏掉了一点?感谢您的帮助:-

提前谢谢


fr1zle

您的ShoppingList类中是否有任何关于您的ShoppingList SourceProxy的引用?例如,像一个公共静态定义。代理仅位于javascript编译的客户端路径上。