diff --git a/web_service/ws/Workspaces.class.inc b/web_service/ws/Workspaces.class.inc
index 521713a108af401fa00b0e09fad16465a2433361..38f2feb4dbc78094a4c716e9edb5a951ff541edf 100755
--- a/web_service/ws/Workspaces.class.inc
+++ b/web_service/ws/Workspaces.class.inc
@@ -504,17 +504,22 @@ class Workspaces extends GTF {
                                 // Si le répertoire existe déja : suppression.
                                 if (is_dir($sDirName))
                                     clearDir($sDirName);
-                                //
+                                // Création de l'arboresence.
                                 mkdir($sDirName, 0777, true);
                                 mkdir($sDirName . "/form", 0777, true);
                                 mkdir($sDirName . "/form/ressources", 0777, true);
                                 mkdir($sDirName . "/fme", 0777, true);
-                                uploadFile('fmw_file', "fmw", $sDirName . "/fme/" . $_FILES['fmw_file']['name'], $_FILES['fmw_file']['size'] + 1);
-                                // Fichier .fmw original en .bak.
-                                copy($sDirName . "/fme/" . utf8_decode($_FILES['fmw_file']['name']), $sDirName . "/fme/" . utf8_decode($_FILES['fmw_file']['name']) . '.bak');
-                                //
+                                // Upload du fichier fmw.
+                                $sErrorMessage = uploadInWsDataDir ("gtf", "workspace", $this->aValues["my_vitis_id"], "fmw_file", $this->aValues, -1, "fmw");
+                                // Copie du .fmw original en .bak.
+                                if (empty($sErrorMessage))
+                                    copyFileInWsDataDir ('gtf', 'workspace', $this->aValues["my_vitis_id"], 'fmw_file', $_FILES['fmw_file']['name'], $_FILES['fmw_file']['name'] . '.bak');
+                                else
+                                    writeToErrorLog($sErrorMessage);
+                                // Création des fichiers de ressources js et css.
                                 fclose(fopen($sDirName . "/form/ressources/Subform.js", "w+"));
                                 fclose(fopen($sDirName . "/form/ressources/Subform.css", "w+"));
+                                // Ressources complémentaires.
                                 if ($this->aValues["comp_file"] != "") {
                                     uploadFile('comp_file', "", $sDirName . "/fme/" . $_FILES['comp_file']['name'], $_FILES['comp_file']['size'] + 1);
                                     $ext = pathinfo($_FILES['comp_file']['name'], PATHINFO_EXTENSION);