Hello,
I´m trying to use Jackrabbit Oak with Mongo DB to build an Content Repository
app.
In my tests I use Eclipse Indigo with Maven.
In my pom I 'have the following dependencies
<dependency>
<groupId>org.apache.jackrabbit</groupId>
<artifactId>oak-jcr</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>2.12.2</version>
</dependency>
I have a Mongo DB running in my computer with the default parameters.
My test code is the following:
protected static final String HOST = System.getProperty("mongo.host",
"localhost");
protected static final int PORT = Integer.getInteger("mongo.port", 27017);
protected static final String DB = System.getProperty("mongo.db", "test");
/**
* @param args
* @throws Exception
*/
public static void main(String[] args)
throws Exception{
MongoConnection connection = new MongoConnection(HOST, PORT, DB);
DocumentMK mk = new
DocumentMK.Builder().setMongoDB(connection.getDB()).open();
Repository repository = new Jcr(new
KernelNodeStore(mk)).createRepository();
Session session = repository.login(new SimpleCredentials("admin",
"admin".toCharArray()));
Node rootNode = session.getRootNode();
rootNode.addNode("testNode", NodeType.NT_UNSTRUCTURED);
session.save();
session.logout();
}
I get the following exception when running the class in debbug mode:
In eclipse in VM arguments in debug configuration I have the following
parameters:
-Dcatalina.base="D:\Workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0"
-Dcatalina.home="C:\Program Files\apache-tomcat-7.0.34"
-Dwtp.deploy="D:\Workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps"
-Djava.endorsed.dirs="C:\Program Files\apache-tomcat-7.0.34\endorsed"
-Dmongo.host=localhost -Dmongo.port=27101 -Dmongo.db=test
Exception in thread "main" com.mongodb.MongoTimeoutException: Timed out while
waiting for a server that matches AnyServerSelector{} after 893 ms
at com.mongodb.BaseCluster.getServer(BaseCluster.java:87)
at com.mongodb.DBTCPConnector.getServer(DBTCPConnector.java:654)
at com.mongodb.DBTCPConnector.access$300(DBTCPConnector.java:39)
at
com.mongodb.DBTCPConnector$MyPort.getConnection(DBTCPConnector.java:503)
at com.mongodb.DBTCPConnector$MyPort.get(DBTCPConnector.java:451)
at com.mongodb.DBTCPConnector.getPrimaryPort(DBTCPConnector.java:409)
at com.mongodb.DBCollectionImpl.createIndex(DBCollectionImpl.java:337)
at com.mongodb.DBCollection.createIndex(DBCollection.java:564)
at com.mongodb.DBCollection.ensureIndex(DBCollection.java:663)
at
org.apache.jackrabbit.oak.plugins.document.mongo.MongoDocumentStore.<init>(MongoDocumentStore.java:132)
at
org.apache.jackrabbit.oak.plugins.document.DocumentMK$Builder.setMongoDB(DocumentMK.java:485)
at
org.apache.jackrabbit.oak.plugins.document.DocumentMK$Builder.setMongoDB(DocumentMK.java:506)
I think I cannot get a connection to the server.
Can you help?
Thanks
-----------------------------------------------------------------------------------------------------
Raquel Neves
raquel.neves@alert-online.<mailto:raquel.neves@alert-online.>com