Index: /trunk/zoo-project/zoo-kernel/service_internal.c
===================================================================
--- /trunk/zoo-project/zoo-kernel/service_internal.c	(revision 386)
+++ /trunk/zoo-project/zoo-kernel/service_internal.c	(revision 387)
@@ -1849,5 +1849,19 @@
       tmpPath=getMapFromMaps(m,"main","tmpPath");
     sprintf(session_file_path,"%s/sess_%s.cfg",tmpPath->value,sessId);
-    dumpMapsToFile(tmpSess,session_file_path);
+    FILE* teste=fopen(session_file_path,"w");
+    if(teste==NULL){
+      char tmpMsg[1024];
+      sprintf(tmpMsg,_("Unable to create the file : \"%s\" for storing the session maps."),session_file_path);
+      map * errormap = createMap("text",tmpMsg);
+      addToMap(errormap,"code", "InternalError");
+      printExceptionReportResponse(m,errormap);
+      freeMap(&errormap);
+      free(errormap);
+      return;
+    }
+    else{
+      fclose(teste);
+      dumpMapsToFile(tmpSess,session_file_path);
+    }
   }
   
@@ -1911,5 +1925,5 @@
 	if(ofile==NULL){
 	  char tmpMsg[1024];
-	  sprintf(tmpMsg,_("Unable to create the file : \"%s\" for storing the final result."),tmpI->name);
+	  sprintf(tmpMsg,_("Unable to create the file : \"%s\" for storing the %s final result."),file_name,tmpI->name);
 	  map * errormap = createMap("text",tmpMsg);
 	  addToMap(errormap,"code", "InternalError");
@@ -1930,5 +1944,5 @@
 	}
 	addToMap(tmpI->content,"Reference",file_url);
-	if(hasExt!=true){
+	if(!hasExt){
 	  freeMap(&ext);
 	  free(ext);
Index: /trunk/zoo-project/zoo-kernel/zoo_service_loader.c
===================================================================
--- /trunk/zoo-project/zoo-kernel/zoo_service_loader.c	(revision 386)
+++ /trunk/zoo-project/zoo-kernel/zoo_service_loader.c	(revision 387)
@@ -2137,4 +2137,18 @@
       addMapsToMaps(&m,tmpSess);
       freeMaps(&tmpSess);
+    }else{
+      errorException(m, _("Unable to read your session file."), "InternalError");
+      freeMaps(&tmpSess);
+      freeService(&s1);
+      free(s1);
+      freeMaps(&m);
+      free(m);
+      freeMaps(&request_input_real_format);
+      free(request_input_real_format);
+      freeMaps(&request_output_real_format);
+      free(request_output_real_format);
+      free(REQUEST);
+      free(SERVICE_URL);
+      return 1;
     }
     free(tmpSess);
