You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jackrabbit.apache.org by Łukasz Kaleta <lu...@gmail.com> on 2012/12/29 14:31:10 UTC

Register custom node types globally

Hi,

I would like to register mine custom node types globally:

I am doing following:

            repository = new TransientRepository(config, home);
            Session session = repository.login((new
SimpleCredentials("username", "password".toCharArray())))
            ....
            JackrabbitNodeTypeManager manager = (JackrabbitNodeTypeManager)
session.getWorkspace().getNodeTypeManager();
            nodeTypes = manager.registerNodeTypes(cndInputStream,
JackrabbitNodeTypeManager.TEXT_X_JCR_CND);
            ....
            session.logout()


If next I login again mine custom node types are gone.
Is there a way for doing it globally ?

-- 
// Łukasz Kaleta

Re: Register custom node types globally

Posted by UMAIL <UM...@gmx.de>.
Try session.save()!

Am 08.01.2013 um 13:53 schrieb Alexander Klimetschek <ak...@adobe.com>:

> On 29.12.2012, at 14:31, Łukasz Kaleta <lu...@gmail.com> wrote:
> 
>> Hi,
>> 
>> I would like to register mine custom node types globally:
>> 
>> I am doing following:
>> 
>>           repository = new TransientRepository(config, home);
>>           Session session = repository.login((new
>> SimpleCredentials("username", "password".toCharArray())))
>>           ....
>>           JackrabbitNodeTypeManager manager = (JackrabbitNodeTypeManager)
>> session.getWorkspace().getNodeTypeManager();
>>           nodeTypes = manager.registerNodeTypes(cndInputStream,
>> JackrabbitNodeTypeManager.TEXT_X_JCR_CND);
>>           ....
>>           session.logout()
>> 
>> 
>> If next I login again mine custom node types are gone.
>> Is there a way for doing it globally ?
> 
> Looks good to me. Registering node types is always done "globally", i.e. persistent. Are you sure that registering works? I.e. node types are present in that initial session and no exceptions are thrown?
> 
> Cheers,
> Alex
> 

Re: Register custom node types globally

Posted by Alexander Klimetschek <ak...@adobe.com>.
On 29.12.2012, at 14:31, Łukasz Kaleta <lu...@gmail.com> wrote:

> Hi,
> 
> I would like to register mine custom node types globally:
> 
> I am doing following:
> 
>            repository = new TransientRepository(config, home);
>            Session session = repository.login((new
> SimpleCredentials("username", "password".toCharArray())))
>            ....
>            JackrabbitNodeTypeManager manager = (JackrabbitNodeTypeManager)
> session.getWorkspace().getNodeTypeManager();
>            nodeTypes = manager.registerNodeTypes(cndInputStream,
> JackrabbitNodeTypeManager.TEXT_X_JCR_CND);
>            ....
>            session.logout()
> 
> 
> If next I login again mine custom node types are gone.
> Is there a way for doing it globally ?

Looks good to me. Registering node types is always done "globally", i.e. persistent. Are you sure that registering works? I.e. node types are present in that initial session and no exceptions are thrown?

Cheers,
Alex