Jukka Zitting wrote:
Hi,
On 2/23/07, ruchi goel <[EMAIL PROTECTED]> wrote:
Is this not a standard way to register nodetypes ?
No. You want to use the JackrabbitNodeTypeManager interface from the
jackrabbit-api API library. Like this:
InputStream xml = new FileInputStream(CUSTOM_NODETYPE_CONFIG);
Session session = ...;
JackrabbitNodeTypeManager manager = (JackrabbitNodeTypeManager)
session.getWorkspace().getNodeTypeManager();
manager.registerNodeTypes(xml, JackrabbitNodeTypeManager.TEXT_XML);
The JackrabbitNodeTypeManager.registerNodeTypes() handles all the
required parsing and other details.
OK. But if you want to check if a nodetype is already registered, ( and
reregister or do not register depending on your requirement) , you still
need to iterate and register nodes one by one.So, what s the advantage
of manager.registerNodeTypes(xml,
JackrabbitNodeTypeManager.TEXT_XML); as opposed to
ntReg.registerNodeType(def);
I understand that manager.registerNodeTypes(xml,
JackrabbitNodeTypeManager.TEXT_XML); can register in one shot , but
may be it is a good idea to use it at the end of development , when you
know you will not be registering or reregistering the nodes again and again.
Thanks,
Ruchi
You can also use the JackrabbitNodeTypeManager.hasNodeType() method to
check whether a given node type has already been registered.
But what
BR,
Jukka Zitting