Francois-regis.Chalaoux@sanofi-aventis.com wrote:
It seems that zopeXMLMethods and Zope 2.7.x do not work correctly together. In fact, installed xml processors are not visible from ZopeXMLMethods object in ZMI (blank list). Personaly I use 4Suite 1.0a4 as processor. Everything work with Zope 2.7.2 but since Zope 2.7.3 every fail.
Have you this problem, solutions ?
Been there too. I've patched the __init__.py. The attached one should work. To fix 4Suite support I did this: In FourSuiteProcessor.py: Remove these lines: if not os.environ.has_key(XML_CATALOGS): os.environ['XML_CATALOGS'] = /please/ignore/this/workaround And replace this: from Ft.Lib.Uri import SchemeRegistryResolver with this: from Ft.Lib.Resolvers import SchemeRegistryResolver /Anton """ $RCSfile: __init__.py,v $ The ZopeXMLMethods package is a Zope product. Author: Chip Morris <cmorris@arielpartners.com> Modified by Philipp von Weitershausen <philikon@philikon.de> $Id: __init__.py,v 1.15 2003/03/30 03:45:47 cstrong Exp $ """ __cvstag__ = '$Name: $'[6:-2] __date__ = '$Date: 2003/03/30 03:45:47 $'[6:-2] __version__ = '$Revision: 1.15 $'[10:-2] import XSLTMethod import CacheManager from XSLTMethod import manage_addXSLTMethod, \ manage_addXSLTMethodForm, addXSLTMethod from CacheManager import manage_addXMLMethodCacheManagerForm, \ manage_addXMLMethodCacheManager, addXMLMethodCacheManager def initialize(context): """ Initialize the ZopeXMLMethods product. This makes the object appear in the Zope product list menu. initialize() is called by Zope when starting a Zope server. """ try: context.registerClass( XSLTMethod.XSLTMethod, constructors = ( manage_addXSLTMethodForm, manage_addXSLTMethod, addXSLTMethod, XSLTMethod.XSLTMethod.availableProcessors, XSLTMethod.XSLTMethod.behaveLikeList), icon = 'www/XSLTMethod.gif' ) context.registerClass( CacheManager.CacheManager, constructors = ( manage_addXMLMethodCacheManagerForm, manage_addXMLMethodCacheManager, addXMLMethodCacheManager, XSLTMethod.findCacheManager), icon = 'www/cache.gif' ) context.registerHelp() except: import sys, traceback, string type, val, tb = sys.exc_info() sys.stderr.write(string.join(traceback.format_exception(type, val, tb), '')) del type, val, tb