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

Reply via email to