DataGrid и Table - копирование выделенной ячейки

Доброго дня! Есть ли способ в jmix в компонентах DataGrid и Table скопировать в буфер обмена значение из выделенной ячейки, не сущность целиком, а именно данные из той ячейки, которая выделенная. В руководстве пока нашел только ClipboardTrigger, но если делать через него, программно это не работает. Мои действия: получаю объект с помощью DataGrid.ItemClickEvent методом event.getItem(), получаю id столбца: event.getColumnId(), получаю класс объекта item.getClass(), с помощью id столбца генерирую метод get: aClass.getMethod(methodName) и выполняю его method.invoke(item), получаю имя составного объекта metadataTools.getInstanceName(result), и устанавливаю его в текстовое поле для ClipboardTrigger copyField.setValue(name). В ClipboardTrigger соответственно указаны кнопка и поле: copyBtn, copyField. В таблице создаю действие и в эвенте onDocumentsTableCopy(Action.ActionPerformedEvent event) выполняю copyBtn.click(), но ничего не происходит, хотя если нажать на кнопку в экране, происходит копирование. К тому же данный подход на мой взгляд имеет множество недостатков, есть ли способ сделать это проще?

У DataGrid и Table и того, что на их основе - есть свойство textSelectionEnabled.
Оно отвечает за возможность выделения текста в ячейке.
После выделения стандартное Ctrl+C копирует выделенное в буфер.
image

Это не совсем то, что нужно, т.к. хотелось бы тоже поведение добавить в Action у таблицы. Есть ли еще варианты?
Снимок экрана от 2023-03-27 10-09-26

Можно использовать JavaScript

JavaScript.getCurrent().execute(
                    "navigator.clipboard.writeText('${
                        <your data>
                    }');"
            )

При этом тк Текст копируется при помощи js navigator.clipboard.writeText. Требуется чтоб ваш сайт был безопасным источником — либо HTTPS, либо локальный хост

Благодарю за ответ, все же больше интересует как это сделать средствами java и jmix.

Я использовал JavaScript по аналогии с примером выше:

import com.vaadin.server.Page;

    @Subscribe("documentsTable.copy")
    public void onDocumentsTableCopy(Action.ActionPerformedEvent event) {
        ...
        String txt= metadataTools.getInstanceName(result);
        Page.getCurrent().getJavaScript().execute("navigator.clipboard.writeText(\"" + txt + "\");");
    }