Page 1 of 1

Auto Importación devuelve error

PostPosted:Tue Aug 16, 2016 10:45 am
by csanchez
Buenos días,

Soy nuevo con OpenKm, y estoy muy ilusionado con las posibilidades que me puede ofrecer.
Felicidades al equipo de OpenKM.

He instalado la versión Comunnity 6.3.1 desde el fichero openkm-6.3.1-community-linux-x64-installer.run, en un Ubuntu Server 16.04 y creo que la he hecho bien.

Ahora, quiero importar automáticamente ficheros en formato .PDF a una carpeta de OpenKM, y estoy intentando ejecutar el script que tenéis en http://wiki.openkm.com/index.php/Cronta ... e_importer, pero me devuelve un error, iIncluso lo estoy ejecutando desde la consoloa de Ubuntu con bsh.

¿Qué estoy haciendo mal?. Muchas gracias por adelantado.

El error es:

Evaluation Error: Sourced file: /home/administrador/download/ImportFromScanner2.bsh : Typed variable declaration : Attempt to resolve method: getInstance() on undefined variable or class name: DbSessionManager : at Line: 6 : in file: /home/administrador/download/ImportFromScanner2.bsh : DbSessionManager .getInstance ( )


El script es:
Code: Select all
import com.openkm.core.*;
import com.openkm.api.*;
import java.io.*;
import com.openkm.module.db.stuff.DbSessionManager;

String token = DbSessionManager.getInstance().getSystemToken();
OKMDocument document = OKMDocument.getInstance();
OKMFolder folder = OKMFolder.getInstance();

public void autoImport(String okmPath, File fldpath) {
  try {
    print("Scanning " + fldpath.getName() + "<br>");
    
    for (File file : fldpath.listFiles()) {
      print("Importing " + file.getName() + "<br>");
      
      try {
        if (file.isDirectory()) {
          try {
            folder.createSimple(token, okmPath + file.getName());
          } catch (ItemExistsException ie) {    
            print("folder already exists<br>");
            // Folder already exists - just ignore exception
          }
          
          autoImport( okmPath + file.getName() + "/", file);
        } else {
          // Check if file is still being written to
          long length = file.length();
          Thread.sleep(1000);
          if (file.length() > length) continue; // Skip file this time
          document.createSimple(token, okmPath + file.getName(), new FileInputStream(file));
        }
        
        print("Created " + okmPath + file.getName() + "<br>");
      } catch (Exception e) {
        print ("Exception:" + e + "<br>");
        
        // Something bad happened to prevent import. Skip to next file.
        continue;
      }
      
      file.delete();
    }
  } catch (Exception e) {
    print("Exception: " + e + "<br>");
  }
}

autoImport("/okm:root/Scans/", new File("/home/fom/scanner"));

Re: Auto Importación devuelve error

PostPosted:Tue Aug 16, 2016 6:22 pm
by jllort
Yo el import y la llamada la veo bien, de hecho la clase esta donde toca:
https://sourceforge.net/p/openkm/code/H ... nager.java

Mi recomendación es cortar el código hasta aqui a ver si esto aun te da error:
Code: Select all
import com.openkm.core.*;
import com.openkm.api.*;
import java.io.*;
import com.openkm.module.db.stuff.*;

String token = DbSessionManager.getInstance().getSystemToken();
print(token);
Si esto te funciona bien, ve ampliando el código y sino dinos cosas.

Re: Auto Importación devuelve error

PostPosted:Wed Aug 17, 2016 8:43 am
by csanchez
Buenos días jllort y gracias por tu respuesta.

He ejecutado el script como me indicas y sigue devolviendo el mismo error.
Code: Select all
Evaluation Error: Sourced file: ./test.bsh : Typed variable declaration : Attempt to resolve method: getInstance() on undefined variable or class name: DbSessionManager : at Line: 6 : in file: ./test.bsh : DbSessionManager .getInstance ( )
Yo soy muy novato en bsh y linux, pero a mi me parece que el programa no reconoce la llamada a DbSessionManager.

No sé ni por donde empezar :-(

Re: Auto Importación devuelve error

PostPosted:Wed Aug 17, 2016 9:32 am
by jllort
Lo he probado con una instalacion community 6.3.1 limpia y funciona perfectamente. Tienes que tener algo raro, para que este no te este funcionando. Seguro que estas ejecutando la ultima community 6.3.1 ?

Re: Auto Importación devuelve error

PostPosted:Wed Aug 17, 2016 10:49 am
by csanchez
Vaya

Sí, la última descargada la semana pasada.

Voy a hacer otra instalación y te cuento.

Re: Auto Importación devuelve error

PostPosted:Fri Aug 19, 2016 10:09 am
by csanchez
Buenos días jllort.

me ha surgido un proyecto que me absorberá buena parte de mi tiempo.

En cuanto tengan hueco retomo este tema y t cuento.

Gracias por tu ayuda.