Couchdb отлично справляется с хранением и обслуживанием данных, но у меня возникли некоторые проблемы, связанные с обработкой данных на нем. Например, GWT имеет встроенную поддержку синхронных и асинхронных обратных вызовов, которые позволяют запускать произвольный код Java на сервере. Есть ли способ сделать что-то подобное с couchdb?
Например, я хотел бы создать и предоставить файл PDF, когда пользователь нажимает кнопку веб-приложения. В идеале рабочий процесс должен выглядеть примерно так:
- Пользователь вводит некоторые данные
- Пользователь нажимает кнопку генерации
- Вызов на сервер, и PDF генерируется на стороне сервера. Код сервера может быть написан на любом языке, но предпочтительно на Java.
- Когда генерация PDF завершена, пользователю предлагается загрузить и сохранить документ.
Есть ли способ сделать это с помощью готового couchdb, или для взаимодействия между веб-клиентом и кодом обработки данных бэкэнда требуется какое-либо дополнительное стороннее программное обеспечение?
РЕДАКТИРОВАТЬ: Похоже, я довольно плохо объяснил свой вопрос. Что меня интересует, так это обслуживание сервлетов из Couchdb по аналогии с тем, как вы можете обслуживать сервлеты Java вдоль боковых веб-страниц из файла war. Я использовал GWT в качестве примера, потому что он поддерживает совместную разработку сервлетов и кода на стороне клиента и сборку всего в один файл war. Мне было бы очень интересно что-то подобное, потому что это сделало бы развертывание полнофункциональных веб-сайтов быстрым благодаря репликации Couchdb.
Судя по всему, ответ на мой вопрос - нет, вы не можете подавать сервлеты из couchdb. База данных настроена для взаимодействий в стиле CRUD, и любые компоненты стиля сервлета должны обслуживаться либо по отдельности, либо опрашиваться в базе данных на предмет изменений и действовать соответственно.