我正在使用 EclipseLink 、 hsqldb 和 GWT 编写一个带有 Eclipse 的项目。当我尝试做一个 RPC 时,我总是卡在这个异常上:
严重:javax.servlet.ServletContext 日志:调度传入 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
这是我执行 RPC的主文件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!");
}
});
我在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 ;持久性-api-sources-2.0.jar ;smartgwt.jar
请给我一些建议来解决这个异常......我被封锁了一周!!如果需要,请随时询问其他代码!