• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Web service provider, сложные типы

P

pikar05

Приветствую всех!
Прошу помощи по веб службе в lotus на java.
Хотелось бы, чтобы веб служба возвращала массив сложных типов, но не выходит.
Примерно так должно быть. Имеется класс
Java:
public class MyType {
    private String test="test";
    public String getTest(){
        return test;
    }
    public void setTest(String test){
        this.test=test;
    }
}
Класс веб-службы
Java:
public WebServiceClass {
    public List<MyType> getObjectList() {
        List<MyType> result=new ArrayList<MyType>();
        result.add(new MyType());
        return result;
    }
    public List<String> getStringList() {
        List<String> result = new ArrayList<String>();
        result.add("test");
        return result;
    }
}
Метод getStringList() работает, как надо, а вот getObjectList() возвращает пустоту.
Что нужно сделать, чтобы веб служба возвращала массив объектов?

PS Прошу сильно не пинать, веб службу делаю впервые :)
 

savl

Lotus Team
28.10.2011
2 599
311
BIT
192
ммм... возможно в свойствах веб-сервиса надо задать его тип общения RCP/encoded
1525343481436.png
 
P

pikar05

В этом случае (RPC/encoded) почему-то на стороне клиента ошибки (не лотус). Решилось забавно: просто добавил метод
Java:
public MyType getMyTypeNull {
    return null;
}

Теперь еще появилась проблема. Если в приведенном выше классе MyType добавить публичный метод, возвращающий массив (или коллекцию) объектов не примитивного типа (например, того же MyType), то на клиентской стороне он определяется как массив элементов типа Object, а хотелось бы того же, который был изначально.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!