2016-11-12 4 views
0

Я работаю над настольным приложением, в котором пользователь вводит слово, затем отображается его определение. Для этого я использую веб-сервис: DictService. Мой код работает нормально, единственная проблема заключается в том, что он не возвращает определение.WSDL Web Service для настольных приложений

Вот мой код:

«jTextField1», где пользователь записывает слово.

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {           
    String str = jTextField1.getText(); 
    System.out.println(define(str)); 
}   

Метод определения является:

private static WordDefinition define(java.lang.String word) { 
    com.aonaware.services.webservices.DictService service = new com.aonaware.services.webservices.DictService(); 
    com.aonaware.services.webservices.DictServiceSoap port = service.getDictServiceSoap(); 
    return port.define(word); 
} 

Например, когда я ввести слово "тест", выход: "[email protected]"

Я действительно не знаю, как это исправить, любая помощь будет принята с благодарностью. Спасибо.

РЕДАКТИРОВАТЬ:

Метод выводит список определений, в то время как я вывод только строка. Итак, я создал список для хранения всех определений. И я повторил его, чтобы вывести их.

Вот код, чтобы создать список и вывести его:

String str = jTextField1.getText(); 

    List<WordDefinition> definitions = new ArrayList<WordDefinition>(Arrays.asList(define(str))); 
    for (int i=0; i< definitions.size(); i++){ 
     System.out.println(Arrays.deepToString(definitions.get(i))); //i get an error here 
    } 

Теперь ошибка я получаю: «несовместимые типы: WordDefinition не могут быть преобразованы в Object []»

Как я могу исправить это?

ответ

0

Класс WordDefinition, очевидно, не имеет хорошего метода toString(). Вы должны явно доступа к члену возвращаемого значения:

System.out.println(define(str).getSomeValue()); 

Поскольку я не знаю, внутренности вашей базы я не могу дать больше советов.

+0

Я пробовал эту линию и все еще не работал. Какие внутренние органы вы хотите знать? – user3096716

+0

Я предполагаю, что класс WordDefinition имеет некоторые элементы, к которым можно получить доступ. Что не сработало? – Heri

+0

вот редактирование: я заметил, что метод define возвращает список определений. В то время как я выводил только строку. Поэтому мне нужно вывести весь список. Но я не знаю, как это сделать. – user3096716

 Смежные вопросы

  • Нет связанных вопросов^_^