2012-10-01 2 views
0

Bonjour, que faire de la configuration programmatique du référentiel, car la plupart des paramètres de la configuration dans le référentiel ne peuvent être déterminés que lors de l'exécution.Configuration programmatique de Modeshape 2.8

On dirait que je suis incapable d'utiliser des titres de compétence anonyme quand im essayez d'imprimer la session, il jette NPE Code ci-dessous

config.repositorySource("store") 
      .usingClass(DiskSource.class) 
      .setProperty("repositoryRootPath", "c:/x/repo1") 
      .setProperty("defaultWorkspaceName","default"); 

      config.repository("content") 
      .setOption(JcrRepository.Option.USE_ANONYMOUS_ACCESS_ON_FAILED_LOGIN, "true") 
      .setSource("store"); 

    Session session = engine.getRepository("content").login("default"); 

Puis-je ajouter authentificateur personnalisée à JcrConfiguration?

+1

Quelle est la trace de la pile de l'exception NullPointerException? –

Répondre

0

La méthode correcte pour configurer un moteur ModeShape consiste à utiliser l'objet JcrConfiguration, comme décrit here. Cela semble être ce que vous faites, donc cette partie est juste.

Une fois que vous avez créé votre configuration, vous pouvez le vérifier pour les problèmes:

if (!configuration.getProblems().isEmpty()) { 
    for (Problem problem : configuration.getProblems()) { 
     // Report these problems! 
    } 
} 

En supposant qu'il n'y a pas de problème, vous pouvez alors utiliser votre configuration pour créer une nouvelle instance JcrEngine (voir documentation):

JcrConfiguration config = ... 
JcrEngine engine = config.build(); 
engine.start(); 

Ensuite, regardez votre référentiel par son nom et vous connecter en utilisant l'API JCR:

javax.jcr.Repository repository = engine.getRepository("Name of repository"); 

Credentials credentials = ...; // JCR credentials 
String workspaceName = ...; // Name of repository workspace 
Session session = repository.login(credentials,workspaceName); 
+0

salut randall merci pour la réponse rapide est-il un moyen par programme à l'authentificateur – user1710955