Why are you asking for code which will run on the server side if you are unable to change the server's code?
On 8/16/10 7:41 AM, Thomas Lustig wrote: > Hi Alex, > Thanks for your help! > > which interface could be used on serverside for registering nodes > programmatically? > ( I am not able to change the servers code, so my only possibilities are > s small client application running on the server machine or the > configuration via config files) > As far as I understoud there is just RMI and DavEx interface to access > the Jackrabbit server. > Could you please post a small example? ( i know this question is asked > alot but never provided with an answer) > Thanks again for supporting me. > > best regards, > Thomas > > Alexander Klimetschek schrieb: >> On Mon, Aug 16, 2010 at 13:11, Thomas Lustig <[email protected]> >> wrote: >> >>> hi alex, >>> >>> If i am not able to register new nodes via RMI and also not via DavEx, >>> whatelse could i do >>> to register my new nodetypes directly on server? >>> >>> I also tried it with the XML file alternative: >>> ----------------- my custom_nodetypes.xml in folder >>> \repository\nodetypes >>> ------------- >>> <nodeTypes xmlns:myns="my-namespace" >>> xmlns:nt="http://www.jcp.org/jcr/nt/1.0"> >>> >>> <nodeType name="myns:javaobject" >>> isMixin="true" hasOrderableChildNodes="false" >>> primaryItemName="" >>> isAbstract="false"> >>> <supertypes> >>> <supertype>nt:base</supertype> >>> </supertypes> >>> >>> <propertyDefinition name="myns:hibernateid" >>> requiredType="String" >>> autoCreated="false" >>> mandatory="false" >>> onParentVersion="COPY" >>> protected="false" >>> multiple="false"/> >>> >>> <propertyDefinition name="myns:javaclass" >>> requiredType="String" >>> autoCreated="false" >>> mandatory="false" >>> onParentVersion="COPY" >>> protected="false" >>> multiple="false"/> >>> >>> </nodeType> >>> </nodeTypes> >>> ------------------------------------------------------------------------------------- >>> >>> in Java i used it this way: >>> .......... >>> filenode.addMixin("myns:javaobject"); >>> filenode.setProperty("myns:javaclass", myclass); >>> filenode.setProperty("myns:hibernateid", myuuid); >>> ......... >>> >>> Here everthing works fine until i restart the jackrabbit server. >>> After this >>> my new nodetypes are not >>> accessible on old nodes, only on new created nodes. >>> >>> Is there any working alternative for me to register my nodetypes? >>> Maybe programmatically or via Configuration files? >>> >> >> Programmatically on the server side. From an architectural point of >> view I would do all repository administration related things >> (including installation of node types) on the server itself. >> >> If you have a lot of new node types for changing content structures >> (ie. depending on usage of the system, not development), I'd consider >> to become more (nt:)unstructured ;-) >> >> Regards, >> Alex >> >> >
