3

既存の GWT エディターの例をコピーして貼り付ける以外に、イライラすることはありません。これは、最小限のエディターを作成しようとする試みですが、成功しません。

public class ContactEditor extends Composite implements Editor<Contact> {

    interface Binder extends UiBinder<Widget, ContactEditor> {}

    interface ContactEditorDriver extends
        SimpleBeanEditorDriver<Contact, ContactEditor> {}
    private final ContactEditorDriver editorDriver;

    @UiField TextBox salutation;

    public ContactEditor(Contact contact) {
        editorDriver = GWT.create(ContactEditorDriver.class);
        editorDriver.initialize(this); 
        editorDriver.edit(contact);

        initWidget(GWT.<Binder> create(Binder.class).createAndBindUi(this));
    }
}

これがインスタンス化されると

ContactEditor contactEditor = new ContactEditor(new Contact());

UmbrellaException含む

Caused by: java.lang.NullPointerException: null
    at ...ContactEditor_SimpleBeanEditorDelegate.attachSubEditors(ContactEditor_SimpleBeanEditorDelegate.java:12)
    at com.google.gwt.editor.client.impl.AbstractEditorDelegate.initialize(AbstractEditorDelegate.java:264)
    at com.google.gwt.editor.client.impl.SimpleBeanEditorDelegate.initialize(SimpleBeanEditorDelegate.java:32)
    at com.google.gwt.editor.client.impl.AbstractSimpleBeanEditorDriver.edit(AbstractSimpleBeanEditorDriver.java:45)
    at ...ContactEditor.<init>(ContactEditor.java

ここで何が起こっているのか --- SubEditors? エラーは生成されたコードにあるようで、デバッグが困難です。

どうもありがとう。

4

1 に答える 1

4

エディタ ドライバを初期化する時点では、「挨拶」サブエディタはまだ初期化されていません (まだnull)。

createAndBindUiエディター呼び出しの前に呼び出しを移動しますinit

于 2011-05-07T00:48:19.140 に答える