3

さて、GWTは私がやりたいことをサポートするはずなので、これは本当に迷惑になります。すでに2回質問し、Webを検索しましたが、問題の解決策が見つかりません。

私がやりたいのは、サーバーから次のようなテキストファイルをロードすることです。

<!-- linear_regression.txt -->
<h1>Linear Regression</h1>
Welcome to this chapter. Here, have a graph:
<div id="whatever"></div>
Alright, now have some math stuff:

そして、Widget-私の場合は折れ線グラフ-をdivに配置し<div id="whatever">ます。私はいくつかのことを試みました。


RPCのメソッド内onSuccess()で、次のようなことをしたいと思います。

public void onSuccess(String result) {

    HTMLPanel tmp = new HTMLPanel(result);
    Element el = tmp.getElementById("whatever");

    el.appendChild(new LineChart().asWidget().getElement());

    contentRoot.add(tmp);
}

そのようにすると、結果は次のようになります。

<div id="whatever">
    <!-- Here I want the chart to be placed but all I get is this: -->
    <div></div> 
</div>

他のアプローチは次のようになります。

    HTMLPanel tmp = new HTMLPanel(result);
    contentHome.add(tmp);

    Element el = RootPanel.get("whatever").getElement();
    el.appendChild(new LineChart().asWidget().getElement());

しかし、ここで私はキャッチされていない例外を受け取ります:

java.lang.AssertionError: A widget that has an existing parent widget 
may not be added to the detach list
    at com.google.gwt.user.client.ui.RootPanel.detachOnWindowClose(RootPanel.java:136)
    at com.google.gwt.user.client.ui.RootPanel.get(RootPanel.java:211)
    at ew.client.layout.MainLayout$1.onSuccess(MainLayout.java:95)
    at ew.client.layout.MainLayout$1.onSuccess(MainLayout.java:1)
    ...

私は本当にこの問題にうんざりしています。誰かが私がこの問題を解決する方法を知っていますか?

4

1 に答える 1

7

で包みdivますHTLMPanel

LineChart lineChart = new LineChart();
HTMLPanel panel = new HTMLPanel(result);
panel.add(lineChart, "whatever");
于 2013-03-21T13:26:30.897 に答える