Is there documentation on importing via an API? It'd be nice to release content using a bash script similar to wget for backups.
Regards, Ben -----Original Message----- From: [email protected] [mailto:[EMAIL PROTECTED] Sent: 02 March 2007 17:31 To: [email protected] Subject: Re: [magnolia-user] Sample Code for Creating a Page? Hi guys, Just a few other tracks: * you could use the import/export mechanisms. They're easily useable through command line tools like wget. * in the same vein, you could create a custom Page implementation (that creates your content with code similar to the one below), and use it through wget if you need command line. * there are plans for remoting (some of) the Magnolia API. See jira or the dev list (or ping Oliver ;)) and see if it would fit your needs Cheers g On Mar 2, 2007, at 17:49 , Simon Goodchild wrote: > Hi Sean, > > Below is a piece of code I use which should do the page creation part. > It's designed for a servlet environment, so will need some work if you > need to run from the command line. It may also need a bit of tweaking > depending on the magnolia version you're using. > > Haven't tried populating content via the APIs so can't offer anything > useful on that at the moment. It will be in APIs somewhere, so trawl > through the Javadoc and Magnolia sources and you will find it > eventually. > > Hope this helps, > > Simon > > String mgnlRepository = request.getParameter("mgnlRepository"); > if( mgnlRepository == null ) > { > mgnlRepository = "website"; > } > > String mgnlPath = request.getParameter("mgnlPath"); String label = > request.getParameter("label"); String title = > request.getParameter("title"); String template = > request.getParameter("template"); String name = "/"; //default in case > something goes wrong if( mgnlPath != null && mgnlPath.length() > 0 ) { > MgnlContext.initWebContext(request); > HierarchyManager hm = MgnlContext.getHierarchyManager > (mgnlRepository); > ValueFactory valueFactory = hm.getWorkspace().getSession > ().getValueFactory(); > name = label; > if( label == null || label.trim().length() < 1 ) > { > name = "untitled"; > } > try { > Content parentNode = hm.getContent(mgnlPath); > String slash = "/"; > boolean isRoot = false; > if (mgnlPath.equals("/")) { > isRoot = true; > slash = StringUtils.EMPTY; > } > if (hm.isExist(mgnlPath + slash + label)) { > if (!isRoot) { > name = Path.getUniqueLabel(hm, mgnlPath, label); > } > else { > name = Path.getUniqueLabel(hm, StringUtils.EMPTY, label); > } > } > Content newNode; > newNode = parentNode.createContent(name, > ItemType.CONTENT.getSystemName()); > newNode.getMetaData().setAuthorId(Authenticator.getUserId(request)); > newNode.getMetaData().setCreationDate(); > newNode.getMetaData().setModificationDate(); > newNode.getMetaData().setTemplate(template); > newNode.setNodeData("title", valueFactory.createValue(title)); > parentNode.save(); > } > catch (Exception e) { > System.out.println("error creating page: " + name); > } > } > > > On 02/03/07, Sean McMains <[email protected]> wrote: >> Hi Folks, >> >> I'm wanting to add a specific page to each of the sites that we're >> running under Magnolia. I've got the code to iterate through the >> WEBSITE repository working fine, but am not having any luck figuring >> out what I need to do to create a new page and populate it with a bit >> of data. (I've tried a couple different things that look like they >> ought to work, and run without error, but don't actually produce any >> results.) >> >> Does anybody have any sample page-creation code they'd be willing to >> share? >> Or if there's something relevant in the Magnolia source, I'd love to >> know where to look. >> >> Thanks for any help! >> >> Sean >> >> >> ---------------------------------------------------------------- >> for list details see >> http://www.magnolia.info/en/developer.html >> ---------------------------------------------------------------- >> > > ---------------------------------------------------------------- > for list details see > http://www.magnolia.info/en/developer.html > ---------------------------------------------------------------- ---------------------------------------------------------------- for list details see http://www.magnolia.info/en/developer.html ---------------------------------------------------------------- ---------------------------------------------------------------- for list details see http://www.magnolia.info/en/developer.html ----------------------------------------------------------------
