diff --git a/product/ERP5Wizard/Tool/WizardTool.py b/product/ERP5Wizard/Tool/WizardTool.py
index 0add5b1fbaceb6488d61c7b24cbab44975923038..77fee84f255b3503bbdb64edece2b52983467741 100644
--- a/product/ERP5Wizard/Tool/WizardTool.py
+++ b/product/ERP5Wizard/Tool/WizardTool.py
@@ -385,12 +385,9 @@ class WizardTool(BaseTool):
 
   def callRemoteProxyMethod(self, distant_method, server_url=None, use_cache=1, **kw):
     """ Call proxy method on server. """
-    # set real method_id
-    form = self.REQUEST.form
     configurator_user_preferred_language = self.getConfiguratorUserPreferredLanguage()
     def wrapper(distant_method, **kw):
-      form['method_id'] = distant_method
-      return self._callRemoteMethod('proxyMethodHandler', **kw)['data']
+      return self._callRemoteMethod(distant_method, use_proxy=1, **kw)['data']
     if use_cache:
       wrapper = CachingMethod(wrapper,
                               id = 'callRemoteProxyMethod_%s_%s' 
@@ -399,16 +396,19 @@ class WizardTool(BaseTool):
     rc = wrapper(distant_method, **kw)
     return rc
 
-  def _callRemoteMethod(self, distant_method, server_url=None, wrap_result=1, **kw):
+  def _callRemoteMethod(self, distant_method, server_url=None, wrap_result=1, use_proxy=0, **kw):
     """ Call remote method on server and get result. """
     result_call = GeneratorCall()
     if server_url is None:
       # calculate it
       server_url = self.getServerUrl() + self.getServerRoot()
     witch_tool = self._getRemoteWitchTool(server_url)
-    parameter_dict = self.REQUEST.form
-    # add remote method arguments
-    parameter_dict['method_kw'] = kw
+    parameter_dict = self.REQUEST.form.copy()
+    if use_proxy:
+      # add remote method arguments
+      parameter_dict['method_id'] = distant_method
+      parameter_dict['method_kw'] = kw
+      distant_method = 'proxyMethodHandler'
     ## add client arguments
     self._updateParameterDictWithServerInfo(parameter_dict)
     ## handle file upload