私は、テキストファイルのデータを配列に保存し、遅くGWTハイチャートにNumber型の配列として転送するアプリケーションを書いています。私は、ファイルから配列にデータを書き込むサーブレットを書いています。私はここで取り残されています。配列の内容をアプリケーションのクライアント部分に渡す方法がわかりません。これを行うためのすばやく簡単な方法はありますか?GWT RPC配列へのアクセス
私が書いたこのコード:
DataPointsImpl.java:
package com.pwste.gwt.server;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import com.google.gwt.user.server.rpc.RemoteServiceServlet;
import com.pwste.gwt.client.DataPoints;
public class DataPointsImpl extends RemoteServiceServlet implements DataPoints {
private static final long serialVersionUID = 1L;
@Override
public Number[] getDataPoints() throws IOException {
File dataFile = new File("points.txt");
FileReader dataFileReader = new FileReader(dataFile);
BufferedReader dataBufferedReader = new BufferedReader(dataFileReader);
Number[] arrayNumber = new Number[10000];
String dataString = dataBufferedReader.readLine();
for (int i = 0; i < arrayNumber.length; i++) {
arrayNumber[i] = Integer.parseInt(dataString);
dataString = dataBufferedReader.readLine();
}
dataBufferedReader.close();
return arrayNumber;
}
}
DataPoints.java:
package com.pwste.gwt.client;
import java.io.IOException;
import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
@RemoteServiceRelativePath("dataPoints")
public interface DataPoints extends RemoteService {
Number[] getDataPoints() throws IOException;
}
DataPointsAsync.java:
package com.pwste.gwt.client;
import com.google.gwt.user.client.rpc.AsyncCallback;
public interface DataPointsAsync {
void getDataPoints(AsyncCallback<Number[]> callback);
}
すでにRPCを設定します。今すぐクライアント側で呼び出すだけで、受信した配列をチャートに渡す必要があります。 http://www.gwtproject.org/doc/latest/tutorial/RPC.html#invokeの例 – Tobika
プライベートDataPoints dataPointsService = GWT.create(DataPoints.class);およびプライベートNumber [] dataTxtPointsを作成しました。 = new Number [10000]; 'クライアントサイドでは、arrayNumberからdataTxtPointsに値を渡す方法がわかりません。 – MarkTrait
El Hossはちょうどあなたに例を示しました。あなたは 'onSuccess'メソッドで結果をdataTxtPoints変数に代入することができます – Tobika