Как использовать Markdown со ссылками в JSF?

Я разрабатываю веб-приложение JSF и хотел бы представить много документации, которая будет видна непосредственно в веб-приложении. Технически я хотел бы использовать язык Markdown и уже сделал первый опыт. В настоящее время я играю с библиотекой Java flexmark для рендеринга e. г. Строки HTML из документа уценки. Также это, кажется, работает нормально. Но что делать со ссылками на другие файлы md?

Если у меня есть часть уценки: See also [here](Background.md) Затем это будет отображаться правильно в HTML со ссылкой вида: See also <a href = "Background.md">here</a>.

Но как мне сказать моему веб-серверу, чтобы он реагировал на эту ссылку и обновлял документную часть страницы отображаемым md-файлом?

Мне нужно было бы вручную найти такие ссылки в сгенерированном HTML и изменить их на своего рода вызов JavaScript, сообщая моему серверу об отображении панели с использованием другого файла md.

Или я должен создать IFrame, чтобы внутри этого фрейма я мог перейти по ссылке на e. г. веб-сервлет, отображающий файлы md в новый HTML?

Но мне все это кажется несколько неуклюжим. Я пропустил более простое решение?

Вы можете использовать primefaces.org/showcase-ext/views/localized.jsf, который поддерживает Markdown.

Jasper de Vries 23.11.2022 12:58

Интересный. Но в центре внимания локализации находится локализация. Я не уверен, будут ли ссылки работать в этом решении иначе/лучше, чем e. г. флексмарк.

Martin Metz 23.11.2022 13:19

Большим преимуществом является то, что вы можете использовать его в качестве тега на своих страницах JSF. Никаких сторонних преобразований не требуется. Так что ссылки будут работать.

Jasper de Vries 23.11.2022 13:36
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
3
66
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Ладно, других ответов нет, поэтому отвечаю сам. Комментарий о расширении Primefaces с локализацией интересен, но слишком далек от моего внимания, а некоторые функции не совсем соответствуют моим требованиям.

Поэтому я остановился на чистой библиотеке уценки, а остальное сделал сам. Со ссылками все оказалось намного проще, чем ожидалось! В JavaScript вы можете очень легко обнаружить все ссылки на странице (document.links), перебрать их и просто установить функцию onclick (см. здесь).

Другие вопросы по теме