This bundle is a test project for PHPCR
- To install first add the following to composer.json
"polygram/phpcr-bundle": "dev-master"
-
Run, (*1)
"composer update", (*2)
It should also install the bundle dependencies, (*3)
"require": {
"jackalope/jackalope-jackrabbit": "1.0.*",
"doctrine/phpcr-bundle": "1.0.*",
"doctrine/phpcr-odm": "1.0.*",
"doctrine/doctrine-fixtures-bundle": "dev-master"
}
-
Add the following line, immediately after the last AnnotationRegistry::registerFile line:, (*4)
AnnotationRegistry::registerFile(__DIR__.'/../vendor/doctrine/phpcr-odm/lib/Doctrine/ODM/PHPCR/Mapping/Annotations/DoctrineAnnotations.php');
- Initialize the bundles in AppKernel.php
new Doctrine\Bundle\PHPCRBundle\DoctrinePHPCRBundle(),
new Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle(),
new polygram\PHPCRBundle\polygramPHPCRBundle(),
- Add the following to your config.yml
doctrine_phpcr:
session:
backend:
type: jackrabbit
url: http://127.0.0.1:8080/server/
workspace: default
username: admin
password: admin
odm:
auto_mapping: true
auto_generate_proxy_classes: %kernel.debug%
- Download and Run Jackrabbit
wget http://apache.online.bg/jackrabbit/2.4.3/jackrabbit-standalone-2.4.3.jar
java -jar jackrabbit-standalone-*.jar
- Register node types
app/console doctrine:phpcr:register-system-node-types
- Install the fixtures
app/console doctrine:phpcr:fixtures:load
then run:
app/console doctrine:phpcr:dump
to see the result
TODO
- List the repository content in the default controller
- Extends the example to use the other 2 CR backends
- Make test on which parts of the PHPCR specification are supported