exo-jcr SVN: r2796 - jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/command.
by do-not-reply@jboss.org
Author: dkatayev
Date: 2010-07-15 10:11:57 -0400 (Thu, 15 Jul 2010)
New Revision: 2796
Modified:
jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/command/GetCommand.java
Log:
EXOJCR-178 US locale added when parsing if-modified-since date
Modified: jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/command/GetCommand.java
===================================================================
--- jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/command/GetCommand.java 2010-07-15 13:59:11 UTC (rev 2795)
+++ jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/command/GetCommand.java 2010-07-15 14:11:57 UTC (rev 2796)
@@ -135,7 +135,7 @@
DateFormat dateFormat = new SimpleDateFormat(WebDavConst.DateFormat.IF_MODIFIED_SINCE_PATTERN, Locale.US);
Date lastModifiedDate = dateFormat.parse(lastModifiedProperty.getValue());
- dateFormat = new SimpleDateFormat(WebDavConst.DateFormat.MODIFICATION);
+ dateFormat = new SimpleDateFormat(WebDavConst.DateFormat.MODIFICATION, Locale.US);
Date ifModifiedSinceDate = dateFormat.parse(ifModifiedSince);
if(ifModifiedSinceDate.getTime() >= lastModifiedDate.getTime()){
13 years, 11 months
exo-jcr SVN: r2795 - jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/command.
by do-not-reply@jboss.org
Author: dkatayev
Date: 2010-07-15 09:59:11 -0400 (Thu, 15 Jul 2010)
New Revision: 2795
Modified:
jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/command/GetCommand.java
Log:
EXOJCR-178 US locale added when parsing if-modified-since date
Modified: jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/command/GetCommand.java
===================================================================
--- jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/command/GetCommand.java 2010-07-15 13:36:39 UTC (rev 2794)
+++ jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/command/GetCommand.java 2010-07-15 13:59:11 UTC (rev 2795)
@@ -136,7 +136,7 @@
DateFormat dateFormat = new SimpleDateFormat(WebDavConst.DateFormat.IF_MODIFIED_SINCE_PATTERN, Locale.US);
Date lastModifiedDate = dateFormat.parse(lastModifiedProperty.getValue());
- dateFormat = new SimpleDateFormat(WebDavConst.DateFormat.MODIFICATION);
+ dateFormat = new SimpleDateFormat(WebDavConst.DateFormat.MODIFICATION, Locale.US);
Date ifModifiedSinceDate = dateFormat.parse(ifModifiedSince);
if(ifModifiedSinceDate.getTime() >= lastModifiedDate.getTime()){
13 years, 11 months
exo-jcr SVN: r2794 - in jcr/trunk/exo.jcr.component.webdav/src: test/java/org/exoplatform/services/jcr/webdav/command and 1 other directory.
by do-not-reply@jboss.org
Author: dkatayev
Date: 2010-07-15 09:36:39 -0400 (Thu, 15 Jul 2010)
New Revision: 2794
Modified:
jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java
jcr/trunk/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestPropFind.java
Log:
EXOJCR-857 Only special characters in displayname property are decoded.
Modified: jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java
===================================================================
--- jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java 2010-07-15 13:28:41 UTC (rev 2793)
+++ jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java 2010-07-15 13:36:39 UTC (rev 2794)
@@ -26,6 +26,8 @@
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamWriter;
@@ -133,15 +135,21 @@
}
writeAttributes(xmlStreamWriter, prop);
-
- try
+
+ if (prop.getName().getLocalPart().equals("displayname") && containsEncodedChar(prop.getValue()))
{
- xmlStreamWriter.writeCharacters(URLDecoder.decode(prop.getValue(), "UTF-8"));
+ try
+ {
+ xmlStreamWriter.writeCharacters(URLDecoder.decode(prop.getValue(), "UTF-8"));
+ }
+ catch (UnsupportedEncodingException e)
+ {
+ e.printStackTrace();
+ }
+ } else {
+ xmlStreamWriter.writeCharacters(prop.getValue());
}
- catch (UnsupportedEncodingException e)
- {
- e.printStackTrace();
- }
+
xmlStreamWriter.writeEndElement();
}
}
@@ -165,5 +173,17 @@
xmlStreamWriter.writeAttribute(attrName, attrValue);
}
}
+
+ /**
+ * Checks if string contains encoded characters like %2f.
+ * @param str string to check.
+ * @return <code>true</code> if string contains encoded characters, otherwise returns <code>false</code>
+ */
+ private static boolean containsEncodedChar(String str){
+ Pattern p = Pattern.compile("%[0-9a-fA-F]{2}");
+ Matcher matcher = p.matcher(str);
+ return matcher.find();
+
+ }
}
Modified: jcr/trunk/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestPropFind.java
===================================================================
--- jcr/trunk/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestPropFind.java 2010-07-15 13:28:41 UTC (rev 2793)
+++ jcr/trunk/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestPropFind.java 2010-07-15 13:36:39 UTC (rev 2794)
@@ -161,7 +161,7 @@
- public void _testPropWithPercent() throws Exception
+ public void testPropWithPercent() throws Exception
{
String content = TestUtils.getFileContent();
String file = TestUtils.getFileName();
13 years, 11 months
exo-jcr SVN: r2793 - in jcr/branches/1.12.x/exo.jcr.component.webdav/src: test/java/org/exoplatform/services/jcr/webdav/command and 1 other directory.
by do-not-reply@jboss.org
Author: dkatayev
Date: 2010-07-15 09:28:41 -0400 (Thu, 15 Jul 2010)
New Revision: 2793
Modified:
jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java
jcr/branches/1.12.x/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestPropFind.java
Log:
EXOJCR-857 Only special characters in displayname property are decoded.
Modified: jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java
===================================================================
--- jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java 2010-07-15 09:23:57 UTC (rev 2792)
+++ jcr/branches/1.12.x/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java 2010-07-15 13:28:41 UTC (rev 2793)
@@ -26,6 +26,8 @@
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamWriter;
@@ -133,15 +135,21 @@
}
writeAttributes(xmlStreamWriter, prop);
-
- try
+
+ if (prop.getName().getLocalPart().equals("displayname") && containsEncodedChar(prop.getValue()))
{
- xmlStreamWriter.writeCharacters(URLDecoder.decode(prop.getValue(), "UTF-8"));
+ try
+ {
+ xmlStreamWriter.writeCharacters(URLDecoder.decode(prop.getValue(), "UTF-8"));
+ }
+ catch (UnsupportedEncodingException e)
+ {
+ e.printStackTrace();
+ }
+ } else {
+ xmlStreamWriter.writeCharacters(prop.getValue());
}
- catch (UnsupportedEncodingException e)
- {
- e.printStackTrace();
- }
+
xmlStreamWriter.writeEndElement();
}
}
@@ -165,5 +173,17 @@
xmlStreamWriter.writeAttribute(attrName, attrValue);
}
}
+
+ /**
+ * Checks if string contains encoded characters like %2f.
+ * @param str string to check.
+ * @return <code>true</code> if string contains encoded characters, otherwise returns <code>false</code>
+ */
+ private static boolean containsEncodedChar(String str){
+ Pattern p = Pattern.compile("%[0-9a-fA-F]{2}");
+ Matcher matcher = p.matcher(str);
+ return matcher.find();
+
+ }
}
Modified: jcr/branches/1.12.x/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestPropFind.java
===================================================================
--- jcr/branches/1.12.x/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestPropFind.java 2010-07-15 09:23:57 UTC (rev 2792)
+++ jcr/branches/1.12.x/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestPropFind.java 2010-07-15 13:28:41 UTC (rev 2793)
@@ -154,6 +154,30 @@
assertTrue(find.contains(authorProp));
assertTrue(find.contains(author));
}
+
+
+
+
+
+ public void testPropWithPercent() throws Exception
+ {
+ String content = TestUtils.getFileContent();
+ String file = TestUtils.getFileName();
+ TestUtils.addContent(session, file, new ByteArrayInputStream(content.getBytes()), nt_webdave_file, "");
+ String authorValue = "bla % bla";
+ TestUtils.addNodeProperty(session, file, authorProp, authorValue);
+ ContainerResponse responseFind =
+ service(WebDAVMethods.PROPFIND, getPathWS() + file, "", null, allPropsXML.getBytes());
+ assertEquals(HTTPStatus.MULTISTATUS, responseFind.getStatus());
+ ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
+ PropFindResponseEntity entity = (PropFindResponseEntity)responseFind.getEntity();
+ entity.write(outputStream);
+ String find = outputStream.toString();
+ assertTrue(find.contains("D:getlastmodified"));
+ assertTrue(find.contains(authorProp));
+ assertTrue(find.contains(authorValue));
+ }
+
@Override
protected String getRepositoryName()
13 years, 11 months
exo-jcr SVN: r2792 - jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml.
by do-not-reply@jboss.org
Author: dkatayev
Date: 2010-07-15 05:23:57 -0400 (Thu, 15 Jul 2010)
New Revision: 2792
Modified:
jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java
Log:
EXOJCR-857 PropertyWriteUtil.java reverted
Modified: jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java
===================================================================
--- jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java 2010-07-15 09:18:27 UTC (rev 2791)
+++ jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java 2010-07-15 09:23:57 UTC (rev 2792)
@@ -134,9 +134,14 @@
writeAttributes(xmlStreamWriter, prop);
- // xmlStreamWriter.writeCharacters(URLDecoder.decode(prop.getValue(), "UTF-8"));
- xmlStreamWriter.writeCharacters(prop.getValue());
-
+ try
+ {
+ xmlStreamWriter.writeCharacters(URLDecoder.decode(prop.getValue(), "UTF-8"));
+ }
+ catch (UnsupportedEncodingException e)
+ {
+ e.printStackTrace();
+ }
xmlStreamWriter.writeEndElement();
}
}
13 years, 11 months
exo-jcr SVN: r2791 - in jcr/trunk/exo.jcr.component.webdav/src: test/java/org/exoplatform/services/jcr/webdav/command and 1 other directory.
by do-not-reply@jboss.org
Author: dkatayev
Date: 2010-07-15 05:18:27 -0400 (Thu, 15 Jul 2010)
New Revision: 2791
Modified:
jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java
jcr/trunk/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestPropFind.java
Log:
EXOJCR-857 testPropWithPercent updated
Modified: jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java
===================================================================
--- jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java 2010-07-15 06:41:07 UTC (rev 2790)
+++ jcr/trunk/exo.jcr.component.webdav/src/main/java/org/exoplatform/services/jcr/webdav/xml/PropertyWriteUtil.java 2010-07-15 09:18:27 UTC (rev 2791)
@@ -134,14 +134,9 @@
writeAttributes(xmlStreamWriter, prop);
- try
- {
- xmlStreamWriter.writeCharacters(URLDecoder.decode(prop.getValue(), "UTF-8"));
- }
- catch (UnsupportedEncodingException e)
- {
- e.printStackTrace();
- }
+ // xmlStreamWriter.writeCharacters(URLDecoder.decode(prop.getValue(), "UTF-8"));
+ xmlStreamWriter.writeCharacters(prop.getValue());
+
xmlStreamWriter.writeEndElement();
}
}
Modified: jcr/trunk/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestPropFind.java
===================================================================
--- jcr/trunk/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestPropFind.java 2010-07-15 06:41:07 UTC (rev 2790)
+++ jcr/trunk/exo.jcr.component.webdav/src/test/java/org/exoplatform/services/jcr/webdav/command/TestPropFind.java 2010-07-15 09:18:27 UTC (rev 2791)
@@ -166,7 +166,8 @@
String content = TestUtils.getFileContent();
String file = TestUtils.getFileName();
TestUtils.addContent(session, file, new ByteArrayInputStream(content.getBytes()), nt_webdave_file, "");
- TestUtils.addNodeProperty(session, file, authorProp, "bla % bla");
+ String authorValue = "bla % bla";
+ TestUtils.addNodeProperty(session, file, authorProp, authorValue);
ContainerResponse responseFind =
service(WebDAVMethods.PROPFIND, getPathWS() + file, "", null, allPropsXML.getBytes());
assertEquals(HTTPStatus.MULTISTATUS, responseFind.getStatus());
@@ -176,7 +177,7 @@
String find = outputStream.toString();
assertTrue(find.contains("D:getlastmodified"));
assertTrue(find.contains(authorProp));
- assertTrue(find.contains(author));
+ assertTrue(find.contains(authorValue));
}
13 years, 11 months
exo-jcr SVN: r2790 - ws/trunk.
by do-not-reply@jboss.org
Author: aparfonov
Date: 2010-07-15 02:41:07 -0400 (Thu, 15 Jul 2010)
New Revision: 2790
Modified:
ws/trunk/pom.xml
Log:
Modified: ws/trunk/pom.xml
===================================================================
--- ws/trunk/pom.xml 2010-07-15 06:37:43 UTC (rev 2789)
+++ ws/trunk/pom.xml 2010-07-15 06:41:07 UTC (rev 2790)
@@ -1,4 +1,5 @@
- <!--
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
Copyright (C) 2009 eXo Platform SAS.
@@ -17,173 +18,173 @@
Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
02110-1301 USA, or see the FSF site: http://www.fsf.org.
- -->
+-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
+ <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.exoplatform</groupId>
- <artifactId>foundation-parent</artifactId>
- <version>7</version>
- </parent>
+ <parent>
+ <groupId>org.exoplatform</groupId>
+ <artifactId>foundation-parent</artifactId>
+ <version>7</version>
+ </parent>
- <groupId>org.exoplatform.ws</groupId>
- <artifactId>ws-parent</artifactId>
- <version>2.2.0-Beta01-SNAPSHOT</version>
- <packaging>pom</packaging>
- <name>eXo WS</name>
+ <groupId>org.exoplatform.ws</groupId>
+ <artifactId>ws-parent</artifactId>
+ <version>2.2.0-Beta01-SNAPSHOT</version>
+ <packaging>pom</packaging>
+ <name>eXo WS</name>
- <scm>
- <connection>scm:svn:http://anonsvn.jboss.org/repos/exo-jcr/ws/trunk</connection>
- <developerConnection>scm:svn:https://svn.jboss.org/repos/exo-jcr/ws/trunk</developerConnection>
- <url>http://fisheye.jboss.org/browse/exo-jcr/ws/trunk</url>
- </scm>
+ <scm>
+ <connection>scm:svn:http://anonsvn.jboss.org/repos/exo-jcr/ws/trunk</connection>
+ <developerConnection>scm:svn:https://svn.jboss.org/repos/exo-jcr/ws/trunk</developerConnection>
+ <url>http://fisheye.jboss.org/browse/exo-jcr/ws/trunk</url>
+ </scm>
- <properties>
- <exo.product.name>exo-ws</exo.product.name>
- <exo.product.specification>2.1</exo.product.specification>
+ <properties>
+ <exo.product.name>exo-ws</exo.product.name>
+ <exo.product.specification>2.1</exo.product.specification>
- <org.exoplatform.kernel.version>2.3.0-Beta01-SNAPSHOT</org.exoplatform.kernel.version>
- <org.exoplatform.core.version>2.4.0-Beta01-SNAPSHOT</org.exoplatform.core.version>
- </properties>
+ <org.exoplatform.kernel.version>2.3.0-Beta01-SNAPSHOT</org.exoplatform.kernel.version>
+ <org.exoplatform.core.version>2.4.0-Beta01-SNAPSHOT</org.exoplatform.core.version>
+ </properties>
- <modules>
- <module>exo.ws.commons</module>
- <module>exo.ws.frameworks.json</module>
- <module>exo.ws.frameworks.servlet</module>
- <module>exo.ws.testframework</module>
- <module>exo.ws.rest.core</module>
- <module>exo.ws.rest.ext</module>
- <module>packaging/module</module>
- </modules>
+ <modules>
+ <module>exo.ws.commons</module>
+ <module>exo.ws.frameworks.json</module>
+ <module>exo.ws.frameworks.servlet</module>
+ <module>exo.ws.testframework</module>
+ <module>exo.ws.rest.core</module>
+ <module>exo.ws.rest.ext</module>
+ <module>packaging/module</module>
+ </modules>
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.commons</artifactId>
- <version>${org.exoplatform.kernel.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.container</artifactId>
- <version>${org.exoplatform.kernel.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.component.common</artifactId>
- <version>${org.exoplatform.kernel.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.core</groupId>
- <artifactId>exo.core.component.xml-processing</artifactId>
- <version>${org.exoplatform.core.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.core</groupId>
- <artifactId>exo.core.component.script.groovy</artifactId>
- <version>${org.exoplatform.core.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.ws</groupId>
- <artifactId>exo.ws.frameworks.json</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.ws</groupId>
- <artifactId>exo.ws.testframework</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.ws</groupId>
- <artifactId>exo.ws.commons</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.ws</groupId>
- <artifactId>exo.ws.rest.core</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>javax.xml.stream</groupId>
- <artifactId>stax-api</artifactId>
- <version>1.0</version>
- </dependency>
- <dependency>
- <groupId>javax.servlet</groupId>
- <artifactId>servlet-api</artifactId>
- <version>2.4</version>
- </dependency>
- <dependency>
- <groupId>javax.mail</groupId>
- <artifactId>mail</artifactId>
- <version>1.4</version>
- </dependency>
- <dependency>
- <groupId>javax.activation</groupId>
- <artifactId>activation</artifactId>
- <version>1.1</version>
- </dependency>
- <dependency>
- <groupId>javax.xml.bind</groupId>
- <artifactId>jaxb-api</artifactId>
- <version>2.1</version>
- </dependency>
- <dependency>
- <groupId>picocontainer</groupId>
- <artifactId>picocontainer</artifactId>
- <version>1.1</version>
- </dependency>
- <dependency>
- <groupId>jtidy</groupId>
- <artifactId>jtidy</artifactId>
- <version>4aug2000r7-dev</version>
- </dependency>
- <dependency>
- <groupId>org.jvnet.jaxb2.maven2</groupId>
- <artifactId>maven-jaxb2-plugin</artifactId>
- <version>0.4</version>
- </dependency>
- <dependency>
- <groupId>commons-fileupload</groupId>
- <artifactId>commons-fileupload</artifactId>
- <!-- <version>1.2.1</version>-->
- <version>1.0</version>
- </dependency>
- <dependency>
- <groupId>javax.ws.rs</groupId>
- <artifactId>jsr311-api</artifactId>
- <version>1.0</version>
- </dependency>
- <dependency>
- <groupId>javax.annotation</groupId>
- <artifactId>jsr250-api</artifactId>
- <version>1.0</version>
- </dependency>
- <dependency>
- <groupId>xpp3</groupId>
- <artifactId>xpp3</artifactId>
- <version>1.1.3.4.O</version>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-log4j12</artifactId>
- <version>1.5.8</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.codehaus.groovy</groupId>
- <artifactId>groovy-all</artifactId>
- <version>1.6.5</version>
- </dependency>
- </dependencies>
- </dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-log4j12</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.commons</artifactId>
+ <version>${org.exoplatform.kernel.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.container</artifactId>
+ <version>${org.exoplatform.kernel.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.component.common</artifactId>
+ <version>${org.exoplatform.kernel.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.core</groupId>
+ <artifactId>exo.core.component.xml-processing</artifactId>
+ <version>${org.exoplatform.core.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.core</groupId>
+ <artifactId>exo.core.component.script.groovy</artifactId>
+ <version>${org.exoplatform.core.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.ws</groupId>
+ <artifactId>exo.ws.frameworks.json</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.ws</groupId>
+ <artifactId>exo.ws.testframework</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.ws</groupId>
+ <artifactId>exo.ws.commons</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.ws</groupId>
+ <artifactId>exo.ws.rest.core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.xml.stream</groupId>
+ <artifactId>stax-api</artifactId>
+ <version>1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <version>2.4</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.mail</groupId>
+ <artifactId>mail</artifactId>
+ <version>1.4</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.activation</groupId>
+ <artifactId>activation</artifactId>
+ <version>1.1</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.xml.bind</groupId>
+ <artifactId>jaxb-api</artifactId>
+ <version>2.1</version>
+ </dependency>
+ <dependency>
+ <groupId>picocontainer</groupId>
+ <artifactId>picocontainer</artifactId>
+ <version>1.1</version>
+ </dependency>
+ <dependency>
+ <groupId>jtidy</groupId>
+ <artifactId>jtidy</artifactId>
+ <version>4aug2000r7-dev</version>
+ </dependency>
+ <dependency>
+ <groupId>org.jvnet.jaxb2.maven2</groupId>
+ <artifactId>maven-jaxb2-plugin</artifactId>
+ <version>0.4</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-fileupload</groupId>
+ <artifactId>commons-fileupload</artifactId>
+ <!-- <version>1.2.1</version>-->
+ <version>1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.ws.rs</groupId>
+ <artifactId>jsr311-api</artifactId>
+ <version>1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>javax.annotation</groupId>
+ <artifactId>jsr250-api</artifactId>
+ <version>1.0</version>
+ </dependency>
+ <dependency>
+ <groupId>xpp3</groupId>
+ <artifactId>xpp3</artifactId>
+ <version>1.1.3.4.O</version>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ <version>1.5.8</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy-all</artifactId>
+ <version>1.6.5</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
</project>
13 years, 11 months
exo-jcr SVN: r2789 - jcr/branches/1.12.x/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/storage/jdbc/db.
by do-not-reply@jboss.org
Author: dkatayev
Date: 2010-07-15 02:37:43 -0400 (Thu, 15 Jul 2010)
New Revision: 2789
Modified:
jcr/branches/1.12.x/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/storage/jdbc/db/TestMultiDbJDBCConnection.java
jcr/branches/1.12.x/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/storage/jdbc/db/TestSingleDbJDBCConnection.java
Log:
EXOJCR-835 JCR_xCONTAINER is now dropped on tearDown
Modified: jcr/branches/1.12.x/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/storage/jdbc/db/TestMultiDbJDBCConnection.java
===================================================================
--- jcr/branches/1.12.x/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/storage/jdbc/db/TestMultiDbJDBCConnection.java 2010-07-14 13:33:17 UTC (rev 2788)
+++ jcr/branches/1.12.x/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/storage/jdbc/db/TestMultiDbJDBCConnection.java 2010-07-15 06:37:43 UTC (rev 2789)
@@ -81,6 +81,7 @@
st.executeUpdate("drop table JCR_MREF");
st.executeUpdate("drop table JCR_MVALUE");
st.executeUpdate("drop table JCR_MITEM");
+ st.executeUpdate("drop table JCR_MCONTAINER");
st.close();
}
Modified: jcr/branches/1.12.x/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/storage/jdbc/db/TestSingleDbJDBCConnection.java
===================================================================
--- jcr/branches/1.12.x/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/storage/jdbc/db/TestSingleDbJDBCConnection.java 2010-07-14 13:33:17 UTC (rev 2788)
+++ jcr/branches/1.12.x/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/storage/jdbc/db/TestSingleDbJDBCConnection.java 2010-07-15 06:37:43 UTC (rev 2789)
@@ -79,6 +79,7 @@
st.executeUpdate("drop table JCR_SREF");
st.executeUpdate("drop table JCR_SVALUE");
st.executeUpdate("drop table JCR_SITEM");
+ st.executeUpdate("drop table JCR_SCONTAINER");
st.close();
}
catch (SQLException se)
13 years, 11 months
exo-jcr SVN: r2788 - jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/jcr.
by do-not-reply@jboss.org
Author: aparfonov
Date: 2010-07-14 09:33:17 -0400 (Wed, 14 Jul 2010)
New Revision: 2788
Modified:
jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/jcr/Handler.java
Log:
EXOJCR-482
Modified: jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/jcr/Handler.java
===================================================================
--- jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/jcr/Handler.java 2010-07-14 13:25:48 UTC (rev 2787)
+++ jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/jcr/Handler.java 2010-07-14 13:33:17 UTC (rev 2788)
@@ -125,9 +125,6 @@
sessionProvider.setCurrentWorkspace(workspaceName);
}
-// JcrURLConnection conn =
-// new JcrURLConnection(repositoryService.getRepository(repositoryName), nodeReference,
-// nodeRepresentationService);
JcrURLConnection conn = new JcrURLConnection(nodeReference, sessionProvider, nodeRepresentationService);
return conn;
13 years, 11 months
exo-jcr SVN: r2787 - in jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext: resource/jcr and 1 other directories.
by do-not-reply@jboss.org
Author: aparfonov
Date: 2010-07-14 09:25:48 -0400 (Wed, 14 Jul 2010)
New Revision: 2787
Modified:
jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/JcrURLConnection.java
jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/jcr/Handler.java
jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/script/groovy/GroovyScript2RestLoader.java
Log:
EXOJCR-482 : Fix problem with loading dependency for Groovy RESTful services loaded on repository startup
Modified: jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/JcrURLConnection.java
===================================================================
--- jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/JcrURLConnection.java 2010-07-14 13:08:08 UTC (rev 2786)
+++ jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/JcrURLConnection.java 2010-07-14 13:25:48 UTC (rev 2787)
@@ -18,6 +18,8 @@
*/
package org.exoplatform.services.jcr.ext.resource;
+import org.exoplatform.services.jcr.ext.common.SessionProvider;
+
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
@@ -33,7 +35,7 @@
public class JcrURLConnection extends URLConnection
{
- private Session session;
+ private SessionProvider sessionProvider;
private NodeRepresentationService nodeRepresentationService;
@@ -41,12 +43,14 @@
private NodeRepresentation nodeRepresentation;
- public JcrURLConnection(UnifiedNodeReference nodeReference, Session session,
+ private Session session;
+
+ public JcrURLConnection(UnifiedNodeReference nodeReference, SessionProvider sessionProvider,
NodeRepresentationService nodeRepresentationService) throws MalformedURLException
{
super(nodeReference.getURL());
- this.session = session;
+ this.sessionProvider = sessionProvider;
this.nodeReference = nodeReference;
this.nodeRepresentationService = nodeRepresentationService;
@@ -68,16 +72,24 @@
try
{
+ session =
+ sessionProvider.getSession(sessionProvider.getCurrentWorkspace(), sessionProvider.getCurrentRepository());
+
Node node = null;
if (nodeReference.isPath())
- node = session.getRootNode().getNode(nodeReference.getPath().substring(1));
+ {
+ node = (Node)session.getItem(nodeReference.getPath());
+ }
else if (nodeReference.isIdentitifier())
+ {
node = session.getNodeByUUID(nodeReference.getIdentitifier().getString());
+ }
else
+ {
throw new IllegalArgumentException("Absolute path or Identifier was not found!");
+ }
nodeRepresentation = nodeRepresentationService.getNodeRepresentation(node, "text/xml");
-
connected = true;
}
catch (Exception e)
@@ -87,6 +99,17 @@
}
}
+ /**
+ * Close connection to JCR.
+ */
+ public void disconnect()
+ {
+ if (!connected)
+ return;
+ session.logout();
+ connected = false;
+ }
+
/*
* (non-Javadoc)
* @see java.net.URLConnection#getInputStream()
@@ -174,9 +197,6 @@
return -1;
}
-
-
-
/*
* (non-Javadoc)
* @see java.net.URLConnection#setDoOutput(boolean)
@@ -287,4 +307,21 @@
throw new UnsupportedOperationException("protocol doesn't support request properties!");
}
+ @Override
+ protected void finalize() throws Throwable
+ {
+ try
+ {
+ sessionProvider.close();
+ }
+ catch (Throwable t)
+ {
+ ;
+ }
+ finally
+ {
+ super.finalize();
+ }
+ }
+
}
Modified: jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/jcr/Handler.java
===================================================================
--- jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/jcr/Handler.java 2010-07-14 13:08:08 UTC (rev 2786)
+++ jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/resource/jcr/Handler.java 2010-07-14 13:25:48 UTC (rev 2787)
@@ -33,8 +33,6 @@
import java.net.URLConnection;
import java.net.URLStreamHandler;
-import javax.jcr.Session;
-
/**
* URLStreamHandler for protocol <tt>jcr://</tt>.
*
@@ -111,19 +109,26 @@
sessionProvider =
(SessionProvider)ConversationState.getCurrent().getAttribute(SessionProvider.SESSION_PROVIDER);
- ManageableRepository repository;
+ if (sessionProvider == null)
+ sessionProvider = SessionProvider.createSystemProvider();
+
String repositoryName = nodeReference.getRepository();
- if (repositoryName == null || repositoryName.length() == 0)
- repository = sessionProvider.getCurrentRepository();
- else
- repository = repositoryService.getRepository(repositoryName);
+ if (repositoryName != null && repositoryName.length() > 0)
+ {
+ ManageableRepository repository = repositoryService.getRepository(repositoryName);
+ sessionProvider.setCurrentRepository(repository);
+ }
String workspaceName = nodeReference.getWorkspace();
- if (workspaceName == null || workspaceName.length() == 0)
- workspaceName = sessionProvider.getCurrentWorkspace();
+ if (workspaceName != null && workspaceName.length() > 0)
+ {
+ sessionProvider.setCurrentWorkspace(workspaceName);
+ }
- Session ses = sessionProvider.getSession(workspaceName, repository);
- JcrURLConnection conn = new JcrURLConnection(nodeReference, ses, nodeRepresentationService);
+// JcrURLConnection conn =
+// new JcrURLConnection(repositoryService.getRepository(repositoryName), nodeReference,
+// nodeRepresentationService);
+ JcrURLConnection conn = new JcrURLConnection(nodeReference, sessionProvider, nodeRepresentationService);
return conn;
}
Modified: jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/script/groovy/GroovyScript2RestLoader.java
===================================================================
--- jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/script/groovy/GroovyScript2RestLoader.java 2010-07-14 13:08:08 UTC (rev 2786)
+++ jcr/trunk/exo.jcr.component.ext/src/main/java/org/exoplatform/services/jcr/ext/script/groovy/GroovyScript2RestLoader.java 2010-07-14 13:25:48 UTC (rev 2787)
@@ -32,6 +32,7 @@
import org.exoplatform.services.jcr.ext.common.SessionProvider;
import org.exoplatform.services.jcr.ext.registry.RegistryEntry;
import org.exoplatform.services.jcr.ext.registry.RegistryService;
+import org.exoplatform.services.jcr.ext.resource.JcrURLConnection;
import org.exoplatform.services.log.ExoLogger;
import org.exoplatform.services.log.Log;
import org.exoplatform.services.rest.ext.groovy.DefaultGroovyResourceLoader;
@@ -52,6 +53,7 @@
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URL;
+import java.net.URLConnection;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collections;
@@ -1507,13 +1509,14 @@
resource = new URL(root, filename);
}
}
+ URLConnection connection = null;
try
{
if (LOG.isDebugEnabled())
LOG.debug("Try to load resource from URL : " + resource);
- InputStream script = resource.openStream();
- script.close();
+ connection = resource.openConnection();
+ connection.getInputStream().close();
break;
}
@@ -1524,6 +1527,13 @@
resource = null;
}
+ finally
+ {
+ if (connection != null && resource != null && "jcr".equals(resource.getProtocol()))
+ {
+ ((JcrURLConnection)connection).disconnect();
+ }
+ }
}
if (resource != null)
{
13 years, 11 months