Esbach, Brandon wrote: > Hi, > > I've had a request from one of my users to create a script on our hosted > wiki that will create all the needed wiki content for one of their lists. > > * Problem 1, there is over 2000 xwiki documents to create from this list > * Problem 2, they're a little anxious to get it going > > I've tried using the $xwiki.createDocument in the underneath code (most > likely more saves than necessary). > What seems to be happening is this: > > * Does not create a new document, attaches instead to XWiki.WebHome > * All following changes occur to XWiki.Webhome - including rename. > > Origionally had it saving after each change, no difference. > > #set($seedForUnique=$xwiki.formatDate($xwiki.currentDate, > "HHmmssddMMyyyy")) > #set($userUnique=$context.user.replace("XWiki.", "")) > #set($generatedUnique="${userUnique}${seedForUnique}") > #set($baseAVLClass='XWiki.AVLEntryClass') > #set($baseSupplierClass='XWiki.VendorClass') > #set($newSupplierPartClass='XWiki.AVLVendorClass') > > #set($newDocument=$xwiki.createDocument()) > $newDocument.rename($generatedUnique) > $newDocument.setContent('#includeForm("AVL.VendorClassSheet")') > $newDocument.createNewObject('${baseSupplierClass}') > $newDocument.save() > #set($docObj=$newDocument.getObject('${baseSupplierClass}', 0)) > $docObj.set('name', 'Samsung') > $docObj.set('email', '') > $newDocument.save() > > I would guess I'm not doing a crucial step (or doing that step wrong)? > Better suggestions welcome too :) > >
You never need to createDocuments in XWiki. The Javadoc for that method is wrong. Just replace: #set($newDocument=$xwiki.createDocument()) $newDocument.rename($generatedUnique) with: #set($newDocument = $xwiki.getDocument($generatedUnique) Even better, you can use $xwiki.generateRandomString(int size) (this method was deprecated in 1.3M2, as it has moved to $util.generateRandomString(int size) -- Sergiu Dumitriu http://purl.org/net/sergiu/ _______________________________________________ users mailing list users@xwiki.org http://lists.xwiki.org/mailman/listinfo/users