Можно ли оценить репозиторий Jackrabbit, используя обычный HTTP?
-
13-09-2019 - |
Вопрос
Насколько я понимаю, он должен быть изначально доступен в Jackrabbit 1.6 (я нашел эту запись в блоге http://dev.day.com/microsling/content/blogs/main/jrnativehttp.html) но я не могу найти ни одного примера конфигурации.
Решение
В качестве упомянутая статья указывает (ссылка добавлена):
В любом случае, чтобы проверить это, запустите Автономный сервер Jackrabbit 1.6 и найдите описание и несколько примеров на http://localhost:8080/webdav-jcr.jsp
Если вы не используете автономный сервер, вы можете использовать дистрибутив Jackrabbit war.Тот Самый стандартный web.xml уже настроен для предоставления удаленного доступа JCR-over-webdav по адресу /server
, например.
Смотрите конфигурацию сервлета JCRWebdavServer в web.xml, используя JcrRemotingServlet - сервер отслеживания с пакетным чтением /записью (фактически реализовано и задокументировано в суперкласс с таким же названием):
<!-- ====================================================================== -->
<!-- J C R R E M O T I N G S E R V L E T -->
<!-- ====================================================================== -->
<servlet>
<servlet-name>JCRWebdavServer</servlet-name>
<description>
The servlet used to remote JCR calls over HTTP.
</description>
<servlet-class>org.apache.jackrabbit.j2ee.JcrRemotingServlet</servlet-class>
<init-param>
<param-name>missing-auth-mapping</param-name>
<param-value></param-value>
<description>
Defines how a missing authorization header should be handled.
1) If this init-param is missing, a 401 response is generated.
This is suiteable for clients (eg. webdav clients) for which
sending a proper authorization header is not possible if the
server never sent a 401.
2) If this init-param is present with an empty value,
null-credentials are returned, thus forcing an null login
on the repository.
3) If this init-param has a 'user:password' value, the respective
simple credentials are generated.
</description>
</init-param>
<!--
Optional parameter to define the value of the 'WWW-Authenticate' header
-->
<!--
<init-param>
<param-name>authenticate-header</param-name>
<param-value>Basic realm="Jackrabbit Webdav Server"</param-value>
<description>
Defines the value of the 'WWW-Authenticate' header.
</description>
</init-param>
-->
<init-param>
<param-name>resource-path-prefix</param-name>
<param-value>/server</param-value>
<description>
defines the prefix for spooling resources out of the repository.
</description>
</init-param>
<!--
Init parameters specific for JcrRemotingServlet
-->
<!--
<init-param>
<param-name>home</param-name>
<param-value></param-value>
<description>JcrRemotingServlet: Optional home directory for JcrRemotingServlet temporary files (default: "jackrabbit")</description>
</init-param>
<init-param>
<param-name>temp-directory</param-name>
<param-value></param-value>
<description>JcrRemotingServlet: Optional temporary directory name (under home, default: "tmp")</description>
</init-param>
-->
<init-param>
<param-name>batchread-config</param-name>
<param-value>/WEB-INF/batchread.properties</param-value>
<description>JcrRemotingServlet: Optional mapping from node type names to default depth.</description>
</init-param>
<load-on-startup>5</load-on-startup>
</servlet>