Author: aparfonov
Date: 2010-06-04 09:47:36 -0400 (Fri, 04 Jun 2010)
New Revision: 2493
Added:
jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/core/security/
jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/core/security/BaseSecurityTest.java
jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/core/security/TestGetSystemSession.java
jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/resources/test.policy
Modified:
jcr/branches/1.12-SEC/exo.jcr.component.core/pom.xml
jcr/branches/1.12-SEC/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/RepositoryImpl.java
Log:
EXOJCR-764 : check permissions for getting system session
Modified: jcr/branches/1.12-SEC/exo.jcr.component.core/pom.xml
===================================================================
--- jcr/branches/1.12-SEC/exo.jcr.component.core/pom.xml 2010-06-04 12:50:45 UTC (rev
2492)
+++ jcr/branches/1.12-SEC/exo.jcr.component.core/pom.xml 2010-06-04 13:47:36 UTC (rev
2493)
@@ -1,744 +1,723 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!--
+ <!--
- Copyright (C) 2009 eXo Platform SAS.
-
- This is free software; you can redistribute it and/or modify it
- under the terms of the GNU Lesser General Public License as
- published by the Free Software Foundation; either version 2.1 of
- the License, or (at your option) any later version.
-
- This software is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this software; if not, write to the Free
- Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
-
--->
+ Copyright (C) 2009 eXo Platform SAS. This is free software; you can redistribute it
and/or modify it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or (at
+ your option) any later version. This software is distributed in the hope that it will
be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+ License for more details. You should have received a copy of the GNU Lesser General
Public License along with this software; if not, write to the Free 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>
- <parent>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>jcr-parent</artifactId>
- <version>1.12-SEC-SNAPSHOT</version>
- </parent>
- <artifactId>exo.jcr.component.core</artifactId>
- <name>eXo JCR :: Component :: Core Service</name>
- <description>eXo JCR Service core component</description>
- <properties>
-
<jcr.test.configuration.file>/conf/standalone/test-configuration.xml</jcr.test.configuration.file>
- </properties>
- <dependencies>
- <dependency>
- <groupId>javax.jcr</groupId>
- <artifactId>jcr</artifactId>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.container</artifactId>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.commons</artifactId>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.component.command</artifactId>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.component.common</artifactId>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.kernel</groupId>
- <artifactId>exo.kernel.component.cache</artifactId>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.core</groupId>
- <artifactId>exo.core.component.organization.api</artifactId>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.core</groupId>
- <artifactId>exo.core.component.document</artifactId>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.core</groupId>
- <artifactId>exo.core.component.security.core</artifactId>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.ws</groupId>
- <artifactId>exo.ws.commons</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.exoplatform.jcr</groupId>
- <artifactId>exo.jcr.cluster.testclient</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.lucene</groupId>
- <artifactId>lucene-core</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.lucene</groupId>
- <artifactId>lucene-spellchecker</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.lucene</groupId>
- <artifactId>lucene-memory</artifactId>
- </dependency>
- <dependency>
- <groupId>com.sun.xml.stream</groupId>
- <artifactId>sjsxp</artifactId>
- </dependency>
- <dependency>
- <groupId>commons-dbcp</groupId>
- <artifactId>commons-dbcp</artifactId>
- <exclusions>
- <exclusion>
- <groupId>xerces</groupId>
- <artifactId>xercesImpl</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>commons-pool</groupId>
- <artifactId>commons-pool</artifactId>
- </dependency>
- <dependency>
- <groupId>commons-lang</groupId>
- <artifactId>commons-lang</artifactId>
- </dependency>
- <dependency>
- <groupId>commons-chain</groupId>
- <artifactId>commons-chain</artifactId>
- </dependency>
- <dependency>
- <groupId>xml-apis</groupId>
- <artifactId>xml-apis</artifactId>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>stax</groupId>
- <artifactId>stax-api</artifactId>
- </dependency>
- <dependency>
- <groupId>org.jibx</groupId>
- <artifactId>jibx-run</artifactId>
- </dependency>
- <dependency>
- <groupId>picocontainer</groupId>
- <artifactId>picocontainer</artifactId>
- </dependency>
- <dependency>
- <groupId>javax.resource</groupId>
- <artifactId>connector-api</artifactId>
- </dependency>
- <dependency>
- <groupId>javax.transaction</groupId>
- <artifactId>jta</artifactId>
- </dependency>
- <dependency>
- <groupId>concurrent</groupId>
- <artifactId>concurrent</artifactId>
- </dependency>
- <dependency>
- <groupId>commons-collections</groupId>
- <artifactId>commons-collections</artifactId>
- </dependency>
- <dependency>
- <groupId>commons-beanutils</groupId>
- <artifactId>commons-beanutils</artifactId>
- </dependency>
- <dependency>
- <groupId>jgroups</groupId>
- <artifactId>jgroups</artifactId>
- </dependency>
- <dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- </dependency>
- <dependency>
- <groupId>javax.xml.stream</groupId>
- <artifactId>stax-api</artifactId>
- </dependency>
- <dependency>
- <groupId>xpp3</groupId>
- <artifactId>xpp3</artifactId>
- </dependency>
- <dependency>
- <groupId>jboss.jbossts</groupId>
- <artifactId>jbossjts</artifactId>
- </dependency>
- <dependency>
- <groupId>jboss.jbossts</groupId>
- <artifactId>jbossts-common</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.ws.commons</groupId>
- <artifactId>ws-commons-util</artifactId>
- <exclusions>
- <exclusion>
- <groupId>xml-apis</groupId>
- <artifactId>xml-apis</artifactId>
- </exclusion>
- <exclusion>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <!-- TCK binaries and deps for repo stub, some eXo API test -->
- <dependency>
- <groupId>org.jboss.cache</groupId>
- <artifactId>jbosscache-core</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.jackrabbit</groupId>
- <artifactId>jackrabbit-jcr-tests</artifactId>
- <classifier>sources</classifier>
- <scope>test</scope>
- <exclusions>
- <exclusion>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-log4j12</artifactId>
- <scope>test</scope>
- </dependency>
- <!-- ===== Databases JDBC support for tests ===== -->
- <dependency>
- <groupId>hsqldb</groupId>
- <artifactId>hsqldb</artifactId>
- <scope>test</scope>
- </dependency>
- <!-- For MySQL support -->
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>5.1.8</version>
- <scope>test</scope>
- </dependency>
- <!-- For PostgresSQL support -->
- <dependency>
- <groupId>postgresql</groupId>
- <artifactId>postgresql</artifactId>
- <version>8.3-603.jdbc3</version>
- <scope>test</scope>
- </dependency>
- <!-- For Oracle 10g support (local-jcr repository) -->
- <!-- dependency>
- <groupId>ojdbc</groupId>
- <artifactId>ojdbc</artifactId>
- <version>14</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>ojdbc</groupId>
- <artifactId>orai18n</artifactId>
- <version>14</version>
- <scope>test</scope>
- </dependency -->
- <!-- For IBM DB2 support (local-jcr repository) -->
- <!-- dependency>
- <groupId>com.ibm.db2</groupId>
- <artifactId>db2jcc</artifactId>
- <version>9.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>com.ibm.db2</groupId>
- <artifactId>db2jcc_license_cu</artifactId>
- <version>9.1</version>
- <scope>test</scope>
- </dependency -->
- <!-- For MS SQL 7/2000/2005 and Sybase ASE/Anywhere support (jTDS driver)
-->
- <!-- dependency>
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>jcr-parent</artifactId>
+ <version>1.12-SEC-SNAPSHOT</version>
+ </parent>
+ <artifactId>exo.jcr.component.core</artifactId>
+ <name>eXo JCR :: Component :: Core Service</name>
+ <description>eXo JCR Service core component</description>
+ <properties>
+ <jcr.test.configuration.file>/conf/standalone/test-configuration.xml</jcr.test.configuration.file>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>javax.jcr</groupId>
+ <artifactId>jcr</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.container</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.commons</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.component.command</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.component.common</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.kernel</groupId>
+ <artifactId>exo.kernel.component.cache</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.core</groupId>
+ <artifactId>exo.core.component.organization.api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.core</groupId>
+ <artifactId>exo.core.component.document</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.core</groupId>
+ <artifactId>exo.core.component.security.core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.ws</groupId>
+ <artifactId>exo.ws.commons</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.exoplatform.jcr</groupId>
+ <artifactId>exo.jcr.cluster.testclient</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.lucene</groupId>
+ <artifactId>lucene-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.lucene</groupId>
+ <artifactId>lucene-spellchecker</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.lucene</groupId>
+ <artifactId>lucene-memory</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>com.sun.xml.stream</groupId>
+ <artifactId>sjsxp</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-dbcp</groupId>
+ <artifactId>commons-dbcp</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>xerces</groupId>
+ <artifactId>xercesImpl</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>commons-pool</groupId>
+ <artifactId>commons-pool</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-lang</groupId>
+ <artifactId>commons-lang</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-chain</groupId>
+ <artifactId>commons-chain</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>xml-apis</groupId>
+ <artifactId>xml-apis</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <scope>compile</scope>
+ </dependency>
+ <dependency>
+ <groupId>stax</groupId>
+ <artifactId>stax-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.jibx</groupId>
+ <artifactId>jibx-run</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>picocontainer</groupId>
+ <artifactId>picocontainer</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>javax.resource</groupId>
+ <artifactId>connector-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>javax.transaction</groupId>
+ <artifactId>jta</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>concurrent</groupId>
+ <artifactId>concurrent</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-beanutils</groupId>
+ <artifactId>commons-beanutils</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>jgroups</groupId>
+ <artifactId>jgroups</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>javax.xml.stream</groupId>
+ <artifactId>stax-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>xpp3</groupId>
+ <artifactId>xpp3</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>jboss.jbossts</groupId>
+ <artifactId>jbossjts</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>jboss.jbossts</groupId>
+ <artifactId>jbossts-common</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.ws.commons</groupId>
+ <artifactId>ws-commons-util</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>xml-apis</groupId>
+ <artifactId>xml-apis</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <!-- TCK binaries and deps for repo stub, some eXo API test -->
+ <dependency>
+ <groupId>org.jboss.cache</groupId>
+ <artifactId>jbosscache-core</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.jackrabbit</groupId>
+ <artifactId>jackrabbit-jcr-tests</artifactId>
+ <classifier>sources</classifier>
+ <scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <!-- ===== Databases JDBC support for tests ===== -->
+ <dependency>
+ <groupId>hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <!-- For MySQL support -->
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ <version>5.1.8</version>
+ <scope>test</scope>
+ </dependency>
+ <!-- For PostgresSQL support -->
+ <dependency>
+ <groupId>postgresql</groupId>
+ <artifactId>postgresql</artifactId>
+ <version>8.3-603.jdbc3</version>
+ <scope>test</scope>
+ </dependency>
+ <!-- For Oracle 10g support (local-jcr repository) -->
+ <!--
+ dependency> <groupId>ojdbc</groupId>
<artifactId>ojdbc</artifactId> <version>14</version>
<scope>test</scope> </dependency> <dependency>
<groupId>ojdbc</groupId> <artifactId>orai18n</artifactId>
<version>14</version> <scope>test</scope>
+ </dependency
+ -->
+ <!-- For IBM DB2 support (local-jcr repository) -->
+ <!--
+ dependency> <groupId>com.ibm.db2</groupId>
<artifactId>db2jcc</artifactId> <version>9.1</version>
<scope>test</scope> </dependency> <dependency>
<groupId>com.ibm.db2</groupId>
<artifactId>db2jcc_license_cu</artifactId> <version>9.1</version>
+ <scope>test</scope> </dependency
+ -->
+ <!-- For MS SQL 7/2000/2005 and Sybase ASE/Anywhere support (jTDS driver) -->
+ <!-- dependency>
<groupId>net.sourceforge.jtds</groupId>
<artifactId>jtds</artifactId>
<version>1.2</version>
<scope>test</scope>
</dependency -->
- <!-- For MS SQL 2005 support (Microsoft JDBC driver) (local-jcr repository)
-->
- <!-- dependency>
+ <!-- For MS SQL 2005 support (Microsoft JDBC driver) (local-jcr repository) -->
+ <!-- dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc</artifactId>
<version>9.0</version>
<scope>test</scope>
</dependency -->
- <!-- dependency>
+ <!-- dependency>
<groupId>com.microsoft</groupId>
<artifactId>sqljdbc</artifactId>
<version>2.0</version>
<scope>test</scope>
</dependency -->
- <!-- For Apache Derby support (aka JavaDB) -->
- <!-- dependency>
+ <!-- For Apache Derby support (aka JavaDB) -->
+ <!-- dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
<version>10.2.2.0</version>
<scope>test</scope>
</dependency -->
- <!-- H2 Database (not supported now) -->
- <!-- dependency>
+ <!-- H2 Database (not supported now) -->
+ <!-- dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.0.74</version>
<scope>test</scope>
</dependency -->
- <!-- Ingres Database (local repository) -->
- <!-- dependency>
+ <!-- Ingres Database (local repository) -->
+ <!-- dependency>
<groupId>com.ingres.jdbc</groupId>
<artifactId>iijdbc</artifactId>
<version>9.2</version>
<scope>test</scope>
</dependency -->
- <!-- For Sybase ASE/Anywhere support (jConnect driver) (local-jcr repository)
-->
- <!-- dependency>
+ <!-- For Sybase ASE/Anywhere support (jConnect driver) (local-jcr repository)
-->
+ <!-- dependency>
<groupId>com.sybase.jdbc3.jdbc</groupId>
<artifactId>jconn3</artifactId>
<version>6.05</version>
<scope>test</scope>
</dependency -->
- </dependencies>
- <!-- ======================================================================= -->
- <build>
- <resources>
- <resource>
- <directory>src/main/resources</directory>
- <includes>
- <include>**/*.xml</include>
- <include>**/*.sql</include>
- <include>**/*.dtd</include>
- </includes>
- </resource>
- </resources>
- <testResources>
- <testResource>
- <directory>src/test/resources</directory>
- <includes>
- <include>**/*.properties</include>
- <include>login.conf</include>
- <include>**/*.xml</include>
- <include>**/*.drl</include>
- <include>**/*.vm</include>
- <include>**/*.doc</include>
- <include>**/*.xls</include>
- <include>**/*.ppt</include>
- <include>**/*.txt</include>
- <include>**/*.tiff</include>
- <include>**/*.pdf</include>
- <include>**/*.dtd</include>
- </includes>
- </testResource>
- </testResources>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-dependency-plugin</artifactId>
- <executions>
- <execution>
- <id>unpack</id>
- <phase>generate-test-sources</phase>
- <goals>
- <goal>unpack</goal>
- </goals>
- <configuration>
- <artifactItems>
- <artifactItem>
- <groupId>org.apache.jackrabbit</groupId>
- <artifactId>jackrabbit-jcr-tests</artifactId>
- <classifier>sources</classifier>
- <type>jar</type>
- <overWrite>false</overWrite>
- </artifactItem>
- </artifactItems>
-
<outputDirectory>${project.build.testSourceDirectory}</outputDirectory>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <argLine>${env.MAVEN_OPTS}</argLine>
- <systemProperties>
- <property>
- <name>jcr.test.configuration.file</name>
- <value>${jcr.test.configuration.file}</value>
- </property>
- <property>
- <name>emma.coverage.out.file</name>
- <value>target/emma/coverage.ec</value>
- </property>
- <!-- Uncomment the line below if you want to enable the statistics -->
- <!--property>
+ </dependencies>
+ <!-- ======================================================================= -->
+ <build>
+ <resources>
+ <resource>
+ <directory>src/main/resources</directory>
+ <includes>
+ <include>**/*.xml</include>
+ <include>**/*.sql</include>
+ <include>**/*.dtd</include>
+ </includes>
+ </resource>
+ </resources>
+ <testResources>
+ <testResource>
+ <directory>src/test/resources</directory>
+ <includes>
+ <include>**/*.properties</include>
+ <include>login.conf</include>
+ <include>**/*.xml</include>
+ <include>**/*.drl</include>
+ <include>**/*.vm</include>
+ <include>**/*.doc</include>
+ <include>**/*.xls</include>
+ <include>**/*.ppt</include>
+ <include>**/*.txt</include>
+ <include>**/*.tiff</include>
+ <include>**/*.pdf</include>
+ <include>**/*.dtd</include>
+ <include>**/*.policy</include>
+ </includes>
+ </testResource>
+ </testResources>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>unpack</id>
+ <phase>generate-test-sources</phase>
+ <goals>
+ <goal>unpack</goal>
+ </goals>
+ <configuration>
+ <artifactItems>
+ <artifactItem>
+ <groupId>org.apache.jackrabbit</groupId>
+ <artifactId>jackrabbit-jcr-tests</artifactId>
+ <classifier>sources</classifier>
+ <type>jar</type>
+ <overWrite>false</overWrite>
+ </artifactItem>
+ </artifactItems>
+ <outputDirectory>${project.build.testSourceDirectory}</outputDirectory>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+<!-- <argLine>${env.MAVEN_OPTS}</argLine>-->
+ <argLine>-Djava.security.manager
-Djava.security.policy=${project.build.directory}/test-classes/test.policy</argLine>
+ <systemProperties>
+ <property>
+ <name>jcr.test.configuration.file</name>
+ <value>${jcr.test.configuration.file}</value>
+ </property>
+ <property>
+ <name>emma.coverage.out.file</name>
+ <value>target/emma/coverage.ec</value>
+ </property>
+ <!-- Uncomment the line below if you want to enable the statistics -->
+ <!--property>
<name>JDBCWorkspaceDataContainer.statistics.enabled</name>
<value>true</value>
</property-->
- </systemProperties>
- <includes>
-
<include>org/exoplatform/services/jcr/api/**/Test*.java</include>
-
<include>org/exoplatform/services/jcr/usecases/**/Test*.java</include>
-
<include>org/exoplatform/services/jcr/usecases/**/*Test.java</include>
-
<include>org/exoplatform/services/jcr/impl/**/Test*.java</include>
- </includes>
- <excludes>
-
<exclude>org/exoplatform/services/jcr/**/TestQueryUsecases.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/TestImport.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/TestRollbackBigFiles.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/TestErrorMultithreading.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/api/TestAll.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/api/**/TestSameNameItems.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/api/**/TestVersionRestore.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/api/**/TestSameNameItems.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/api/**/TestVersionRestore.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestWorkspaceManagement.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestRepositoryManagement.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestSaveConfiguration.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/ValueStoragePluginTest.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestWorkspaceRestore.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestSessionCleaner.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/Base*.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestJCRSerializationStream.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestJCRSerializationVersionRestore.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/usecases/**/RemoveSameNameSiblingTest.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/usecases/**/TestQueryWithNumberAndSpace.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/usecases/BaseUsecasesTest.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/usecases/**/ExportWorkspaceSystemViewTest.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestSessionDataManager.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestLinkedWorkspaceStorageCacheMetrics.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/SQLBenchmarkTest.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestLockPerstistentDataManager.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestCleanableFileStreamValueData.java</exclude>
- </excludes>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.jibx</groupId>
- <artifactId>maven-jibx-plugin</artifactId>
- <configuration>
- <directory>src/main/resources</directory>
- <includes>
- <includes>binding*.xml</includes>
- </includes>
- </configuration>
- <executions>
- <execution>
- <goals>
- <goal>bind</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <artifactId>maven-antrun-plugin</artifactId>
- <executions>
- <execution>
- <id>delete-sources</id>
- <phase>process-sources</phase>
- <configuration>
- <tasks>
- <echo>Remove files that have been customized</echo>
- <delete>
- <fileset
dir="${project.build.directory}/generated-sources/javacc/org/exoplatform/services/jcr/impl/core/query">
- <include name="sql/ASTLiteral.java" />
- <include name="sql/ASTContainsExpression.java"
/>
- <include name="sql/ASTPredicate.java" />
- <include name="sql/ASTIdentifier.java" />
- <include name="xpath/SimpleNode.java" />
- </fileset>
- </delete>
- </tasks>
- </configuration>
- <goals>
- <goal>run</goal>
- </goals>
- </execution>
- </executions>
- <dependencies>
- <dependency>
- <groupId>ant</groupId>
- <artifactId>ant-optional</artifactId>
- <version>1.5.3-1</version>
- </dependency>
- </dependencies>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>javacc-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>fulltext</id>
- <configuration>
-
<sourceDirectory>${basedir}/src/main/javacc/fulltext</sourceDirectory>
- </configuration>
- <goals>
- <goal>jjtree-javacc</goal>
- </goals>
- </execution>
- <execution>
- <id>sql</id>
- <configuration>
-
<sourceDirectory>${basedir}/src/main/javacc/sql</sourceDirectory>
- </configuration>
- <goals>
- <goal>jjtree-javacc</goal>
- </goals>
- </execution>
- <execution>
- <id>xpath</id>
- <configuration>
-
<sourceDirectory>${basedir}/src/main/javacc/xpath</sourceDirectory>
- </configuration>
- <goals>
- <goal>jjtree-javacc</goal>
- </goals>
- </execution>
- </executions>
- <dependencies>
- <dependency>
- <groupId>net.java.dev.javacc</groupId>
- <artifactId>javacc</artifactId>
- <version>3.2</version>
- </dependency>
- </dependencies>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>taglist-maven-plugin</artifactId>
- </plugin>
- </plugins>
- </build>
- <profiles>
- <!-- *** -->
- <!-- TCK -->
- <!-- *** -->
- <!-- Use "mvn -Prun-tck" to launch only them -->
- <profile>
- <id>run-tck</id>
- <build>
- <testResources>
- <testResource>
- <directory>src/TCK/java</directory>
- <includes>
-
<include>**/org/apache/jackrabbit/test/api/nodetype/spec/*.txt</include>
- </includes>
- </testResource>
- </testResources>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <!-- TAKE CARE TO UPDATE ALSO run-all PROFILE -->
- <argLine>${env.MAVEN_OPTS}</argLine>
- <systemProperties>
- <property>
- <name>jcr.test.configuration.file</name>
- <value>${jcr.test.configuration.file}</value>
- </property>
- <property>
- <name>emma.coverage.out.file</name>
- <value>target/emma/coverage.ec</value>
- </property>
- <property>
- <name>known.issues</name>
-
<value>org.apache.jackrabbit.test.api.SetValueConstraintViolationExceptionTest#testBooleanProperty
-
org.apache.jackrabbit.test.api.SetValueConstraintViolationExceptionTest#testMultipleBooleanProperty
-
org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreName
-
org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrder
-
org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrder2
-
org.apache.jackrabbit.test.api.nodetype.PropertyDefTest#testIsRequiredType
-
org.apache.jackrabbit.test.api.SetPropertyConstraintViolationExceptionTest#testBooleanProperty
-
org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testShareable
-
org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testSimpleVersionable
-
org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testActivity
-
org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testConfiguration
-
org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testVersionable
-
org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testVersion
-
org.apache.jackrabbit.test.api.NamespaceRegistryTest#testRegisterNamespace</value>
- </property>
- <!-- Uncomment the line below if you want to enable the
statistics -->
- <!--property>
+ </systemProperties>
+ <includes>
+ <include>org/exoplatform/services/jcr/api/**/Test*.java</include>
+ <include>org/exoplatform/services/jcr/usecases/**/Test*.java</include>
+ <include>org/exoplatform/services/jcr/usecases/**/*Test.java</include>
+ <include>org/exoplatform/services/jcr/impl/**/Test*.java</include>
+ </includes>
+ <excludes>
+ <exclude>org/exoplatform/services/jcr/**/TestQueryUsecases.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/TestImport.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/TestRollbackBigFiles.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/TestErrorMultithreading.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/api/TestAll.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/api/**/TestSameNameItems.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/api/**/TestVersionRestore.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/api/**/TestSameNameItems.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/api/**/TestVersionRestore.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestWorkspaceManagement.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestRepositoryManagement.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestSaveConfiguration.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/ValueStoragePluginTest.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestWorkspaceRestore.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestSessionCleaner.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/Base*.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestJCRSerializationStream.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestJCRSerializationVersionRestore.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/usecases/**/RemoveSameNameSiblingTest.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/usecases/**/TestQueryWithNumberAndSpace.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/usecases/BaseUsecasesTest.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/usecases/**/ExportWorkspaceSystemViewTest.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestSessionDataManager.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestLinkedWorkspaceStorageCacheMetrics.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/SQLBenchmarkTest.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestLockPerstistentDataManager.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestCleanableFileStreamValueData.java</exclude>
+ </excludes>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.jibx</groupId>
+ <artifactId>maven-jibx-plugin</artifactId>
+ <configuration>
+ <directory>src/main/resources</directory>
+ <includes>
+ <includes>binding*.xml</includes>
+ </includes>
+ </configuration>
+ <executions>
+ <execution>
+ <goals>
+ <goal>bind</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>delete-sources</id>
+ <phase>process-sources</phase>
+ <configuration>
+ <tasks>
+ <echo>Remove files that have been customized</echo>
+ <delete>
+ <fileset
dir="${project.build.directory}/generated-sources/javacc/org/exoplatform/services/jcr/impl/core/query">
+ <include name="sql/ASTLiteral.java" />
+ <include name="sql/ASTContainsExpression.java" />
+ <include name="sql/ASTPredicate.java" />
+ <include name="sql/ASTIdentifier.java" />
+ <include name="xpath/SimpleNode.java" />
+ </fileset>
+ </delete>
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ <dependencies>
+ <dependency>
+ <groupId>ant</groupId>
+ <artifactId>ant-optional</artifactId>
+ <version>1.5.3-1</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>javacc-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>fulltext</id>
+ <configuration>
+ <sourceDirectory>${basedir}/src/main/javacc/fulltext</sourceDirectory>
+ </configuration>
+ <goals>
+ <goal>jjtree-javacc</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>sql</id>
+ <configuration>
+ <sourceDirectory>${basedir}/src/main/javacc/sql</sourceDirectory>
+ </configuration>
+ <goals>
+ <goal>jjtree-javacc</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>xpath</id>
+ <configuration>
+ <sourceDirectory>${basedir}/src/main/javacc/xpath</sourceDirectory>
+ </configuration>
+ <goals>
+ <goal>jjtree-javacc</goal>
+ </goals>
+ </execution>
+ </executions>
+ <dependencies>
+ <dependency>
+ <groupId>net.java.dev.javacc</groupId>
+ <artifactId>javacc</artifactId>
+ <version>3.2</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>taglist-maven-plugin</artifactId>
+ </plugin>
+ </plugins>
+ </build>
+ <profiles>
+ <!-- *** -->
+ <!-- TCK -->
+ <!-- *** -->
+ <!-- Use "mvn -Prun-tck" to launch only them -->
+ <profile>
+ <id>run-tck</id>
+ <build>
+ <testResources>
+ <testResource>
+ <directory>src/TCK/java</directory>
+ <includes>
+ <include>**/org/apache/jackrabbit/test/api/nodetype/spec/*.txt</include>
+ </includes>
+ </testResource>
+ </testResources>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <!-- TAKE CARE TO UPDATE ALSO run-all PROFILE -->
+ <argLine>${env.MAVEN_OPTS}</argLine>
+ <systemProperties>
+ <property>
+ <name>jcr.test.configuration.file</name>
+ <value>${jcr.test.configuration.file}</value>
+ </property>
+ <property>
+ <name>emma.coverage.out.file</name>
+ <value>target/emma/coverage.ec</value>
+ </property>
+ <property>
+ <name>known.issues</name>
+ <value>org.apache.jackrabbit.test.api.SetValueConstraintViolationExceptionTest#testBooleanProperty
+ org.apache.jackrabbit.test.api.SetValueConstraintViolationExceptionTest#testMultipleBooleanProperty
+ org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreName
+ org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrder
+ org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrder2
+ org.apache.jackrabbit.test.api.nodetype.PropertyDefTest#testIsRequiredType
+ org.apache.jackrabbit.test.api.SetPropertyConstraintViolationExceptionTest#testBooleanProperty
+ org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testShareable
+ org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testSimpleVersionable
+ org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testActivity
+ org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testConfiguration
+ org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testVersionable
+ org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testVersion
+ org.apache.jackrabbit.test.api.NamespaceRegistryTest#testRegisterNamespace</value>
+ </property>
+ <!-- Uncomment the line below if you want to enable the statistics -->
+ <!--property>
<name>JDBCWorkspaceDataContainer.statistics.enabled</name>
<value>true</value>
</property-->
- </systemProperties>
- <includes>
-
<include>org/apache/jackrabbit/test/api/*Test.java</include>
-
<include>org/apache/jackrabbit/test/api/observation/*Test.java</include>
-
<include>org/apache/jackrabbit/test/api/lock/*Test.java</include>
-
<include>org/apache/jackrabbit/test/api/nodetype/*Test.java</include>
-
<include>org/apache/jackrabbit/test/api/query/*Test.java</include>
-
<include>org/apache/jackrabbit/test/api/version/*Test.java</include>
- </includes>
- <excludes>
-
<exclude>org/apache/jackrabbit/test/api/TestAll.java</exclude>
-
<exclude>org/apache/jackrabbit/test/api/**/Abstract*.java</exclude>
-
<exclude>org/apache/jackrabbit/test/api/**/FrozenNodeTest.java</exclude>
- </excludes>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </profile>
- <!-- *** -->
- <!-- ALL -->
- <!-- *** -->
- <!-- Use "mvn -Prun-all" to launch default tests and TCK -->
- <profile>
- <id>run-all</id>
- <build>
- <testResources>
- <testResource>
- <directory>src/TCK/java</directory>
- <includes>
-
<include>**/org/apache/jackrabbit/test/api/nodetype/spec/*.txt</include>
- </includes>
- </testResource>
- </testResources>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <!-- TAKE CARE TO UPDATE ALSO run-tck PROFILE -->
- <argLine>${env.MAVEN_OPTS}</argLine>
- <systemProperties>
- <property>
- <name>jcr.test.configuration.file</name>
- <value>${jcr.test.configuration.file}</value>
- </property>
- <property>
- <name>emma.coverage.out.file</name>
- <value>target/emma/coverage.ec</value>
- </property>
- <property>
- <name>known.issues</name>
-
<value>org.apache.jackrabbit.test.api.SetValueConstraintViolationExceptionTest#testBooleanProperty
-
org.apache.jackrabbit.test.api.SetValueConstraintViolationExceptionTest#testMultipleBooleanProperty
-
org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreName
-
org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrder
-
org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrder2
-
org.apache.jackrabbit.test.api.nodetype.PropertyDefTest#testIsRequiredType
-
org.apache.jackrabbit.test.api.SetPropertyConstraintViolationExceptionTest#testBooleanProperty
-
org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testShareable
-
org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testSimpleVersionable
-
org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testActivity
-
org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testConfiguration
-
org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testVersionable
-
org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testVersion
-
org.apache.jackrabbit.test.api.NamespaceRegistryTest#testRegisterNamespace</value>
- </property>
- <!-- Uncomment the line below if you want to enable the
statistics -->
- <!--property>
+ </systemProperties>
+ <includes>
+ <include>org/apache/jackrabbit/test/api/*Test.java</include>
+ <include>org/apache/jackrabbit/test/api/observation/*Test.java</include>
+ <include>org/apache/jackrabbit/test/api/lock/*Test.java</include>
+ <include>org/apache/jackrabbit/test/api/nodetype/*Test.java</include>
+ <include>org/apache/jackrabbit/test/api/query/*Test.java</include>
+ <include>org/apache/jackrabbit/test/api/version/*Test.java</include>
+ </includes>
+ <excludes>
+ <exclude>org/apache/jackrabbit/test/api/TestAll.java</exclude>
+ <exclude>org/apache/jackrabbit/test/api/**/Abstract*.java</exclude>
+ <exclude>org/apache/jackrabbit/test/api/**/FrozenNodeTest.java</exclude>
+ <exclude>org/exoplatform/services/jcr/impl/core/security/Test*.java</exclude>
+ </excludes>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <!-- *** -->
+ <!-- ALL -->
+ <!-- *** -->
+ <!-- Use "mvn -Prun-all" to launch default tests and TCK -->
+ <profile>
+ <id>run-all</id>
+ <build>
+ <testResources>
+ <testResource>
+ <directory>src/TCK/java</directory>
+ <includes>
+ <include>**/org/apache/jackrabbit/test/api/nodetype/spec/*.txt</include>
+ </includes>
+ </testResource>
+ </testResources>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <!-- TAKE CARE TO UPDATE ALSO run-tck PROFILE -->
+ <argLine>${env.MAVEN_OPTS}</argLine>
+ <systemProperties>
+ <property>
+ <name>jcr.test.configuration.file</name>
+ <value>${jcr.test.configuration.file}</value>
+ </property>
+ <property>
+ <name>emma.coverage.out.file</name>
+ <value>target/emma/coverage.ec</value>
+ </property>
+ <property>
+ <name>known.issues</name>
+ <value>org.apache.jackrabbit.test.api.SetValueConstraintViolationExceptionTest#testBooleanProperty
+ org.apache.jackrabbit.test.api.SetValueConstraintViolationExceptionTest#testMultipleBooleanProperty
+ org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreName
+ org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrder
+ org.apache.jackrabbit.test.api.version.RestoreTest#testRestoreOrder2
+ org.apache.jackrabbit.test.api.nodetype.PropertyDefTest#testIsRequiredType
+ org.apache.jackrabbit.test.api.SetPropertyConstraintViolationExceptionTest#testBooleanProperty
+ org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testShareable
+ org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testSimpleVersionable
+ org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testActivity
+ org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testConfiguration
+ org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testVersionable
+ org.apache.jackrabbit.test.api.nodetype.PredefinedNodeTypeTest#testVersion
+ org.apache.jackrabbit.test.api.NamespaceRegistryTest#testRegisterNamespace</value>
+ </property>
+ <!-- Uncomment the line below if you want to enable the statistics -->
+ <!--property>
<name>JDBCWorkspaceDataContainer.statistics.enabled</name>
<value>true</value>
</property-->
- </systemProperties>
- <includes>
- <!-- From default tests -->
-
<include>org/exoplatform/services/jcr/api/**/Test*.java</include>
-
<include>org/exoplatform/services/jcr/usecases/**/Test*.java</include>
-
<include>org/exoplatform/services/jcr/usecases/**/*Test.java</include>
-
<include>org/exoplatform/services/jcr/impl/**/Test*.java</include>
- <!-- From TCK -->
-
<include>org/apache/jackrabbit/test/api/*Test.java</include>
-
<include>org/apache/jackrabbit/test/api/observation/*Test.java</include>
-
<include>org/apache/jackrabbit/test/api/lock/*Test.java</include>
-
<include>org/apache/jackrabbit/test/api/nodetype/*Test.java</include>
-
<include>org/apache/jackrabbit/test/api/query/*Test.java</include>
-
<include>org/apache/jackrabbit/test/api/version/*Test.java</include>
- </includes>
- <excludes>
- <!-- From default tests -->
-
<exclude>org/exoplatform/services/jcr/**/TestQueryUsecases.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/TestImport.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/TestRollbackBigFiles.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/TestErrorMultithreading.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/api/TestAll.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/api/**/TestSameNameItems.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/api/**/TestVersionRestore.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/api/**/TestSameNameItems.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/api/**/TestVersionRestore.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestWorkspaceManagement.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestRepositoryManagement.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestSaveConfiguration.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/ValueStoragePluginTest.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestWorkspaceRestore.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestSessionCleaner.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/Base*.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestJCRSerializationStream.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestJCRSerializationVersionRestore.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/usecases/**/RemoveSameNameSiblingTest.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/usecases/**/TestQueryWithNumberAndSpace.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/usecases/BaseUsecasesTest.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/usecases/**/ExportWorkspaceSystemViewTest.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestSessionDataManager.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestLinkedWorkspaceStorageCacheMetrics.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/SQLBenchmarkTest.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestCleanableFileStreamValueData.java</exclude>
-
<exclude>org/exoplatform/services/jcr/**/impl/**/TestLockPerstistentDataManager.java</exclude>
- <!-- From TCK -->
-
<exclude>org/apache/jackrabbit/test/api/TestAll.java</exclude>
-
<exclude>org/apache/jackrabbit/test/api/**/Abstract*.java</exclude>
-
<exclude>org/apache/jackrabbit/test/api/**/FrozenNodeTest.java</exclude>
- </excludes>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </profile>
- <profile>
- <id>run-devtests</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <phase>test</phase>
- <!-- argLine>${env.MAVEN_OPTS}</argLine -->
- <goals>
- <goal>test</goal>
- </goals>
- <systemProperties>
- <property>
- <name>jcr.test.configuration.file</name>
- <value>${jcr.test.configuration.file}</value>
- </property>
- <!-- Uncomment the line below if you want to enable the
statistics -->
- <!--property>
+ </systemProperties>
+ <includes>
+ <!-- From default tests -->
+ <include>org/exoplatform/services/jcr/api/**/Test*.java</include>
+ <include>org/exoplatform/services/jcr/usecases/**/Test*.java</include>
+ <include>org/exoplatform/services/jcr/usecases/**/*Test.java</include>
+ <include>org/exoplatform/services/jcr/impl/**/Test*.java</include>
+ <!-- From TCK -->
+ <include>org/apache/jackrabbit/test/api/*Test.java</include>
+ <include>org/apache/jackrabbit/test/api/observation/*Test.java</include>
+ <include>org/apache/jackrabbit/test/api/lock/*Test.java</include>
+ <include>org/apache/jackrabbit/test/api/nodetype/*Test.java</include>
+ <include>org/apache/jackrabbit/test/api/query/*Test.java</include>
+ <include>org/apache/jackrabbit/test/api/version/*Test.java</include>
+ </includes>
+ <excludes>
+ <!-- From default tests -->
+ <exclude>org/exoplatform/services/jcr/**/TestQueryUsecases.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/TestImport.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/TestRollbackBigFiles.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/TestErrorMultithreading.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/api/TestAll.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/api/**/TestSameNameItems.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/api/**/TestVersionRestore.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/api/**/TestSameNameItems.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/api/**/TestVersionRestore.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestWorkspaceManagement.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestRepositoryManagement.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestSaveConfiguration.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/ValueStoragePluginTest.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestWorkspaceRestore.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestSessionCleaner.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/Base*.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestJCRSerializationStream.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestJCRSerializationVersionRestore.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/usecases/**/RemoveSameNameSiblingTest.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/usecases/**/TestQueryWithNumberAndSpace.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/usecases/BaseUsecasesTest.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/usecases/**/ExportWorkspaceSystemViewTest.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestSessionDataManager.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestLinkedWorkspaceStorageCacheMetrics.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/SQLBenchmarkTest.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestCleanableFileStreamValueData.java</exclude>
+ <exclude>org/exoplatform/services/jcr/**/impl/**/TestLockPerstistentDataManager.java</exclude>
+ <!-- From TCK -->
+ <exclude>org/apache/jackrabbit/test/api/TestAll.java</exclude>
+ <exclude>org/apache/jackrabbit/test/api/**/Abstract*.java</exclude>
+ <exclude>org/apache/jackrabbit/test/api/**/FrozenNodeTest.java</exclude>
+ <!-- security -->
+ <exclude>org/exoplatform/services/jcr/impl/core/security/Test*.java</exclude>
+ </excludes>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>run-devtests</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <phase>test</phase>
+ <!-- argLine>${env.MAVEN_OPTS}</argLine -->
+ <goals>
+ <goal>test</goal>
+ </goals>
+ <systemProperties>
+ <property>
+ <name>jcr.test.configuration.file</name>
+ <value>${jcr.test.configuration.file}</value>
+ </property>
+ <!-- Uncomment the line below if you want to enable the statistics -->
+ <!--property>
<name>JDBCWorkspaceDataContainer.statistics.enabled</name>
<value>true</value>
</property-->
- </systemProperties>
- <includes>
- <include>**/**/reading_/Test*.java</include>
- <include>**/**/writing_/Test*.java</include>
-
<include>**/**/TestJBossCacheWorkspaceStorageCache_.java</include>
-
<exclude>**/**/TestCleanableFileStreamValueData.java</exclude>
-
<include>**/**/TestSVNodeDataOptimization_.java</include>
- <include>**/**/TestNodeReference.java</include>
- </includes>
- </configuration>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
+ </systemProperties>
+ <includes>
+ <include>**/**/reading_/Test*.java</include>
+ <include>**/**/writing_/Test*.java</include>
+ <include>**/**/TestJBossCacheWorkspaceStorageCache_.java</include>
+ <exclude>**/**/TestCleanableFileStreamValueData.java</exclude>
+ <include>**/**/TestSVNodeDataOptimization_.java</include>
+ <include>**/**/TestNodeReference.java</include>
+ </includes>
+ <excludes>
+ <exclude>org/exoplatform/services/jcr/impl/core/security/Test*.java</exclude>
+ </excludes>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
</project>
Modified:
jcr/branches/1.12-SEC/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/RepositoryImpl.java
===================================================================
---
jcr/branches/1.12-SEC/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/RepositoryImpl.java 2010-06-04
12:50:45 UTC (rev 2492)
+++
jcr/branches/1.12-SEC/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/RepositoryImpl.java 2010-06-04
13:47:36 UTC (rev 2493)
@@ -60,13 +60,15 @@
/**
* Created by The eXo Platform SAS.<br/>
* Implementation of javax.jcr.Repository
- *
+ *
* @author <a href="mailto:geaz@users.sourceforge.net">Gennady Azarenkov
</a>
* @version $Id: RepositoryImpl.java 14487 2008-05-20 07:08:40Z gazarenkov $
*/
public class RepositoryImpl implements ManageableRepository
{
+ private static final RuntimePermission GET_SYSTEM_SESSION_PERMISSION = new
RuntimePermission("getJCRSystemSession");
+
/**
* Repository descriptors.
*/
@@ -134,7 +136,7 @@
/**
* RepositoryImpl constructor.
- *
+ *
* @param container Repository container
* @throws RepositoryException error of initialization
* @throws RepositoryConfigurationException error of configuration
@@ -215,13 +217,13 @@
/**
* Creation contains three steps. First
* <code>configWorkspace(WorkspaceEntry wsConfig)</code> - registration a
new
- * configuration in RepositoryContainer and create WorkspaceContainer. Second,
- * the main step, is
+ * configuration in RepositoryContainer and create WorkspaceContainer.
+ * Second, the main step, is
* <code>initWorkspace(String workspaceName, String rootNodeType)</code>
-
* initializing workspace by name and root nodetype. Third, final step,
* starting all components of workspace. Before creation workspace <b>must be
* configured</b>
- *
+ *
* @see
org.exoplatform.services.jcr.core.RepositoryImpl#configWorkspace(org.exoplatform.services.jcr.config.WorkspaceEntry
* )
* @see
org.exoplatform.services.jcr.core.RepositoryImpl#initWorkspace(java.lang.String,java.lang.String)
@@ -327,6 +329,13 @@
*/
public SessionImpl getSystemSession(String workspaceName) throws RepositoryException
{
+ // Need privileges to get system session.
+ SecurityManager security = System.getSecurityManager();
+ if (security != null)
+ {
+ security.checkPermission(GET_SYSTEM_SESSION_PERMISSION);
+ }
+
if (getState() == OFFLINE)
LOG.warn("Repository " + getName() + " is OFFLINE.");
@@ -410,7 +419,7 @@
/**
* Internal Remove Workspace.
- *
+ *
* @param workspaceName workspace name
* @throws RepositoryException error of remove
*/
@@ -498,7 +507,7 @@
/**
* Internal login.
- *
+ *
* @param state ConversationState
* @param workspaceName workspace name
* @return SessionImpl
@@ -580,7 +589,7 @@
/**
* Set all repository workspaces ReadOnly status.
- *
+ *
* @param wsStatus ReadOnly workspace status
*/
private void setAllWorkspacesReadOnly(boolean wsStatus)
Added:
jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/core/security/BaseSecurityTest.java
===================================================================
---
jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/core/security/BaseSecurityTest.java
(rev 0)
+++
jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/core/security/BaseSecurityTest.java 2010-06-04
13:47:36 UTC (rev 2493)
@@ -0,0 +1,173 @@
+/**
+ * Copyright (C) 2010 eXo Platform SAS.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+
+package org.exoplatform.services.jcr.impl.core.security;
+
+import org.exoplatform.services.jcr.BaseStandaloneTest;
+
+import java.net.URL;
+import java.security.AccessControlContext;
+import java.security.AccessController;
+import java.security.AllPermission;
+import java.security.CodeSource;
+import java.security.Permission;
+import java.security.PermissionCollection;
+import java.security.Permissions;
+import java.security.PrivilegedAction;
+import java.security.PrivilegedActionException;
+import java.security.PrivilegedExceptionAction;
+import java.security.ProtectionDomain;
+import java.util.Enumeration;
+
+/**
+ * @author <a href="mailto:andrew00x@gmail.com">Andrey
Parfonov</a>
+ * @version $Id$
+ */
+public abstract class BaseSecurityTest extends BaseStandaloneTest
+{
+
+ public void setUp() throws Exception
+ {
+ super.setUp();
+ SecurityManager security = System.getSecurityManager();
+ assertNotNull("SecurityManager must be ON.", security);
+ }
+
+ public String getRepositoryName()
+ {
+ return "db1";
+ }
+
+ /**
+ * Run privileged action with specified privileges.
+ */
+ protected <T> T doPrivilegedAction(PrivilegedExceptionAction<T> action,
ProtectionDomain[] protectionDomains)
+ throws Throwable
+ {
+ try
+ {
+ return AccessController.doPrivileged(action, new
AccessControlContext(protectionDomains));
+ }
+ catch (PrivilegedActionException pae)
+ {
+ throw pae.getCause();
+ }
+ }
+
+ /**
+ * Run privileged action without any privileges.
+ */
+ protected <T> T doPrivilegedAction(PrivilegedExceptionAction<T> action)
throws Throwable
+ {
+ ProtectionDomain[] protectionDomains =
+ new ProtectionDomain[]{new ProtectionDomain(new CodeSource(getCodeSource(),
+ (java.security.cert.Certificate[])null), new Permissions())};
+ try
+ {
+ return AccessController.doPrivileged(action, new
AccessControlContext(protectionDomains));
+ }
+ catch (PrivilegedActionException pae)
+ {
+ throw pae.getCause();
+ }
+ }
+
+ /**
+ * Run privileged action with static permissions only.
+ */
+ protected <T> T
doPrivilegedActionStaticPermissions(PrivilegedExceptionAction<T> action) throws
Throwable
+ {
+ try
+ {
+ return AccessController.doPrivileged(action);
+ }
+ catch (PrivilegedActionException pae)
+ {
+ throw pae.getCause();
+ }
+ }
+
+ /**
+ * Run privileged action with specified privileges.
+ */
+ protected <T> T doPrivilegedAction(PrivilegedAction<T> action,
ProtectionDomain[] protectionDomains)
+ {
+ return AccessController.doPrivileged(action, new
AccessControlContext(protectionDomains));
+ }
+
+ /**
+ * Run privileged action without any privileges.
+ */
+ protected <T> T doPrivilegedAction(PrivilegedAction<T> action)
+ {
+ ProtectionDomain[] protectionDomains =
+ new ProtectionDomain[]{new ProtectionDomain(new CodeSource(getCodeSource(),
+ (java.security.cert.Certificate[])null), new Permissions())};
+ return AccessController.doPrivileged(action, new
AccessControlContext(protectionDomains));
+ }
+
+ /**
+ * Run privileged action with static permissions only.
+ */
+ protected <T> T doPrivilegedActionStaticPermissions(PrivilegedAction<T>
action)
+ {
+ return AccessController.doPrivileged(action);
+ }
+
+ /**
+ * Get code-source of class.
+ */
+ protected URL getCodeSource()
+ {
+ return getClass().getProtectionDomain().getCodeSource().getLocation();
+ }
+
+ protected static final PermissionCollection ALL = new PermissionCollection()
+ {
+
+ public boolean implies(Permission permission)
+ {
+ return true;
+ }
+
+ public Enumeration<Permission> elements()
+ {
+ return new Enumeration<Permission>()
+ {
+ private boolean hasMore = true;
+
+ public boolean hasMoreElements()
+ {
+ return hasMore;
+ }
+
+ public Permission nextElement()
+ {
+ hasMore = false;
+ return new AllPermission();
+ }
+ };
+ }
+
+ public void add(Permission permission)
+ {
+ }
+ };
+
+}
Property changes on:
jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/core/security/BaseSecurityTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Id
Name: svn:eol-style
+ native
Added:
jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/core/security/TestGetSystemSession.java
===================================================================
---
jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/core/security/TestGetSystemSession.java
(rev 0)
+++
jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/core/security/TestGetSystemSession.java 2010-06-04
13:47:36 UTC (rev 2493)
@@ -0,0 +1,83 @@
+/**
+ * Copyright (C) 2010 eXo Platform SAS.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
+ */
+
+package org.exoplatform.services.jcr.impl.core.security;
+
+import java.security.AccessControlException;
+import java.security.PrivilegedExceptionAction;
+
+/**
+ * @author <a href="mailto:andrew00x@gmail.com">Andrey
Parfonov</a>
+ * @version $Id$
+ */
+public class TestGetSystemSession extends BaseSecurityTest
+{
+ public void testGetSystemSessionSuccess()
+ {
+ PrivilegedExceptionAction<Object> action = new
PrivilegedExceptionAction<Object>()
+ {
+ public Object run() throws Exception
+ {
+ repository.getSystemSession();
+ return null;
+ }
+
+ };
+ try
+ {
+ doPrivilegedActionStaticPermissions(action);
+ }
+ catch (AccessControlException ace)
+ {
+ fail("Must be able get system session. We are under static
permissions");
+ }
+ catch (Throwable t)
+ {
+ t.printStackTrace();
+ fail();
+ }
+ }
+
+ public void testGetSystemSessionFail()
+ {
+ PrivilegedExceptionAction<Object> action = new
PrivilegedExceptionAction<Object>()
+ {
+ public Object run() throws Exception
+ {
+ repository.getSystemSession();
+ return null;
+ }
+
+ };
+ try
+ {
+ doPrivilegedAction(action);
+ fail("Must not be able get system session.");
+ }
+ catch (AccessControlException ace)
+ {
+ // OK
+ }
+ catch (Throwable t)
+ {
+ t.printStackTrace();
+ fail();
+ }
+ }
+}
Property changes on:
jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/java/org/exoplatform/services/jcr/impl/core/security/TestGetSystemSession.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:keywords
+ Id
Name: svn:eol-style
+ native
Added: jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/resources/test.policy
===================================================================
--- jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/resources/test.policy
(rev 0)
+++ jcr/branches/1.12-SEC/exo.jcr.component.core/src/test/resources/test.policy 2010-06-04
13:47:36 UTC (rev 2493)
@@ -0,0 +1,5 @@
+// configure static permissions here
+grant {
+ permission java.security.AllPermission;
+};
+
\ No newline at end of file