public <T extends UIComponent & Widget> WidgetBuilder initWithComponentLoad(String widgetClass, T widget, String targetId)
            throws IOException {

        return initWithComponentLoad(widgetClass, widget.resolveWidgetVar(context), widget.getClientId(context), targetId)
                .renderLifecycleCallbacks(widget);
    }
@param widgetClass   Constructor name of the widget
@param widgetVar     Name of the client side widget
@param id            Client id of the component
@param endFunction   If the init script is wrapped by a method and if the endFunction parentheses should be rendered.
@throws IOException if any IO exception occurs
@return              The current instance.
primefaces/src/main/java/org/primefaces/util/WidgetBuilder.java