最新バージョンで動作するGWTのプラグインがないように見えるため、HTML5データベースに挿入するためのJSNIメソッドをコーディングしようとしています。私はこの非常に単純なコードを持っています。これはGWTの外部で完全に機能しています。
public static native void database() /*-{
var db;
db = openDatabase('mydb', '1.0', 'Test DB', 2 * 1024 * 1024);
var msg;
db.transaction(function (tx) {
$wnd.alert("testing");
tx.executeSql('CREATE TABLE IF NOT EXISTS LOGS (id unique, log)');
tx.executeSql('INSERT INTO LOGS (id, log) VALUES (7, "foobar")');
tx.executeSql('INSERT INTO LOGS (id, log) VALUES (8, "logmsg")');
$wnd.alert("inserted");
});
}-*/;
「テスト中」のメッセージが表示されないため、GWTはdb.transactionビットを入力していないようですが、エラーは発生しません。
最初は$wndの配置の問題だと思い、$ wnd.db.transactionを実行しようとしても、何も機能していません。openDatabaseは機能しているようです。少なくとも、dbはデータベースオブジェクトとして表示されます。私は何が間違っているのですか?