Я хотел бы использовать D3.js (или, может быть, Raphaël) для созданных с помощью сервера отчетов, используя XSL-FO с Java. Эти библиотеки JavaScript должны использоваться по нескольким причинам:
- Они отображают более красивые диаграммы, чем то, что я видел из библиотек Java (IMO)
- Они поддерживают SVG и PNG (из того, что я знаю), что необходимо в XSL-FO
- Они также будут использоваться во внешних частях приложения. Повторное использование их также на бэкэнд с Java сократило бы кривые обучения разработчиков и базу данных кода.
Таким образом, использование любых похожих библиотек Java является менее благоприятным вариантом.
Теперь самый простой способ использовать D3.js с Java - использовать тяжелый инструмент, например selenium, чтобы отобразить фиктивную HTML-страницу и выполните в нем JavaScript. Но мне это кажется излишним.
Есть ли более простой способ выполнить этот вид JavaScript непосредственно в одном и том же Java-процессе? Я спрашиваю, потому что D3.js предназначен для работы в контексте HTML-документа. Я не уверен, что это возможно сделать с Rhino или другими реализациями сценариев Java