diff --git a/core/trunk/core/class/resources_controler.php b/core/trunk/core/class/resources_controler.php
index 68160a1b5829c8ddddd0994256336925954e9211..481938a0a35bd4e70e7ee804d8c33c33684f5986 100755
--- a/core/trunk/core/class/resources_controler.php
+++ b/core/trunk/core/class/resources_controler.php
@@ -144,6 +144,29 @@ class resources_controler
             return $returnResArray;
         }
     }
+    
+    function storeResourceFromURI(
+        $fileURI, 
+        $data, 
+        $collId, 
+        $table, 
+        $fileFormat, 
+        $status
+    ) {       
+        $encodedContent = base64_encode(file_get_contents($fileURI));
+        
+        $returnResArray = $this->storeResource(
+            $encodedContent,
+            $data, 
+            $collId, 
+            $table, 
+            $fileFormat, 
+            $status
+        );
+        
+        return $returnResArray;
+        
+    }
 
     private function prepareStorage($data, $docserverId, $status, $fileFormat)
     {
diff --git a/core/trunk/core/class/ws.php b/core/trunk/core/class/ws.php
index 1510a53fc7aee5c8afe4206991f01b22f4445bb3..789dab47fddafef0ec51159560ccd82db18b50df 100755
--- a/core/trunk/core/class/ws.php
+++ b/core/trunk/core/class/ws.php
@@ -221,6 +221,19 @@ $SOAP_dispatch_map['storeExtResource'] = array(
     'method' => "core#resources::storeExtResource",
 );
 
+$SOAP_dispatch_map['storeResourceFromURI'] = array(
+    'in'  => array(
+        'fileURI' => 'string',
+        'data' => '{urn:MySoapServer}arrayOfData',
+        'collId' => 'string',
+        'table' => 'string',
+        'fileFormat' => 'string',
+        'status' => 'string',
+    ),
+    'out' => array('out' => '{urn:MySoapServer}returnResArray'),
+    'method' => "core#resource::storeResourceFromURI",
+);
+
 $SOAP_typedef['searchParams'] = array(
     'country' => 'string',
     'docDate' => 'date',