From 3678fbe6992a249ab6cdd0b088a45825b991ed38 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Thu, 19 Nov 2009 22:38:53 +0000 Subject: [PATCH] Use jackrabbit as webdav server git-svn-id: https://svn.argeo.org/commons/trunk@3130 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- .../org.argeo.sandbox.jackrabbit/pom.xml | 6 +- .../src/main/java/webdav/WebDavTest.java | 23 +- .../log4j.properties | 4 +- .../pom.xml | 23 ++ server/dep/pom.xml | 1 + .../META-INF/spring/jackrabbit-osgi.xml | 3 +- .../repository.xml | 272 ++++++++++-------- .../META-INF/MANIFEST.MF | 6 +- .../WEB-INF/applicationContext.xml | 2 - .../WEB-INF/config.xml | 197 +++++++++++++ .../WEB-INF/web.xml | 6 +- .../WEB-INF/webdav-servlet.xml | 29 ++ server/modules/pom.xml | 11 +- 13 files changed, 443 insertions(+), 140 deletions(-) create mode 100644 server/dep/org.argeo.server.dep.jackrabbit.server/pom.xml create mode 100644 server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/config.xml create mode 100644 server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/webdav-servlet.xml diff --git a/sandbox/runtime/org.argeo.sandbox.jackrabbit/pom.xml b/sandbox/runtime/org.argeo.sandbox.jackrabbit/pom.xml index ba6505609..428f79044 100644 --- a/sandbox/runtime/org.argeo.sandbox.jackrabbit/pom.xml +++ b/sandbox/runtime/org.argeo.sandbox.jackrabbit/pom.xml @@ -42,8 +42,10 @@ - org.argeo.dep.osgi - org.argeo.dep.osgi.jackrabbit + org.argeo.commons.server + org.argeo.server.dep.jackrabbit.server + 0.1.2-SNAPSHOT + pom org.argeo.commons.basic diff --git a/sandbox/runtime/org.argeo.sandbox.jackrabbit/src/main/java/webdav/WebDavTest.java b/sandbox/runtime/org.argeo.sandbox.jackrabbit/src/main/java/webdav/WebDavTest.java index 6ef840b88..cb8a97ad2 100644 --- a/sandbox/runtime/org.argeo.sandbox.jackrabbit/src/main/java/webdav/WebDavTest.java +++ b/sandbox/runtime/org.argeo.sandbox.jackrabbit/src/main/java/webdav/WebDavTest.java @@ -1,5 +1,7 @@ package webdav; +import java.io.FileInputStream; + import org.apache.commons.httpclient.Credentials; import org.apache.commons.httpclient.HostConfiguration; import org.apache.commons.httpclient.HttpClient; @@ -7,6 +9,8 @@ import org.apache.commons.httpclient.HttpConnectionManager; import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager; import org.apache.commons.httpclient.UsernamePasswordCredentials; import org.apache.commons.httpclient.auth.AuthScope; +import org.apache.commons.httpclient.methods.InputStreamRequestEntity; +import org.apache.commons.httpclient.methods.RequestEntity; import org.apache.commons.httpclient.params.HttpConnectionManagerParams; import org.apache.jackrabbit.webdav.client.methods.PutMethod; @@ -18,7 +22,7 @@ public class WebDavTest { public static void main(String[] args) { try { HostConfiguration hostConfig = new HostConfiguration(); - hostConfig.setHost("localhost", 8082); + hostConfig.setHost("localhost", 7070); // hostConfig. HttpConnectionManager connectionManager = new MultiThreadedHttpConnectionManager(); HttpConnectionManagerParams params = new HttpConnectionManagerParams(); @@ -26,17 +30,22 @@ public class WebDavTest { params.setMaxConnectionsPerHost(hostConfig, maxHostConnections); connectionManager.setParams(params); HttpClient client = new HttpClient(connectionManager); - Credentials creds = new UsernamePasswordCredentials("scanner1", - "scanner1"); + Credentials creds = new UsernamePasswordCredentials("demo", "demo"); client.getState().setCredentials(AuthScope.ANY, creds); client.setHostConfiguration(hostConfig); // return client; + String fileName = "test.xml"; PutMethod pm = new PutMethod( - "http://localhost:8082/webdav/scanner1_queque/uploader/image_" - + ".txt"); - String text = "this is the document content"; - pm.setRequestBody(text); + "http://localhost:7070/org.argeo.server.jackrabbit.webapp/default/" + + fileName); + // String text = "this is the document content"; + RequestEntity requestEntity = new InputStreamRequestEntity( + new FileInputStream(fileName)); + // pm.setRequestEntity(new StringRequestEntity(text, "text/plain", + // null)); + // pm.setRequestBody(text); + pm.setRequestEntity(requestEntity); client.executeMethod(pm); } catch (Exception e) { e.printStackTrace(); diff --git a/server/demo/org.argeo.server.demo.log4j/log4j.properties b/server/demo/org.argeo.server.demo.log4j/log4j.properties index b33daa9db..7e7963325 100644 --- a/server/demo/org.argeo.server.demo.log4j/log4j.properties +++ b/server/demo/org.argeo.server.demo.log4j/log4j.properties @@ -6,10 +6,12 @@ log4j.logger.org.argeo=DEBUG log4j.logger.org.hibernate=WARN log4j.logger.org.springframework=WARN -#log4j.logger.org.springframework.web=DEBUG +#log4j.logger.org.springframework.web=TRACE #log4j.logger.org.springframework.jms=WARN #log4j.logger.org.springframework.security=WARN +#log4j.logger.org.apache.jackrabbit=DEBUG + log4j.logger.org.apache.activemq=WARN log4j.logger.org.apache.activemq.transport=WARN log4j.logger.org.apache.activemq.ActiveMQMessageConsumer=INFO diff --git a/server/dep/org.argeo.server.dep.jackrabbit.server/pom.xml b/server/dep/org.argeo.server.dep.jackrabbit.server/pom.xml new file mode 100644 index 000000000..3483f2397 --- /dev/null +++ b/server/dep/org.argeo.server.dep.jackrabbit.server/pom.xml @@ -0,0 +1,23 @@ + + 4.0.0 + + org.argeo.commons.server + 0.1.2-SNAPSHOT + dep + .. + + org.argeo.server.dep.jackrabbit.server + pom + Dep Jack Rabbit Server + + + org.argeo.dep.osgi + org.argeo.dep.osgi.jackrabbit + + + org.springframework + org.springframework.web.servlet + + + \ No newline at end of file diff --git a/server/dep/pom.xml b/server/dep/pom.xml index be4529c8e..4b00416ac 100644 --- a/server/dep/pom.xml +++ b/server/dep/pom.xml @@ -15,5 +15,6 @@ org.argeo.server.dep.tomcat org.argeo.server.dep.ads org.argeo.server.dep.hibernate + org.argeo.server.dep.jackrabbit.server \ No newline at end of file diff --git a/server/modules/org.argeo.server.jackrabbit.repo/META-INF/spring/jackrabbit-osgi.xml b/server/modules/org.argeo.server.jackrabbit.repo/META-INF/spring/jackrabbit-osgi.xml index 5eccb0509..796c32dc5 100644 --- a/server/modules/org.argeo.server.jackrabbit.repo/META-INF/spring/jackrabbit-osgi.xml +++ b/server/modules/org.argeo.server.jackrabbit.repo/META-INF/spring/jackrabbit-osgi.xml @@ -6,6 +6,7 @@ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> - + \ No newline at end of file diff --git a/server/modules/org.argeo.server.jackrabbit.repo/repository.xml b/server/modules/org.argeo.server.jackrabbit.repo/repository.xml index 666919d28..abc40bba2 100644 --- a/server/modules/org.argeo.server.jackrabbit.repo/repository.xml +++ b/server/modules/org.argeo.server.jackrabbit.repo/repository.xml @@ -1,139 +1,167 @@ - + http://www.apache.org/licenses/LICENSE-2.0 Unless required by + applicable law or agreed to in writing, software distributed under the + License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR + CONDITIONS OF ANY KIND, either express or implied. See the License for + the specific language governing permissions and limitations under the + License. + --> - + - - - - + + + + - - - - - - - - + + + + + + + - - - - + + + + - - - - - - - + + + + + + + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + - - - - - - + + + + + + + - - - - - - + + + + + + diff --git a/server/modules/org.argeo.server.jackrabbit.webapp/META-INF/MANIFEST.MF b/server/modules/org.argeo.server.jackrabbit.webapp/META-INF/MANIFEST.MF index 70710eaf4..4be6e7f47 100644 --- a/server/modules/org.argeo.server.jackrabbit.webapp/META-INF/MANIFEST.MF +++ b/server/modules/org.argeo.server.jackrabbit.webapp/META-INF/MANIFEST.MF @@ -5,4 +5,8 @@ Import-Package: javax.jcr, javax.servlet, javax.servlet.http, javax.servlet.resources, - org.apache.jackrabbit.j2ee + org.apache.jackrabbit.j2ee, + org.springframework.osgi.web.context.support, + org.springframework.web.context, + org.springframework.web.servlet.handler, + org.springframework.web.servlet diff --git a/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/applicationContext.xml b/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/applicationContext.xml index d2403d92b..c0a2d6f7a 100644 --- a/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/applicationContext.xml +++ b/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/applicationContext.xml @@ -8,6 +8,4 @@ http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd"> - - \ No newline at end of file diff --git a/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/config.xml b/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/config.xml new file mode 100644 index 000000000..f562d766e --- /dev/null +++ b/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/config.xml @@ -0,0 +1,197 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + nt:file + nt:resource + + + + + + + + + + + + + rep + jcr + + + + + + + diff --git a/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/web.xml b/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/web.xml index 058c18ce4..ab22d2cc4 100644 --- a/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/web.xml +++ b/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/web.xml @@ -22,7 +22,7 @@ - Webdav + webdav org.springframework.web.servlet.DispatcherServlet contextClass @@ -32,8 +32,8 @@ - Webdav - /repository/* + webdav + /default/* diff --git a/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/webdav-servlet.xml b/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/webdav-servlet.xml new file mode 100644 index 000000000..dfc089753 --- /dev/null +++ b/server/modules/org.argeo.server.jackrabbit.webapp/WEB-INF/webdav-servlet.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + webdavServlet + + + + + \ No newline at end of file diff --git a/server/modules/pom.xml b/server/modules/pom.xml index 52149289a..24c752354 100644 --- a/server/modules/pom.xml +++ b/server/modules/pom.xml @@ -1,4 +1,5 @@ - + 4.0.0 org.argeo.commons @@ -22,4 +23,12 @@ + + + org.argeo.commons.server + org.argeo.server.dep.jackrabbit.server + 0.1.2-SNAPSHOT + pom + + \ No newline at end of file -- 2.30.2