GSXML

A product which uses GenericSetup to Import and Export ATCT based Content as pure XML data. GSXML makes heavy use of Five to avoid starting from scratch with another Import/Export Product. Instead of that, it uses benefits of already existing, well tested Products, like Marshall and GenericSetup. The new approach with the Component Architecture that comes with Zope 3 makes it possible to extend the existing functionality and melt it together to one product.

Current release

No stable release available yet.

Project Description

GSXML

GSXML a Plone Import/Export Tool

Features

  • Binary Data handling
  • Reference handling

Copyright

License

  • GPL, a LICENSE file should have accompanied this module. If not please contact the package maintainer.

Installation

This is an installation guide for the following environment:

Plone 2.5.3-final,
CMF-1.6.4,
Zope (Zope 2.9.7-final, python 2.4.4, linux2),
Five 1.4.3,
Python 2.4.4 (#2, Apr 12 2007, 21:03:11) [GCC 4.1.2 (Ubuntu 4.1.2-0ubuntu4)],
PIL 1.1.6

Plone-2.5.3-final comes with Five 1.3.8, so first of all we need to update this to the lates 1.4 relase. So check out the 1.4.3 version of Five from the SVN and drop it into your $INSTANCE_HOME/Products folder:

~$ svn co svn://svn.zope.org/repos/main/Products.Five/tags/1.4.3 Five

We need to update to Marshall 1.0.0-b1 in our Plone-2.5.3-final as well. Get it from the SVN and put it in the $INSTANCE_HOME/Products folder:

~$ svn co https://svn.plone.org/svn/archetypes/Marshall/tags/1.0.0-b1 Marshall

Now it is time to get GSXML running. Since version 0.4, GSXML comes as an egg. You can find it here:

http://python.org/pypi/collective.plone.gsxml

The easiest way to install an egg is with PEAK's easy_install tool:

http://peak.telecommunity.com/DevCenter/EasyInstall

After installing easy_install, you can type the following to get GSXML on your machine:

~$ easy_install collective.plone.gsxml

Now we have to tell our Instance to include the egg. Therefore we need to put a slug in our $INSTANCE_HOME/etc/package-includes. Create there a file called collective.plone.gsxml-configure.zcml. Put ther the following line inside:

<include package="collective.plone.gsxml" file="configure.zcml" />

You also have to add a site.zcml in your INSTANCE_HOME/etc folder, if not already exists, including that content:

<configure xmlns="http://namespaces.zope.org/zope"
           xmlns:meta="http://namespaces.zope.org/meta"
           xmlns:five="http://namespaces.zope.org/five">

  <include package="Products.Five" />
  <meta:redefinePermission from="zope2.Public" to="zope.Public" />


  <!-- Load the meta -->
  <include files="package-includes/*-meta.zcml" />
  <five:loadProducts file="meta.zcml"/>

  <!-- Load the configuration -->
  <include files="package-includes/*-configure.zcml" />
  <five:loadProducts />

  <!-- Load the configuration overrides-->
  <includeOverrides files="package-includes/*-overrides.zcml" />
  <five:loadProductsOverrides />

</configure>

After you restared your instance, simply append a 'gsxml' at the end of your url, e.g:

http://localhost:8080/plone/Members/admin/gsxml

This should make the gsxml GUI appear;) Happy exporting...

NOTE:

  • In Plone 2.5.3 GSXML won't show up in the quickinstaller, simply add the magic word gsxml at the end of your URL
  • We don't have an adapter for ISiteRoot, so don't try to export the front-page, e.g. http://localhost:8080/plone/gsxml, it ends up with an adapter lookup error:>

Requirements

GSXML is tested with

  • Python 2.4.4
  • Zope 2.9.7 or greater
  • Plone 2.5.3 or greater
  • Marshall 1.0.0-b1
  • Five 1.4.3