Interface IBeanValidatingElement<TData,​TElement extends IWorkflowElementEntity>

    • Method Detail

      • validateLocal

        default IWorkflowElementValidationResult validateLocal​(IElementLocalValidationParams<TData,​TElement> params)
                                                        throws WorkflowValidationException
        Description copied from interface: IElementHandler
        Performs a local validation of the given workflow workflow element properties. This method should only validate the properties of the given workflow element, without respect to any other workflow elements.

        This method allows you to implement custom validation logic. Consider using IBeanValidatingElement and annotating your properties model class with the annotation from the bean annotation API javax.validation. This also offers the advantage that it can be integrated into JSF, allowing you to use the same validations for the UI view as well.

        Specified by:
        validateLocal in interface IElementHandler<TData,​TElement extends IWorkflowElementEntity>
        Parameters:
        params - The properties to validate. Also provides access to the project, client etc.
        Returns:
        The result of the validation, i.e. whether the workflow element is valid, and a list of messages to display to the user. If this returns, this is treated as if a valid result without messages had been returned. You may use use params.getValidationContext().resultBuilder() to create the result, or implement the interface yourself. To indicate that the validation was performed, but no validation constraints were violated, simply call build on the result builder and return that, without adding any messages.
        Throws:
        WorkflowValidationException - When the validation could not be performed. Please note that this is meant for unexpected errors only - you should not throw an exception if a workflow element is simply just invalid.