GWT-клиент "выдает исключение" вызывает проблему компиляции

Я пытаюсь использовать получить результат из API под названием j-calais, а затем выложить результат на веб-страницу, я пишу весь код в клиенте, но он не может скомпилировать правильно, не знаю почему??? пожалуйста помоги. исходный код, как показано ниже:

очевидной ошибки не возникает, но она не может быть успешно скомпилирована..... большое спасибо:

public void onModuleLoad () {// Создать таблицу для биржевых данных. stocksFlexTable.setText(0, 0, "Тип"); stocksFlexTable.setText(0, 1, "Имя");

// Assemble Add Stock panel.
addPanel.add(newSymbolTextBox);
addPanel.add(addStockButton);

// Assemble Main panel.
mainPanel.add(stocksFlexTable);
mainPanel.add(addPanel);
mainPanel.add(lastUpdatedLabel);

// Associate the Main panel with the HTML host page.
RootPanel.get("stockList").add(mainPanel);

// Move cursor focus to the input box.
newSymbolTextBox.setFocus(true);

// Прослушивание событий мыши на кнопке Add. addStockButton.addClickHandler(new ClickHandler() { public void onClick(событие ClickEvent) {

                        try {
                            addStock();
                        } catch (Exception e) {
                            e.printStackTrace();
                        }

  }
});
// Listen for keyboard events in the input box.
newSymbolTextBox.addKeyPressHandler(new KeyPressHandler() {
  public void onKeyPress(KeyPressEvent event) {
    if (event.getCharCode() == KeyCodes.KEY_ENTER) {  
            try {
                addStock();
            } catch (Exception e) {
                e.printStackTrace();
            }
  }
  }
});

}

private void addStock() throws Exception {
  final String url_s = newSymbolTextBox.getText().toUpperCase().trim();
  newSymbolTextBox.setFocus(true);
  newSymbolTextBox.setText("");
  int row = stocksFlexTable.getRowCount();


  CalaisClient client = new CalaisRestClient("ysw5rx69jkvdnzqf6sgjduqj");
    System.out.print("read success...\n");
     URL url = new URL(url_s);    
     CalaisResponse response = client.analyze(url);         
        for (CalaisObject entity : response.getEntities()) {
            System.out.println(entity.getField("_type") + ":" 
                               + entity.getField("name"));
            stocks.add(entity.getField("_type"));
            stocksFlexTable.setText(row, 0, entity.getField("_type"));
            stocksFlexTable.setText(row, 1, entity.getField("name"));
          }

        for (CalaisObject topic : response.getTopics()) {
            System.out.println(topic.getField("categoryName"));
          }

}

}

1 ответ

Решение

GWT обрабатывает только непроверенные исключения, поэтому вы можете генерировать исключения времени выполнения

или напишите свое собственное исключение, которое выходит за пределы Runtime Exception, тогда оно не вызовет никаких проблем во время компиляции

void f() throws NullPointerException // will not cause any problem because it is Runtime exception so unchecked

void f() throws IllegalAccessException // it is checked exception so there will be problem at compile time
Другие вопросы по тегам