0

我必须在 isis 中调用 api 并使用参数布局将对象列表作为参数传递。当我尝试将参数作为列表提供时,它会引发错误。

@Action()
    @CollectionLayout(named = "Add text fields")
    @MemberOrder(name = "Text field values",sequence = "3")     
    public List<TextField> addTextFieldValues(
            @ParameterLayout(named="Text field list")
            @Parameter(optionality=Optionality.OPTIONAL)
            final List<TextField> textFieldList) {
        List<TextField> updatedTextFields = new ArrayList<>();
        try {           
            for(TextField textField:textFieldList) {
                TextField textFieldObj = textFieldRepository.create(textField.getDatasource(), textField.getStructure(), textField.getTextLimit(), textField.getType(), textField.getSymbols(), textField.getObfuscate(), textField.getColumnLabel(), this);
                if (textFieldObj != null){               
                    messageService.informUser(String.format("Text Field value was successfully added"));
                    updatedTextFields.add(textFieldObj);
                }
                else {
                    messageService.raiseError(String.format("Adding text field value failed!.."));
                }
            }
        }
        catch (Exception e){
            messageService.raiseError(String.format("Adding text field value failed!.."));
        }
        return updatedTextFields;
    }

有没有办法将列表作为参数传递?任何帮助将非常感激。提前致谢。干杯。

4

1 回答 1

0

是的,尽管还需要提供支持的 autoComplete 或 selection 方法。

就像是:

public List<TextField> addTextFieldValues(List<TextField> textFieldList) { ... }

public List<TextField> autoComplete0AddTextFieldValues(String search) { ... }

有关更多信息,请参阅基础指南

于 2018-09-17T22:13:21.940 回答