【问题标题】:Robot framework call soap method with Array parameter机器人框架调用带有数组参数的soap方法
【发布时间】:2014-11-21 08:18:10
【问题描述】:

我有一个带有方法的 Java Soap 服务

public void helloStudentsName(String[] names)

和用户机器人框架(SudsLibrary)来调用它,因为我没有在机器人中使用数组,所以我在代码中使用列表

 ${names}    Create List    name1    name2    name3
    Call Soap Method    helloStudentsName    ${names}

我有错误

TypeNotFound: Type not found: 'arg0'

并在列表声明中用@替换$

@{names}    Create List    name1    name2    name3
    Call Soap Method    helloStudentsName    @{names}

没有错误,但在 Java 方法中接收到一个空数组。

你能告诉我如何调用这个方法吗?

【问题讨论】:

    标签: robotframework


    【解决方案1】:

    我认为您需要创建一个特殊的 WSDL 数组对象,而不是使用普通的机器人列表。 SudsLibrary 对此有一个关键字,并在示例中使用它。

    假设您的 WSDL 定义了一个 ArrayOfString 类型,您可能会这样做:

    | | ${string array}= | Create Wsdl Object | ArrayOfString
    | | Append To List | ${string array} | name1
    | | Append To List | ${string array} | name2
    | | Append To List | ${string array} | name3
    | | ${result}= | Call Soap Method | helloStudentsName | ${string array}
    

    这仅在您的 WSDL 定义了ArrayOfString 类型时才有效。您的实际 WSDL 可能使用其他名称来称呼它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-05
      • 2011-12-15
      • 1970-01-01
      • 2016-02-02
      • 1970-01-01
      • 1970-01-01
      • 2013-07-17
      相关资源
      最近更新 更多