我正在按照本指南尝试为我的Chrome打包应用获取数据库:http://code.google.com/p/gwt-mobile-webkit/wiki/DataServiceUserGuide
我已将gwt-html5-database.jar
添加到我的类路径中(它显示在Referenced Libraries下),我将<inherits name="com.google.code.gwt.database.Html5Database" />
放在我的gwt.xml中。
我在.client包中创建了MyDataService.java,它包含:
package com.example.myproject.client;
导入com.google.code.gwt.database.client.service。*;
@Connection(name =“myDatabase”,version =“1.0”,description =“My 数据库“,maxsize = 10000”公共接口MyDataService扩展 DataService {
@Update(“CREATE TABLE IF NOT EXISTS testtable(” +“id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,” +“adate INTEGER”)void initDatabase(VoidCallback回调); }
在我的主类Test.java中(在客户端包中),我有
package com.example.myproject.client;
import com.google.gwt.core.client.EntryPoint; import com.google.gwt.core.client.GWT;
公共类级别实现EntryPoint { MyDataService dbService = GWT.create(MyDataService.class); public void onModuleLoad(){}}
我相信我完全按照说明进行操作,但每次运行我的应用程序时都无效,并说[ERROR] [Test] Failed to create an instance of 'com.example.myproject.client.Test' via deferred binding
如果我删除MyDataService dbService = GWT.create(MyDataService.class);
,它会加载,所以我认为问题就在那里。有什么想法吗?
答案 0 :(得分:1)
您使用的是GWT
的哪个版本?我对2.4版本有同样的问题,但在2.0中一切正常。查看gwt-mobile-webkit
项目的issue和BuildingFromSource Wiki页面。该库似乎与GWT
的最新版本不兼容。