diff --git a/product/ERP5Type/Tool/WebServiceTool.py b/product/ERP5Type/Tool/WebServiceTool.py index 0150c8666c23563c7d7ac509ccc4d051920d7c20..234187cda1e34625630e24386a793233f5a0edf1 100644 --- a/product/ERP5Type/Tool/WebServiceTool.py +++ b/product/ERP5Type/Tool/WebServiceTool.py @@ -78,15 +78,18 @@ class WebServiceTool(BaseTool): security.declareProtected(Permissions.ManagePortal, 'manage_overview') manage_overview = DTMLFile('explainWebServiceTool', _dtmldir ) - def connect(self, url, user_name=None, password=None, transport=None): + def connect(self, url, user_name=None, password=None, transport=None, transport_kw=None): """ Connect to remote instances of any kind of web service (not only ERP5) with many different kinds of transport like 'xml-rpc' or 'soap' """ # XXX: implement connection caching per zope thread + if transport_kw is None: + transport_kw = {} connection_handler_klass = connection_plugin_registry[transport] - connection_handler = connection_handler_klass(url, user_name, password) + connection_handler = connection_handler_klass(url, user_name, password, + **transport_kw) return connection_handler.connect() InitializeClass(WebServiceTool)