You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by an...@apache.org on 2005/12/01 11:26:29 UTC
svn commit: r350222 - in
/incubator/jackrabbit/trunk/contrib/jcr-server/webapp/src:
java/org/apache/jackrabbit/j2ee/JCRWebdavServerServlet.java webapp/index.jsp
Author: angela
Date: Thu Dec 1 02:26:22 2005
New Revision: 350222
URL: http://svn.apache.org/viewcvs?rev=350222&view=rev
Log:
simple-server needs workspace name (see changes rev. 331281) -> adjusting index.jsp
Modified:
incubator/jackrabbit/trunk/contrib/jcr-server/webapp/src/java/org/apache/jackrabbit/j2ee/JCRWebdavServerServlet.java
incubator/jackrabbit/trunk/contrib/jcr-server/webapp/src/webapp/index.jsp
Modified: incubator/jackrabbit/trunk/contrib/jcr-server/webapp/src/java/org/apache/jackrabbit/j2ee/JCRWebdavServerServlet.java
URL: http://svn.apache.org/viewcvs/incubator/jackrabbit/trunk/contrib/jcr-server/webapp/src/java/org/apache/jackrabbit/j2ee/JCRWebdavServerServlet.java?rev=350222&r1=350221&r2=350222&view=diff
==============================================================================
--- incubator/jackrabbit/trunk/contrib/jcr-server/webapp/src/java/org/apache/jackrabbit/j2ee/JCRWebdavServerServlet.java (original)
+++ incubator/jackrabbit/trunk/contrib/jcr-server/webapp/src/java/org/apache/jackrabbit/j2ee/JCRWebdavServerServlet.java Thu Dec 1 02:26:22 2005
@@ -34,6 +34,7 @@
import javax.jcr.Repository;
import javax.servlet.ServletException;
+import javax.servlet.ServletContext;
/**
* JCRWebdavServerServlet provides request/response handling for the JCRWebdavServer.
@@ -48,11 +49,18 @@
/**
* Init parameter specifying the prefix used with the resource path.
*/
- public static final String INIT_PARAM_PREFIX = "resource-path-prefix";
+ public static final String INIT_PARAM_RESOURCE_PATH_PREFIX = "resource-path-prefix";
/** the 'missing-auth-mapping' init parameter */
public final static String INIT_PARAM_MISSING_AUTH_MAPPING = "missing-auth-mapping";
+ /**
+ * Servlet context attribute used to store the path prefix instead of
+ * having a static field with this servlet. The latter causes problems
+ * when running multiple
+ */
+ public static final String CTX_ATTR_RESOURCE_PATH_PREFIX = "jackrabbit.webdav.jcr.resourcepath";
+
private String pathPrefix;
private JCRWebdavServer server;
private DavResourceFactory resourceFactory;
@@ -73,8 +81,9 @@
super.init();
// set resource path prefix
- pathPrefix = getInitParameter(INIT_PARAM_PREFIX);
- log.debug(INIT_PARAM_PREFIX + " = " + pathPrefix);
+ pathPrefix = getInitParameter(INIT_PARAM_RESOURCE_PATH_PREFIX);
+ getServletContext().setAttribute(CTX_ATTR_RESOURCE_PATH_PREFIX, pathPrefix);
+ log.debug(INIT_PARAM_RESOURCE_PATH_PREFIX + " = " + pathPrefix);
txMgr = new TxLockManagerImpl();
subscriptionMgr = new SubscriptionManagerImpl();
@@ -187,5 +196,15 @@
*/
public String getAuthenticateHeaderValue() {
return DEFAULT_AUTHENTICATE_HEADER;
+ }
+
+ /**
+ * Returns the configured path prefix
+ *
+ * @return resourcePathPrefix
+ * @see #INIT_PARAM_RESOURCE_PATH_PREFIX
+ */
+ public static String getPathPrefix(ServletContext ctx) {
+ return (String) ctx.getAttribute(CTX_ATTR_RESOURCE_PATH_PREFIX);
}
}
Modified: incubator/jackrabbit/trunk/contrib/jcr-server/webapp/src/webapp/index.jsp
URL: http://svn.apache.org/viewcvs/incubator/jackrabbit/trunk/contrib/jcr-server/webapp/src/webapp/index.jsp?rev=350222&r1=350221&r2=350222&view=diff
==============================================================================
--- incubator/jackrabbit/trunk/contrib/jcr-server/webapp/src/webapp/index.jsp (original)
+++ incubator/jackrabbit/trunk/contrib/jcr-server/webapp/src/webapp/index.jsp Thu Dec 1 02:26:22 2005
@@ -1,17 +1,94 @@
<%@ page import="org.apache.jackrabbit.j2ee.SimpleWebdavServlet,
javax.jcr.Repository,
- org.apache.jackrabbit.j2ee.RepositoryAccessServlet"%><%
+ org.apache.jackrabbit.j2ee.RepositoryAccessServlet,
+ org.apache.jackrabbit.j2ee.JCRWebdavServerServlet"%><%
%><html>
<head>
-<title>Jackrabbit Examples</title>
+<title>Jackrabbit JCR-Server Contribution</title>
</head>
-<body>
-<ul>
-<li><a href="<%= request.getContextPath() %><%= SimpleWebdavServlet.getPathPrefix(pageContext.getServletContext()) %>/">Repository Browser</a></li>
-<%--
-<li><a href="<%= request.getContextPath() %>/example.jsp">Repository Servlet Example</a></li>
---%>
-</ul>
+<body style="font-family:monospace">
+<h1>JCR-Server Contribution</h1>
+<h3>JCR-Server contribution provides 2 views</h3><p/>
+<ol>
+ <li>
+ <b>Filebased View</b> (SimpleWebdavServlet)<p/>
+ Filebased ("Simple") WebDAV View to the JSR170 repository.<p/>
+ Enter the following URL to your WebDAV client:<br>
+ http://<<i>host</i>>:<<i>port</i>><%= request.getContextPath() %><%= SimpleWebdavServlet.getPathPrefix(pageContext.getServletContext()) %>/<<i>workspace name</i>>/
+ <p/>
+ <ul>
+ <li><a href="<%= request.getContextPath() %><%= SimpleWebdavServlet.getPathPrefix(pageContext.getServletContext()) %>/default/">Browser View</a></li>
+ <li>Context Path: <%= request.getContextPath() %></li>
+ <li>Resource Path Prefix: <%= SimpleWebdavServlet.getPathPrefix(pageContext.getServletContext()) %></li>
+ <li>Workspace Name: see /WEB-INF/repository/repository.xml (Default = 'default')</li>
+ <li>Source: /contrib/jcr-server/server/webdav/simple</li>
+ </ul>
+ <p/>
+ </li>
+ <li>
+ <b>Item View</b> (JCRServerServlet)<p/>
+ Itembased WebDAV View to the JSR170 repository, mapping the functionality
+ provided by JSR170 to WebDAV, in order to allow remoting of JSR170 via
+ WebDAV. Some more details regarding remoting are available as initial
+ draft "<a href="http://www.day.com/jsr170/server/JCR_Webdav_Protocol.zip">JCR_Webdav_Protocol.zip</a>".
+ In addition the implementation attempts to cover functionality of RFC 2518 and
+ its extensions wherever possible, namely<br>
+ <ul>
+ <li><a href="http://www.ietf.org/rfc/rfc2518.txt">RFC 2518 (WebDAV 1,2)</a></li>
+ <li><a href="http://www.ietf.org/rfc/rfc3253.txt">RFC 3253 (DeltaV)</a></li>
+ <li><a href="http://www.ietf.org/rfc/rfc3648.txt">RFC 3648 (Ordering)</a></li>
+ <li><a href="http://greenbytes.de/tech/webdav/draft-reschke-webdav-search-latest.html#rfc.section.1.5">Internet Draft WebDAV Search</a>.</li>
+ </ul>
+ <p/>
+ Enter the following URL to your WebDAV client:<br>
+ http://<<i>host</i>>:<<i>port</i>><%= request.getContextPath() %><%= JCRWebdavServerServlet.getPathPrefix(pageContext.getServletContext()) %>/
+ <p/>
+ <ul>
+ <li>Browser View: - Not Available - ("<%= request.getContextPath() %><%= JCRWebdavServerServlet.getPathPrefix(pageContext.getServletContext()) %>/")</li>
+ <li>Context Path: <%= request.getContextPath() %></li>
+ <li>Resource Path Prefix: <%= JCRWebdavServerServlet.getPathPrefix(pageContext.getServletContext()) %></li>
+ <li>Workspace Name: - Not required - (available workspaces are mapped as resources)</li>
+ <li>Source: /contrib/jcr-server/server/webdav/jcr</li>
+ </ul>
+ </li>
+</ol>
+<p/><p/>
+<h3>Basic overview</h3><p/>
+<ol>
+ <li><b>webdav module</b> (library only)<p/>
+ <ul>
+ <li>aim: JSR170 independent WebDAV library</li>
+ <li>packages: org.apache.jackrabbit.webdav</li>
+ </ul>
+ <p/>
+ </li>
+ <li><b>server module</b><p/>
+ <ul>
+ <li>aim: server and server-side WebDAV implementation</li>
+ <li>packages:
+ <br>- org.apache.jackrabbit.server
+ <br>- org.apache.jackrabbit.server.jcr = jcr-server specific server part
+ <br>- org.apache.jackrabbit.server.io = import/export
+ <br>- org.apache.jackrabbit.webdav.simple = simple (filebased) webdav implementation
+ <br>- org.apache.jackrabbit.webdav.jcr = jcr-server (itembased) webdav implementation
+ </li>
+ </ul>
+ <p/>
+ </li>
+ <li><b>webapp module</b> (jackrabbit-server)<p/>
+ <ul>
+ <li>aim: contains the webapp</li>
+ <li>packages: org.apache.jackrabbit.j2ee (servlets)</li>
+ </ul>
+ <p/>
+ </li>
+ <li><b>client module</b><p/>
+ <ul>
+ <li>aim: provide jcr-client and WebDAV transport layer for the client</li>
+ <li>packages: - Not Available -</li>
+ </ul>
+ </li>
+</ol>
<%
Repository rep = RepositoryAccessServlet.getRepository(pageContext.getServletContext());