HelloAppクラスを修正する
では、HelloApp.javaを修正しましょう。次のようにソースコードを修正してください。書き換えたら、プログラムを実行し、入力フィールドに数字を記入してボタンをクリックし、どのようなテキストが表示されるか調べてみましょう。
package jp.tuyano.pivot; import org.apache.pivot.collections.Map; import org.apache.pivot.util.concurrent.*; import org.apache.pivot.web.GetQuery; import org.apache.pivot.wtk.*; import org.apache.pivot.wtk.text.*; import org.apache.pivot.wtkx.WTKXSerializer; public class HelloApp implements Application { private Window window; private Label msg; private TextInput input1; private PushButton button1; @Override public void startup(Display display, Map<String, String> map) throws Exception { WTKXSerializer serializer = new WTKXSerializer(); window = (Window)serializer.readObject(this, "HelloApp.wtkx"); msg = (Label)serializer.get("msg"); input1 = (TextInput)serializer.get("input1"); button1 = (PushButton)serializer.get("button1"); button1.getButtonPressListeners().add(new ButtonPressListener(){ @Override public void buttonPressed(Button btn) { msg.setText("load..."); String id = input1.getText(); GetQuery query = new GetQuery(【サーバー指定】, "/HelloPivot/getsample.php"); query.setSerializer(new PlainTextSerializer("utf-8")); query.getParameters().add("id", id); query.execute(new TaskAdapter<Object>(new TaskListener<Object>() { @Override public void taskExecuted(Task<Object> task) { msg.setText("loaded."); Document doc = (Document)task.getResult(); Paragraph para = (Paragraph)doc.get(0); Prompt.prompt(para.get(0).toString(), window); } @Override public void executeFailed(Task<Object> task) { msg.setText(task.getFault().getMessage()); } })); }}); window.open(display); } ……略…… }