Вывод wsdl2java выдает только имя пакета - PullRequest
0 голосов
/ 23 октября 2018

Я использовал пример WSDL в моем коде Java.когда я пытаюсь распечатать вывод, он возвращает только имя пакета, например:

com.holidaywebservice.holidayservice_v2.CountryCode@6b6478

Это происходит только тогда, когда вывод был списком.

Часть моего кода:

HolidayService2 hs1= new HolidayService2();

HolidayService2Soap hss1=  hs1.getHolidayService2Soap();

ArrayOfCountryCode acc = hss1.getCountriesAvailable();

system.out.println(acc.getCountryCode());

URL WSDL: http://holidaywebservice.com/HolidayService_v2/HolidayService2.asmx?WSDL

1 Ответ

0 голосов
/ 23 октября 2018

С помощью этого com.holidaywebservice.holidayservice_v2.CountryCode@6b6478 вы пытаетесь напечатать объект ArrayOfCountryCode.Вместо этого ваш код должен быть:

package com.holidaywebservice.holidayservice_v2.clientsample;

import com.holidaywebservice.holidayservice_v2.*;

public class ClientSample {

    public static void main(String[] args) {
            //Create Web Service Client..."
            HolidayService2 service1 = new HolidayService2();
            //Create Web Service...
            HolidayService2HttpGet port1 = service1.getHolidayService2HttpGet();

            //call WS
            ArrayOfCountryCode acc =  port1.getCountriesAvailable();
            for(CountryCode cc : acc.getCountryCode()){
                System.out.println("Country code is: " + cc.getCode());
                System.out.println("Country code Description is: " + cc.getDescription());
            }
    }
}

Обновление Попробуйте просто добавить ниже

for(CountryCode cc : acc.getCountryCode()){
    System.out.println("Country code is: " + cc.getCode());
    System.out.println("Country code Description is: " + cc.getDescription());
}

После строки ArrayOfCountryCode acc = hss1.getCountriesAvailable(); в вашем текущем коде.Но вы видите суть этого, acc - это массив кодов стран.

...