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
Java “没有可用的持久性提供程序”;myDB“;在尝试以下发现的实现之后_Java_Gwt_Persistence_Eclipselink_Rpc - Fatal编程技术网

Java “没有可用的持久性提供程序”;myDB“;在尝试以下发现的实现之后

Java “没有可用的持久性提供程序”;myDB“;在尝试以下发现的实现之后,java,gwt,persistence,eclipselink,rpc,Java,Gwt,Persistence,Eclipselink,Rpc,嗨,我在我的gwt项目上运行RPC方法时遇到了这个异常,我不明白为什么。。。 我使用EclipseLink和HSQLDB SEVERE: javax.servlet.ServletContext log: Exception while dispatching incoming RPC call com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract void it.pro

嗨,我在我的gwt项目上运行RPC方法时遇到了这个异常,我不明白为什么。。。 我使用EclipseLink和HSQLDB

SEVERE: javax.servlet.ServletContext log: Exception while dispatching incoming RPC call
com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract void     
 it.project.client.service.EmployeeService.createemployees()' threw an unexpected  
exception:javax.persistence.PersistenceException: No persistence providers available for
"myPU" after trying the following discovered implementations:  
org.datanucleus.api.jpa.PersistenceProviderImpl
at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:389)
这是电话: MyProject.java

    public class MyProject implements EntryPoint {  

     private final EmployeeServiceAsync aService = (EmployeeServiceAsync)             GWT.create(EmployeeService.class);

       @Override
       public void onModuleLoad() {

         aService.createemployee(new AsyncCallback<Void>() {
            @Override
            public void onFailure(Throwable caught) {
                Window.alert("Creation Employees failed!");
            }
            @Override
            public void onSuccess(Void result) {
                Window.alert("Creation success!");
            }
        });
package com.example.client.service;
  @RemoteServiceRelativePath("employeeService")
  public interface EmployeeService extends RemoteService{

  public void createemployee();
}
package com.example.server.ServiceImpl;
public class EmployeeServiceImpl extends RemoteServiceServlet implements EmployeeService              {

private static final long serialVersionUID = 1L;

public void createemployee() {

javax.persistence.EntityManagerFactory emf =      Persistence.createEntityManagerFactory("ronfPU");
javax.persistence.EntityManager em = emf.createEntityManager();


   try {
      // Create new Employee
      em.getTransaction().begin();
      Employee e1 = new Employee();
      e1.setName("admin");
      e1.setPassword("admin");
      em.persist(a1);
      em.getTransaction().commit();
   } 
   finally {
     em.close();
   }   
 }
}
EmployeeServiceImpl.java

    public class MyProject implements EntryPoint {  

     private final EmployeeServiceAsync aService = (EmployeeServiceAsync)             GWT.create(EmployeeService.class);

       @Override
       public void onModuleLoad() {

         aService.createemployee(new AsyncCallback<Void>() {
            @Override
            public void onFailure(Throwable caught) {
                Window.alert("Creation Employees failed!");
            }
            @Override
            public void onSuccess(Void result) {
                Window.alert("Creation success!");
            }
        });
package com.example.client.service;
  @RemoteServiceRelativePath("employeeService")
  public interface EmployeeService extends RemoteService{

  public void createemployee();
}
package com.example.server.ServiceImpl;
public class EmployeeServiceImpl extends RemoteServiceServlet implements EmployeeService              {

private static final long serialVersionUID = 1L;

public void createemployee() {

javax.persistence.EntityManagerFactory emf =      Persistence.createEntityManagerFactory("ronfPU");
javax.persistence.EntityManager em = emf.createEntityManager();


   try {
      // Create new Employee
      em.getTransaction().begin();
      Employee e1 = new Employee();
      e1.setName("admin");
      e1.setPassword("admin");
      em.persist(a1);
      em.getTransaction().commit();
   } 
   finally {
     em.close();
   }   
 }
}
这些是我构建路径的jar:

日食罐

gwt-servlet.jar

hsqldb.jar

javax.persistence_2.0.4.jar

persistence-api-sources-2.0.jar

smartgwt.jar


谢谢你的帮助

该错误似乎表明类路径上没有eclipselink.jar


尝试一个简单的Class.forName(“org.eclipse.persistence.jpa.PersistenceProvider”)

[错误]-第40行:类型类的forName(String)方法未定义…这意味着什么?