fluid-ws-java-client/src/main/java/com/fluidbpm/ws/client/v1/form/FormContainerClient.java
public Form executeCustomWebAction(
            String customWebActionParam,
            boolean isTableRecordParam,
            Long formContainerTableRecordBelowsToParam,
            Form formParam) {
        
        if(formParam != null && this.serviceTicket != null) {
            formParam.setServiceTicket(this.serviceTicket);
        }

        if(customWebActionParam == null || customWebActionParam.trim().isEmpty()){
            throw new FluidClientException(
                    "Custom Web Action is mandatory.",
                    FluidClientException.ErrorCode.FIELD_VALIDATE);
        }

        try {
            return new Form(this.postJson(
                    formParam, WS.Path.FormContainer.Version1.executeCustomWebAction(
                            customWebActionParam,
                            isTableRecordParam,
                            formContainerTableRecordBelowsToParam)));
        } catch (UnsupportedEncodingException unsEncExcept) {
            throw new FluidClientException(unsEncExcept.getMessage(),
                    unsEncExcept, FluidClientException.ErrorCode.IO_ERROR);
        }
    }
public Form executeCustomWebAction(
            String customWebActionParam,
            boolean isTableRecordParam,
            Long formContainerTableRecordBelowsToParam,
            Form formParam) {
        
        if(formParam != null && this.serviceTicket != null) {
            formParam.setServiceTicket(this.serviceTicket);
        }

        if(customWebActionParam == null || customWebActionParam.trim().isEmpty()){
            throw new FluidClientException(
                    "Custom Web Action is mandatory.",
                    FluidClientException.ErrorCode.FIELD_VALIDATE);
        }

        try {
            return new Form(this.postJson(
                    formParam, WS.Path.FormContainer.Version1.executeCustomWebAction(
                            customWebActionParam,
                            isTableRecordParam,
                            formContainerTableRecordBelowsToParam)));
        } catch (UnsupportedEncodingException unsEncExcept) {
            throw new FluidClientException(unsEncExcept.getMessage(),
                    unsEncExcept, FluidClientException.ErrorCode.IO_ERROR);
        }
    }
public Form executeCustomWebAction ( String customWebActionParam , boolean isTableRecordParam , Long formContainerTableRecordBelowsToParam , Form formParam ) { if ( formParam != null && this . serviceTicket != null ) { formParam . setServiceTicket ( this . serviceTicket ) ; } if ( customWebActionParam == null || customWebActionParam . trim ( ) . isEmpty ( ) ) { throw new FluidClientException ( "Custom Web Action is mandatory." , FluidClientException . ErrorCode . FIELD_VALIDATE ) ; } try { return new Form ( this . postJson ( formParam , WS . Path . FormContainer . Version1 . executeCustomWebAction ( customWebActionParam , isTableRecordParam , formContainerTableRecordBelowsToParam ) ) ) ; } catch ( UnsupportedEncodingException unsEncExcept ) { throw new FluidClientException ( unsEncExcept . getMessage ( ) , unsEncExcept , FluidClientException . ErrorCode . IO_ERROR ) ; } }
Execute the Custom Program with action alias {@code customWebActionParam}.
This method may be used for Form and Table Records.

@param customWebActionParam The custom web action name. Action identifier.
@param isTableRecordParam Is the form a table record form.
@param formContainerTableRecordBelowsToParam The parent form container if table record.
@param formParam The Form to send for 3rd Party execution.

@return Result after the 3rd Party Custom Web Action completed.

@see Field
@see Form
@see TableRecord
@see com.fluidbpm.program.api.vo.thirdpartylib.ThirdPartyLibrary
Execute the Custom Program with action alias { @code customWebActionParam } . This method may be used for Form and Table Records .