Uploaded image for project: 'Tika'
  1. Tika
  2. TIKA-3523

A replacement for enableFileUrl or Support for Google Cloud

    XMLWordPrintableJSON

Details

    • Wish
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 2.0.0
    • None
    • tika-server
    • None

    Description

      Hello,

      I have a setup where users upload their files to a cloud bucket and I forward the fileUrl to make ocr on them in a serverless cloud instance. I do it this way so the users do not contact with the Tika Server and I have a copy of what they've sent to process it. Also they have nothing to do with the unprocessed response.

      Now that you've removed the enableFileUrl... I have to download the files to the backend instance from the cloud bucket they have uploaded their files to, and put them to /tika server back again...

      I tried the following config.xml to work around the situation but it was in vain...
       For the made up url: https://firebasestorage.googleapis.com/v0/b/abcd-efgh.appspot.com/o/somefilethatdoesnotexist.pdf

      <fetchers> 
       <fetcher class="org.apache.tika.pipes.fetcher.fs.FileSystemFetcher"> 
        <params> 
         <name>fsf</name> 
         <basePath>https://firebasestorage.googleapis.com/v0/b/abcd-efgh.appspot.com/o</basePath> 
        </params> 
       </fetcher> 
      </fetchers> 
      <emitters> 
       <emitter class="org.apache.tika.pipes.emitter.fs.FileSystemEmitter"> 
        <params> 
         <name>fse</name> 
         <basePath>gs://abcd-efgh.appspot.com/users</basePath> 
        </params> 
       </emitter> 
      </emitters> 
      <server> 
       <params> 
        <enableUnsecureFeatures>true</enableUnsecureFeatures> 
       </params> 
      </server> 
      <pipes> 
       <params> 
        <tikaConfig>/path/to/tika-config.xml</tikaConfig> 
       </params> 
      </pipes>
      headers: {         
      Accept: 'text/plain',         
      'User-Agent''Firebase Functions',         
      fetcherName: 'fsf',         
      fetchKey: 'somefilethatdoesnotexist.pdf',   
      },

      It doesn't support the gs:// Google Storage bucket either. I have all the necessary permissions but it didn't help. I'm using a dockerized version of tika server, so the file System does not seem to be my concern...
       
      In the golden times of 1.2x Iwas simply using:
       

      headers: {               
      Accept: 'text/plain',               
      'User-Agent''Firebase Functions',               
      fileUrl: 'https://firebasestorage.googleapis.com/v0/b/abcd-efgh.appspot.com/o/somefilethatdoesnotexist.pdf',             
      },

       
       
      Am I missing something? If not my wish is that can you please make it so that fetchName is the definitive  first part of the old fileUrl and fetchKey is the specific pointer to a file?

      This way I have control over the urls that's been sent to tika server to some extend, unlike enableFileUrl and also eat my cake without creating extra traffic on the backend by downloading from the bucket and uploading to tika. 

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              greendesertsnow Fatih Pazarbasi
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated: