Document samples
Aspectos básicos
Sección titulada «Aspectos básicos»En la mayoría de los métodos verá un parámetro llamado “docId”. El valor de este parámetro puede ser un UUID o una ruta (path) válidos de documento.
Métodos
Sección titulada «Métodos»createDocument
Sección titulada «createDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createDocument(Document doc, InputStream is) | Document | Crea un nuevo documento y devuelve como resultado un objeto Document con las propiedades del documento creado. |
La variable path del parámetro doc debe inicializarse. Indica dónde debe almacenarse el documento dentro de OpenKM.
Document doc = new Document();doc.setPath("/okm:root/logo.png");Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { InputStream is = new FileInputStream("/home/files/logo.png"); Document doc = new Document(); doc.setPath("/okm:root/logo.png"); ws.createDocument(doc, is); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}createDocumentSimple
Sección titulada «createDocumentSimple»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createDocumentSimple(String docPath, InputStream is) | Document | Crea un nuevo documento y devuelve como resultado un objeto Document con las propiedades del documento creado. |
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { InputStream is = new FileInputStream("/home/files/logo.png"); ws.createDocumentSimple("/okm:root/logo.png", is); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}deleteDocument
Sección titulada «deleteDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| deleteDocument(String docId) | void | Elimina un documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ws.deleteDocument("/okm:root/logo.png"); } catch (Exception e) { e.printStackTrace(); } }}getDocumentProperties
Sección titulada «getDocumentProperties»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getDocumentProperties(String docId) | Document | Devuelve las propiedades del documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { System.out.println(ws.getDocumentProperties("/okm:root/logo.png")); } catch (Exception e) { e.printStackTrace(); } }}getContent
Sección titulada «getContent»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getContent(String docId) | InputStream | Recupera el contenido del documento (datos binarios) de la versión actual del documento. |
Ejemplo:
package com.openkm;
import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { OutputStream fos = new FileOutputStream("/home/files/logo.png"); InputStream is = ws.getContent("/okm:root/logo.png"); IOUtils.copy(is, fos); IOUtils.closeQuietly(is); IOUtils.closeQuietly(fos); } catch (Exception e) { e.printStackTrace(); } }}getContentByVersion
Sección titulada «getContentByVersion»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getContentByVersion(String docId,String versionId) | InputStream | Recupera el contenido (datos binarios) de un documento a partir de una versión concreta. |
Ejemplo:
package com.openkm;
import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { OutputStream fos = new FileOutputStream("/home/files/logo.png"); InputStream is = ws.getContentByVersion("/okm:root/logo.png","1.1"); IOUtils.copy(is, fos); IOUtils.closeQuietly(is); IOUtils.closeQuietly(fos); } catch (Exception e) { e.printStackTrace(); } }}getDocumentChildren
Sección titulada «getDocumentChildren»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getDocumentChildren(String fldId) | List |
Devuelve una lista con todos los documentos cuyo padre es fldId. |
El parámetro fldId puede ser un nodo de carpeta o de expediente.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (Document doc : ws.getDocumentChildren("/okm:root")) { System.out.println(doc); } } catch (Exception e) { e.printStackTrace(); } }}renameDocument
Sección titulada «renameDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| renameDocument(String docId, String newName) | Document | Cambia el nombre de un documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { Document doc = ws.renameDocument("f123a950-0329-4d62-8328-0ff500fd42db", "logo_rename.png"); } catch (Exception e) { e.printStackTrace(); } }}setProperties
Sección titulada «setProperties»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setProperties(Document doc) | void | Cambia algunas propiedades del documento. |
Variables que se pueden cambiar:
- Título
- Descripción
- Idioma
- Categorías asociadas
- Palabras clave asociadas
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { Document doc = ws.getDocumentProperties("f123a950-0329-4d62-8328-0ff500fd42db"); doc.setDescription("some description"); doc.getKeywords().add("test"); ws.setProperties(doc); } catch (Exception e) { e.printStackTrace(); } }}checkout
Sección titulada «checkout»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| checkout(String docId) | void | Marca el documento para su edición. |
Solo un usuario puede modificar un documento a la vez.
Antes de comenzar la edición, debe ejecutar una acción de checkout que bloquea el proceso de edición para el resto de usuarios y permite la edición únicamente al usuario que ejecutó la acción.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ws.checkout("/okm:root/logo.png"); // At this point the document is locked for other users except for the user who executed the action } catch (Exception e) { e.printStackTrace(); } }}cancelCheckout
Sección titulada «cancelCheckout»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| cancelCheckout(String docId) | void | Cancela la edición de un documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { // At this point the document is locked for other users except for the user who executed the action ws.cancelCheckout("/okm:root/logo.png"); // At this point other users are allowed to execute a checkout and modify the document } catch (Exception e) { e.printStackTrace(); } }}forceCancelCheckout
Sección titulada «forceCancelCheckout»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| forceCancelCheckout(String docId) | void | Cancela la edición de un documento. |
Este método permite cancelar la edición de cualquier documento.
No es obligatorio que esta acción se ejecute por el mismo usuario que ejecutó previamente la acción de checkout.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { // At this point the document is locked for other users except for the user who executed the action ws.forceCancelCheckout("/okm:root/logo.png"); // At this point other users are allowed to execute a checkout and modify the document } catch (Exception e) { e.printStackTrace(); } }}isCheckedOut
Sección titulada «isCheckedOut»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isCheckedOut(String docId) | Boolean | Devuelve un booleano que indica si el documento está siendo editado o no. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { System.out.println("Is the document checkout:"+ws.isCheckedOut("/okm:root/logo.png")); } catch (Exception e) { e.printStackTrace(); } }}checkin
Sección titulada «checkin»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| checkin(String docId, InputStream is, String comment) | Version | Actualiza un documento con una nueva versión y devuelve un objeto con los valores de la nueva Version. |
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { InputStream is = new FileInputStream("/home/files/logo.png"); ws.checkin("/okm:root/logo.png", is, "optional some comment"); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}checkin
Sección titulada «checkin»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| checkin(String docId, InputStream is, String comment, int increment) | Version | Actualiza un documento con una nueva versión y devuelve un objeto con los valores de la nueva Version. |
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { InputStream is = new FileInputStream("/home/files/logo.png"); ws.checkin("/okm:root/logo.png", is, "optional some comment", 1); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}getVersionHistory
Sección titulada «getVersionHistory»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getVersionHistory(String docId) | List |
Devuelve una lista con todas las versiones del documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Version;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (Version version : ws.getVersionHistory("/okm:root/logo.png")) { System.out.println(version); } } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| lock(String docId) | LockInfo | Bloquea un documento y devuelve un objeto con la información del bloqueo. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ws.lock("/okm:root/logo.png"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| unlock(String docId) | void | Desbloquea un documento bloqueado. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ws.unlock("/okm:root/logo.png"); } catch (Exception e) { e.printStackTrace(); } }}forceUnlock
Sección titulada «forceUnlock»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| forceUnlock(String docId) | void | Desbloquea un documento bloqueado. |
Este método permite desbloquear cualquier documento bloqueado.
No es obligatorio que esta acción la ejecute el mismo usuario que ejecutó previamente la acción de bloqueo (checkout).
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ws.forceUnlock("/okm:root/logo.png"); } catch (Exception e) { e.printStackTrace(); } }}isLocked
Sección titulada «isLocked»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isLocked(String docId) | Boolean | Devuelve un booleano que indica si el documento está bloqueado o no. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { System.out.println("Is document locked:"+ws.isLocked("/okm:root/logo.png")); } catch (Exception e) { e.printStackTrace(); } }}getLockInfo
Sección titulada «getLockInfo»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getLockInfo(String docId) | LockInfo | Devuelve un objeto con la información del bloqueo. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { System.out.println(ws.getLockInfo("/okm:root/logo.png")); } catch (Exception e) { e.printStackTrace(); } }}purgeDocument
Sección titulada «purgeDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| purgeDocument(String docId) | void | El documento se elimina permanentemente del repositorio. |
Normalmente se purgan documentos ubicados en /okm:trash/userId —las papeleras personales del usuario—, pero es posible purgar directamente cualquier documento de todo el repositorio.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ws.purgeDocument("/okm:trash/okmAdmin/logo.png"); } catch (Exception e) { e.printStackTrace(); } }}moveDocument
Sección titulada «moveDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| moveDocument(String docId, String dstId) | void | Mueve un documento a una carpeta o expediente. |
El valor del parámetro dstId debe ser un UUID o una ruta (path) de carpeta o de expediente.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ws.moveDocument("/okm:root/logo.png","/okm:root/temp"); } catch (Exception e) { e.printStackTrace(); } }}copyDocument
Sección titulada «copyDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| copyDocument(String docId, String dstId, String newName) | void | Copia un documento a una carpeta o expediente. |
El valor del parámetro dstId debe ser un UUID o una ruta (path) de carpeta o de expediente.
Cuando el valor del parámetro newName es null, el documento conservará el mismo nombre.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ws.copyDocument("/okm:root/logo.png","/okm:root/temp","new_logo.png"); } catch (Exception e) { e.printStackTrace(); } }}restoreVersion
Sección titulada «restoreVersion»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| restoreVersion(String docId, String versionId) | void | Restaura una versión anterior del documento como versión actual. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { // Actual version is 1.2 ws.restoreVersion("/okm:root/logo.png","1.1"); // Actual version is 1.1 } catch (Exception e) { e.printStackTrace(); } }}purgeVersionHistory
Sección titulada «purgeVersionHistory»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| purgeVersionHistory(String docId) | void | Purga todas las versiones anteriores del documento excepto la versión actual. |
Esta acción compacta el histórico de versiones de un documento.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { // Version history has version 1.3,1.2,1.1 and 1.0 ws.purgeVersionHistory("/okm:root/logo.png"); // Version history has only version 1.3 } catch (Exception e) { e.printStackTrace(); } }}getVersionHistorySize
Sección titulada «getVersionHistorySize»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getVersionHistorySize(String docId) | long | Devuelve el tamaño total en bytes de todos los documentos del historial de versiones. |
Ejemplo:
package com.openkm;
import java.util.Locale;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { String[] UNITS = new String[] { "B", "KB", "MB", "GB", "TB", "PB", "EB" }; long bytes = ws.getVersionHistorySize("/okm:root/logo.png"); String value = "";
for (int i = 6; i > 0; i--) { double step = Math.pow(1024, i); if (bytes > step) value = String.format(Locale.ROOT, "%3.1f %s", bytes / step, UNITS[i]); }
if (value.isEmpty()) { value = Long.toString(bytes) + " " + UNITS[0]; }
System.out.println(value); } catch (Exception e) { e.printStackTrace(); } }}isValidDocument
Sección titulada «isValidDocument»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isValidDocument(String docId) | Boolean | Devuelve un booleano que indica si el nodo es un documento o no. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { // Return true ws.isValidDocument("/okm:root/logo.png");
// Return false ws.isValidDocument("/okm:root"); } catch (Exception e) { e.printStackTrace(); } }}getDocumentPath
Sección titulada «getDocumentPath»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getDocumentPath(String uuid) | String | Convierte el UUID de un documento en su ruta. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { System.out.println(ws.getDocumentPath("f123a950-0329-4d62-8328-0ff500fd42dbg")); } catch (Exception e) { e.printStackTrace(); } }}extendedDocumentCopy
Sección titulada «extendedDocumentCopy»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| extendedDocumentCopy(String docId, String dstId, String name, boolean categories, boolean keywords, boolean propertyGroups, boolean notes, boolean wiki) |
void | Copia un documento junto con los datos asociados a una carpeta o expediente. |
El valor del parámetro dstId debe ser un UUID o una ruta (path) de carpeta o de expediente.
Cuando el valor del parámetro newName es null, el documento conservará el mismo nombre.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ws.extendedDocumentCopy("/okm:root/logo.png", "/okm:root/tmp", null, true, true, true, true, true); } catch (Exception e) { e.printStackTrace(); } }}getExtractedText
Sección titulada «getExtractedText»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getExtractedText(String docId) | String | Devuelve un String con el texto extraído producido por el proceso de extracción de texto. |
Cuando un documento se sube a OpenKM, entra en la cola de extracción de texto. Existe un crontab que procesa periódicamente esta cola y extrae el contenido de los documentos.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { String text = ws.getExtractedText("/okm:root/document.doc"); System.out.println(text); } catch (Exception e) { e.printStackTrace(); } }}getThumbnail
Sección titulada «getThumbnail»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getThumbnail(String docId, ThumbnailType type) | InputStream | Devuelve los datos de la imagen miniatura. |
Tipos disponibles:
- ThumbnailType.THUMBNAIL_PROPERTIES ( se muestra en la vista de propiedades )
- ThumbnailType.THUMBNAIL_LIGHTBOX ( se muestra en el light box )
- ThumbnailType.THUMBNAIL_SEARCH ( se muestra en la vista de búsqueda )
Ejemplo:
package com.openkm;
import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.ThumbnailType;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { OutputStream fos = new FileOutputStream("/home/files/thumbnail.png"); InputStream is = ws.getThumbnail("/okm:root/document.doc", ThumbnailType.THUMBNAIL_LIGHTBOX); IOUtils.copy(is, fos); IOUtils.closeQuietly(is); IOUtils.closeQuietly(fos); } catch (Exception e) { e.printStackTrace(); } }}setLanguage
Sección titulada «setLanguage»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setLanguage(String docId, String lang) | void | Establece el idioma del documento. |
El parámetro lang debe cumplir con ISO 691-1.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ws.setLanguage("/okm:root/document.doc", "es"); } catch (Exception e) { e.printStackTrace(); } }}setDocumentTitle
Sección titulada «setDocumentTitle»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setDocumentTitle(String docId, String title) | void | Establece el título del documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ws.setTitle("/okm:root/document.doc", "Some title here"); } catch (Exception e) { e.printStackTrace(); } }}createFromTemplate
Sección titulada «createFromTemplate»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| Document createFromTemplate(String docId, String dstPath, String language, boolean categories, boolean keywords, boolean propertyGroups, boolean notes, boolean wiki, List |
Document | Crea un nuevo documento a partir de la plantilla y devuelve un objeto Document. |
El dstPath puede ser una ruta de carpeta o de expediente.
El parámetro language es opcional.
Cuando la plantilla usa grupos de metadatos para rellenar campos, estos valores son obligatorios y deben establecerse en el parámetro properties.
Ejemplo:
package com.openkm;
import java.util.ArrayList;import java.util.Calendar;import java.util.List;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.form.FormElement;import com.openkm.sdk4j.bean.form.Input;import com.openkm.sdk4j.bean.form.Option;import com.openkm.sdk4j.bean.form.Select;import com.openkm.sdk4j.util.ISO8601;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { List<FormElement> formElements = new ArrayList<>(); Input name = new Input(); name.setName("okp:tpl.name"); name.setValue("Some name"); formElements.add(name);
Input birdDate = new Input(); birdDate.setName("okp:tpl.bird_date"); Calendar cal = Calendar.getInstance(); // Value must be converted to String ISO 8601 compliant birdDate.setValue(ISO8601.formatBasic(cal)); formElements.add(birdDate);
Select language = new Select(); language.setName("okp:tpl.language"); // With selected option is enought Option option = new Option(); option.setValue("java"); option.setSelected(true); language.getOptions().add(option); formElements.add(language);
ws.createFromTemplate("/okm:templates/tpl.pdf", "/okm:root/test", null, false, false, true, false, false, formElements); } catch (Exception e) { e.printStackTrace(); } }}createFromTemplateSimple
Sección titulada «createFromTemplateSimple»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| Document createFromTemplateSimple(String docId, String dstPath, String language, boolean categories, boolean keywords, boolean propertyGroups, boolean notes, boolean wiki, Map<String, String> properties) |
Document | Crea un nuevo documento a partir de la plantilla y devuelve un objeto Document. |
El dstPath puede ser una ruta de carpeta o de expediente.
El parámetro language es opcional.
Cuando la plantilla usa grupos de metadatos para rellenar campos, estos valores son obligatorios y deben establecerse en el parámetro properties.
Ejemplo:
package com.openkm;
import java.util.Calendar;import java.util.HashMap;import java.util.Map;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.util.ISO8601;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { Map<String, String> properties = new HashMap<>(); properties.put("okp:tpl.name", "Some name"); Calendar cal = Calendar.getInstance(); // Value must be converted to String ISO 8601 compliant properties.put("okp:tpl.bird_date", ISO8601.formatBasic(cal)); properties.put("okp:tpl.language", "java");
ws.createFromTemplateSimple("/okm:templates/tpl.pdf", "/okm:root/test", null, false, false, true, false, false, properties); } catch (Exception e) { e.printStackTrace(); } }}updateFromTemplate
Sección titulada «updateFromTemplate»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| Document updateFromTemplate(String docId, String dstId, List |
Document | Actualiza un documento creado previamente a partir de la plantilla y devuelve un objeto Document. |
Este método solo tiene sentido cuando la plantilla usa grupos de metadatos para rellenar campos.
Ejemplo:
package com.openkm;
import java.util.ArrayList;import java.util.Calendar;import java.util.List;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.form.FormElement;import com.openkm.sdk4j.bean.form.Input;import com.openkm.sdk4j.bean.form.Option;import com.openkm.sdk4j.bean.form.Select;import com.openkm.sdk4j.util.ISO8601;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { List<FormElement> formElements = new ArrayList<>(); Input name = new Input(); name.setName("okp:tpl.name"); name.setValue("Some name"); formElements.add(name);
Input birdDate = new Input(); birdDate.setName("okp:tpl.bird_date"); Calendar cal = Calendar.getInstance(); // Value must be converted to String ISO 8601 compliant birdDate.setValue(ISO8601.formatBasic(cal)); formElements.add(birdDate);
Select language = new Select(); language.setName("okp:tpl.language"); // With selected option is enought Option option = new Option(); option.setValue("java"); option.setSelected(true); language.getOptions().add(option); formElements.add(language);
ws.updateFromTemplate("/okm:templates/tpl.pdf", "/okm:root/test", formElements); } catch (Exception e) { e.printStackTrace(); } }}updateFromTemplateSimple
Sección titulada «updateFromTemplateSimple»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| updateFromTemplateSimple(String docId, String dstId, Map<String, String> properties) | Document | Actualiza un documento creado previamente a partir de la plantilla y devuelve un objeto Document. |
Este método solo tiene sentido cuando la plantilla usa grupos de metadatos para rellenar campos.
Ejemplo:
package com.openkm;
import java.util.Calendar;import java.util.HashMap;import java.util.Map;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.util.ISO8601;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { Map<String, String> properties = new HashMap<>(); properties.put("okp:tpl.name", "Some name"); Calendar cal = Calendar.getInstance();
// Value must be converted to String ISO 8601 compliant properties.put("okp:tpl.bird_date", ISO8601.formatBasic(cal)); properties.put("okp:tpl.language", "java");
ws.updateFromTemplateSimple("/okm:templates/tpl.pdf", "/okm:root/test", properties); } catch (Exception e) { e.printStackTrace(); } }}getDetectedLanguages
Sección titulada «getDetectedLanguages»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getDetectedLanguages() | List |
Devuelve una lista de los idiomas de documento disponibles que OpenKM puede identificar. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { for (String lang : ws.getDetectedLanguages()) { System.out.println(lang); } } catch (Exception e) { e.printStackTrace(); } }}getAnnotations
Sección titulada «getAnnotations»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getAnnotations(String docId, String verName) | String | Devuelve las anotaciones del documento para una versión del documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { System.out.println(ws.getAnnotations("b46f8df5-0920-4550-9046-21aba7e57e6d", "1.0")); } catch (Exception e) { e.printStackTrace(); } }}getDifferences
Sección titulada «getDifferences»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getDifferences(String docId, String v1, String v2) | InputStream | Devuelve un documento PDF con las diferencias entre dos versiones del documento. |
Ejemplo:
package com.openkm;
import java.io.FileOutputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { InputStream is = ws.getDifferences("b46f8df5-0920-4550-9046-21aba7e57e6d", "1.0", "1.1"); FileOutputStream fos = new FileOutputStream("/home/files/out.pdf"); IOUtils.copy(is, fos); is.close(); fos.close(); } catch (Exception e) { e.printStackTrace(); } }}getCheckedOut
Sección titulada «getCheckedOut»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getCheckedOut() | List |
Devuelve una lista con los documentos que el usuario tiene en checkout. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { for (Document doc : ws.getCheckedOut()) { System.out.println(doc); } } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| stamp(String docId, int type, long stId) | void | Estampa el documento. |
El parámetro type.
Ejemplo:
package com.openkm;
import java.io.File;import java.io.FileInputStream;import java.io.InputStream;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String user = "okmAdmin"; String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.newInstance(host, user, password); try { long stampId = 1; int type = 1; // 1 for type image ws.stamp("babe24df-c443-49a5-9453-39dfc9b27924", type, stampId); } catch (Exception e) { e.printStackTrace(); } }}stampImage
Sección titulada «stampImage»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| stampImage(String docId, long stId, String range, String exprX, String exprY, InputStream image) | void | Estampa una imagen en un documento. |