我正在使用EclipseLink,hsqldb和GWT编写Eclipse项目。当我尝试执行RPC时,我总是遇到这个异常:
SEVERE:javax.servlet.ServletContext log:调度传入的RPC调用时出现异常 com.google.gwt.user.server.rpc.UnexpectedException:服务方法'public abstract void it.myProject.client.service.EmployeeService.createEmployee()'引发了一个意外的异常:javax.persistence.PersistenceException:没有可用的持久性提供程序>尝试以下发现的实现后的“myDB”:org.datanucleus.api.jpa.PersistenceProviderImpl
这是我的主文件 myProject.java ,我执行RPC:
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!");
}
});
我已在 persistence.xml 中指定了我的数据库名称和提供程序:
<persistence-unit name="myDB" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
在我的构建路径中,我放了:eclipselink.jar; gwt-servlet.jar; hsqldb.jar; javax.persistence_2.0.4.jar; persistence-api-sources-2.0.jar; smartgwt.jar
请给我一些建议来解决这个例外......我已经被阻止了一周!!如果你需要,请随时询问其他代码!