사용자가 단어를 입력 한 데스크톱 응용 프로그램에서 작업하고 있는데 그 정의가 표시됩니다. 이를 위해 DictService라는 웹 서비스를 사용하고 있습니다. 내 코드가 제대로 실행됩니다. 유일한 문제는 정의를 반환하지 않는다는 것입니다. 사용자가 단어를 쓰는 경우데스크톱 응용 프로그램 용 WSDL 웹 서비스
은 "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]"
저는이 문제를 해결하는 방법을 모릅니다. 도움을 주시면 대단히 감사하겠습니다. 고맙습니다.
EDIT :
있어서 I 출력 반면 단지 문자열 정의 목록을 출력한다. 그래서 모든 정의를 저장하는 목록을 만들었습니다. 그리고 출력하기 위해 반복했습니다.
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로 변환 할 수 없습니다"내가 어떻게 할 수있는 다음
는 목록과 출력을 생성하는 코드입니다 고쳐?
나는 그 라인을 시도했지만 여전히 작동하지 않았다. 어떤 내부 구조를 알고 싶습니까? – user3096716
WordDefinition 클래스에 액세스 할 수있는 멤버가 있다고 가정합니다. 무엇이 효과가 없었습니까? – Heri
여기 편집은 다음과 같습니다. define 메서드가 정의 목록을 반환합니다. 반면 난 단지 문자열을 출력합니다. 그래서 전체 목록을 출력해야합니다. 그러나 나는 그것을 어떻게하는지 모른다. – user3096716