Ejemplos de Document
Conceptos básicos
Sección titulada «Conceptos básicos»Ejemplo de código sugerido
Sección titulada «Ejemplo de código sugerido»Primero, debes crear el objeto de servicio web:
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);A continuación debes iniciar sesión usando el método “login”. Puedes acceder al método “login” desde el objeto de servicio web “ws” como se muestra a continuación:
ws.login(user, password);Llegados a este punto puedes usar todos los métodos de Document desde la clase “document” como se muestra a continuación:
ws.document.create("1be884f4-5758-4985-94d1-f18bfe004db8", "logo.png", is);Métodos
Sección titulada «Métodos»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| create(String uuid, String name, InputStream is) | Document | Crea un nuevo documento. Devuelve un objeto Document con las propiedades del documento creado. |
- El valor del parámetro uuid debe ser el UUID de un nodo carpeta o expediente.
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); InputStream is = new FileInputStream("/home/openkm/okm/logo.png"); Document doc = ws.document.create("1be884f4-5758-4985-94d1-f18bfe004db8", "logo.png", is); System.out.println(doc); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| create(String uuid, String name, InputStream is, long nodeClass) | Document | Crea un nuevo documento con un nodeClass. Devuelve un objeto Document con las propiedades del documento creado. |
- El valor del parámetro uuid debe ser el UUID de un nodo carpeta o expediente.
- El parámetro nodeClass debe ser un valor de tipo de negocio (series) válido. Un nodeClass con valor 0 significa que no hay tipo de negocio (series) seleccionado.
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); InputStream is = new FileInputStream("/home/openkm/okm/logo.png"); long nodeClass = 0; Document doc = ws.document.create("1be884f4-5758-4985-94d1-f18bfe004db8", "logo.png", is, nodeClass); System.out.println(doc); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| create(String uuid, File file) | Document | Crea un nuevo documento y devuelve un objeto Document con las propiedades del documento creado. |
- El valor del parámetro uuid debe ser el UUID de un nodo carpeta o expediente.
Ejemplo:
package com.openkm;
import java.io.File;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); File file = new File("/home/openkm/okm/logo.png"); Document doc = ws.document.create("151f3a54-f370-47d6-801a-d20faecec180", file); System.out.println(doc); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| create(String uuid, String name, InputStream is, Calendar created) | Document | Crea un nuevo documento con una fecha de creación personalizada. Devuelve un objeto Document con las propiedades del documento creado. |
- El valor del parámetro uuid debe ser el UUID de un nodo carpeta o expediente.
- El parámetro created establece la fecha de creación del documento. Si es null, se usará la fecha actual.
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;import java.util.Calendar;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); InputStream is = new FileInputStream("/home/openkm/okm/logo.png"); Calendar created = Calendar.getInstance(); created.add(Calendar.DAY_OF_MONTH, -1); Document doc = ws.document.create("1be884f4-5758-4985-94d1-f18bfe004db8", "logo.png", is, created); System.out.println(doc); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| create(String uuid, String name, InputStream is, long nodeClass, Calendar created) | Document | Crea un nuevo documento con un nodeClass y una fecha de creación personalizada. Devuelve un objeto Document con las propiedades del documento creado. |
- El valor del parámetro uuid debe ser el UUID de un nodo carpeta o expediente.
- El parámetro nodeClass debe ser un valor de tipo de negocio (series) válido. Un nodeClass con valor 0 significa que no hay tipo de negocio (series) seleccionado.
- El parámetro created establece la fecha de creación del documento. Si es null, se usará la fecha actual.
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;import java.util.Calendar;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); InputStream is = new FileInputStream("/home/openkm/okm/logo.png"); long nodeClass = 0; Calendar created = Calendar.getInstance(); created.add(Calendar.DAY_OF_MONTH, -1); Document doc = ws.document.create("1be884f4-5758-4985-94d1-f18bfe004db8", "logo.png", is, nodeClass, created); System.out.println(doc); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}createWithPropertyGroup
Sección titulada «createWithPropertyGroup»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createWithPropertyGroup(String uuid, String name, InputStream is, long nodeClass, String grpName, Map<String, String> properties) | Document | Crea un nuevo documento y establece las propiedades de un grupo de metadatos en la misma llamada. Devuelve un objeto Document con las propiedades del documento creado. |
- El valor del parámetro uuid debe ser el UUID de un nodo carpeta o expediente.
- El parámetro nodeClass debe ser un valor de tipo de negocio (series) válido. Un nodeClass con valor 0 significa que no hay tipo de negocio (series) seleccionado.
- El grpName debe ser un nombre de grupo de Metadata válido.
- No es obligatorio establecer todos los valores de campo en el parámetro properties; solo se aplican las propiedades que pertenecen a grpName.
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;import java.util.HashMap;import java.util.Map;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); InputStream is = new FileInputStream("/home/openkm/okm/logo.png"); long nodeClass = 0; Map<String, String> properties = new HashMap<>(); properties.put("okp:technology.comment", "comment sample"); properties.put("okp:technology.description", "description sample"); Document doc = ws.document.createWithPropertyGroup("1be884f4-5758-4985-94d1-f18bfe004db8", "logo.png", is, nodeClass, "okg:technology", properties); System.out.println(doc); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| delete(String uuid) | void | Elimina un documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.document.delete("1ec49da9-1746-4875-ae32-9281d7303a62"); } catch (Exception e) { e.printStackTrace(); } }}getProperties
Sección titulada «getProperties»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getProperties(String uuid) | Document | Devuelve las propiedades del documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println(ws.document.getProperties("1ec49da9-1746-4875-ae32-9281d7303a62")); } catch (Exception e) { e.printStackTrace(); } }}getContent
Sección titulada «getContent»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getContent(String uuid) | InputStream | Obtiene 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.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); OutputStream fos = new FileOutputStream("/home/openkm/logo.png"); InputStream is = ws.document.getContent("1ec49da9-1746-4875-ae32-9281d7303a62"); 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 uuid, String versionName) | InputStream | Obtiene el contenido del documento (datos binarios) de una versión específica 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.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); OutputStream fos = new FileOutputStream("/home/openkm/logo.png"); InputStream is = ws.document.getContentByVersion("/okm:root/logo.png", "1.1"); IOUtils.copy(is, fos); IOUtils.closeQuietly(is); IOUtils.closeQuietly(fos); } catch (Exception e) { e.printStackTrace(); } }}getChildren
Sección titulada «getChildren»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getChildren(String fldId) | List |
Devuelve una lista de todos los documentos cuyo padre es fldId. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); for (Document doc : ws.document.getChildren("1be884f4-5758-4985-94d1-f18bfe004db8")) { System.out.println(doc); } } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| rename(String uuid, String newName) | Document | Cambia el nombre de un documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); Document doc = ws.document.rename("1ec49da9-1746-4875-ae32-9281d7303a62", "logo_rename.png"); System.out.print(doc); } catch (Exception e) { e.printStackTrace(); } }}setProperties
Sección titulada «setProperties»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setProperties(String uuid, String title, String description, String lang, List |
void | Cambia algunas propiedades del documento. |
- El parámetro lang debe cumplir el estándar ISO 639-1.
Ejemplo:
package com.openkm;
import java.util.ArrayList;import java.util.List;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); List<String> keywords = new ArrayList<>(); keywords.add("test"); keywords.add("invoice");
List<String> categories = new ArrayList<>(); categories.add("58c9b25f-d83e-4006-bd78-e26d7c6fb648");
ws.document.setProperties("1ec49da9-1746-4875-ae32-9281d7303a62", "new title", "some description", "es", keywords, categories); } catch (Exception e) { e.printStackTrace(); } }}setLanguage
Sección titulada «setLanguage»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setLanguage(String uuid, String lang) | void | Establece el idioma del documento. |
- El parámetro lang debe cumplir el estándar ISO 639-1.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.document.setLanguage("1ec49da9-1746-4875-ae32-9281d7303a62", "en"); } catch (Exception e) { e.printStackTrace(); } }}setTitle
Sección titulada «setTitle»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setTitle(String uuid, String title) | void | Establece el título del documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.document.setTitle("1ec49da9-1746-4875-ae32-9281d7303a62", "Some title here"); } catch (Exception e) { e.printStackTrace(); } }}checkout
Sección titulada «checkout»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| checkout(String uuid) | void | Marca el documento para edición. |
- Solo un usuario puede modificar un documento a la vez.
- Antes de empezar a editar, debes ejecutar una acción de checkout que bloquea el proceso de edición para otros usuarios y permite editar solo al usuario que ejecutó la acción.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.document.checkout("1ec49da9-1746-4875-ae32-9281d7303a62"); // Llegados a este punto, el documento queda bloqueado para el resto de usuarios excepto para el que ejecutó la acción } catch (Exception e) { e.printStackTrace(); } }}cancelCheckout
Sección titulada «cancelCheckout»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| cancelCheckout(String uuid) | void | Cancela la edición del documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); // Llegados a este punto, el documento queda bloqueado para el resto de usuarios excepto para el que ejecutó la acción ws.document.cancelCheckout("1ec49da9-1746-4875-ae32-9281d7303a62"); // Llegados a este punto, el resto de usuarios ya pueden ejecutar un checkout y modificar el documento } catch (Exception e) { e.printStackTrace(); } }}forceCancelCheckout
Sección titulada «forceCancelCheckout»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| forceCancelCheckout(String uuid) | void | Cancela la edición del documento. |
- Este método permite cancelar la edición de cualquier documento.
- No es obligatorio que esta acción la ejecute el mismo usuario que ejecutó previamente el checkout.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); // Llegados a este punto, el documento queda bloqueado para el resto de usuarios excepto para el que ejecutó la acción ws.document.forceCancelCheckout("1ec49da9-1746-4875-ae32-9281d7303a62"); // Llegados a este punto, el resto de usuarios ya pueden ejecutar un checkout y modificar el documento } 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.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println("Is the document checkout:" + ws.document.isCheckedOut("1ec49da9-1746-4875-ae32-9281d7303a62")); } catch (Exception e) { e.printStackTrace(); } }}checkin
Sección titulada «checkin»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| checkin(String uuid, InputStream is, String comment) | Version | Actualiza un documento con una nueva versión y devuelve un objeto con los valores de la nueva versión. |
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); InputStream is = new FileInputStream("/home/openkm/logo.png"); ws.document.checkin("1ec49da9-1746-4875-ae32-9281d7303a62", 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 versión. |
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); InputStream is = new FileInputStream("/home/openkm/logo.png"); ws.document.checkin("1ec49da9-1746-4875-ae32-9281d7303a62", is, "optional some comment", 2); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| purge(String uuid) | void | El documento se elimina permanentemente del repositorio. |
- Normalmente purgarás documentos a /okm:trash/userId - las ubicaciones personales de papelera del usuario - pero es posible purgar directamente cualquier documento de todo el repositorio.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.document.purge("1ec49da9-1746-4875-ae32-9281d7303a62"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| move(String uuid, String dstId) | void | Mueve un documento a una carpeta o expediente. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.document.move("9ed5c7b1-9314-4479-8f80-fd8e2b47f55e", "8599eab7-ae61-4628-8010-1103d6950c63"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| copy(String uuid, String dstId, String newName) | void | Copia un documento a una carpeta o expediente. |
- Los valores del parámetro dstId deben ser el UUID de una carpeta o expediente.
- Cuando el valor del parámetro newName es null, el documento conservará el mismo nombre.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.document.copyDocument("9ed5c7b1-9314-4479-8f80-fd8e2b47f55e", "8599eab7-ae61-4628-8010-1103d6950c63", "new_logo.png"); } catch (Exception e) { e.printStackTrace(); } }}getVersionHistorySize
Sección titulada «getVersionHistorySize»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getVersionHistorySize(String uuid) | 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.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); String[] UNITS = new String[]{"B", "KB", "MB", "GB", "TB", "PB", "EB"}; long bytes = ws.document.getVersionHistorySize("9ed5c7b1-9314-4479-8f80-fd8e2b47f55e"); 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(); } }}isValid
Sección titulada «isValid»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isValid(String docId) | Boolean | Devuelve un booleano que indica si el nodo es un documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println(ws.document.isValid("9ed5c7b1-9314-4479-8f80-fd8e2b47f55e")); } catch (Exception e) { e.printStackTrace(); } }}getPath
Sección titulada «getPath»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getPath(String uuid) | String | Convierte el UUID de un documento en su ruta. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println(ws.document.getPath("9ed5c7b1-9314-4479-8f80-fd8e2b47f55e")); } 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.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); for (String lang : ws.document.getDetectedLanguages()) { System.out.println(lang); } } catch (Exception e) { e.printStackTrace(); } }}extendedCopy
Sección titulada «extendedCopy»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| extendedCopy(String nodeId, String dstId, String name, boolean categories, boolean keywords, boolean propertyGroups, boolean notes, boolean security) | void |
Copia un documento junto con sus datos asociados a una carpeta o expediente. |
- Los valores del parámetro nodeId deben ser el UUID de un Document.
- Los valores del parámetro dstId deben ser el UUID de una carpeta o expediente.
- Cuando el valor del parámetro newName es null, el documento conservará el mismo nombre.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); Document document = ws.document.extendedCopy("055b5206-35d0-4351-ba92-c304bbba7ddf", "2dccdee1-9d83-477d-ac58-1b50278a2210", "new_logo.png", true, true, true, true, true); System.out.println(document); } catch (Exception e) { e.printStackTrace(); } }}getExtractedText
Sección titulada «getExtractedText»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getExtractedText(String uuid) | String | Devuelve una cadena 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. Hay un crontab que procesa periódicamente esta cola y extrae el contenido de los documentos.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
import java.io.FileInputStream;import java.io.InputStream;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password);
InputStream is = new FileInputStream("/home/openkm/test.pdf"); ws.document.setExtractedText("301de803-f4ae-48f1-8505-e83b26716956", is); } catch (Exception e) { e.printStackTrace(); } }}setExtractedText
Sección titulada «setExtractedText»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setExtractedText(String uuid, InputStream is) | void | Establece el texto extraído. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); String text = ws.document.getExtractedText("46762f90-82c6-4886-8d21-ad3017dd78a7"); 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 uuid, ThumbnailType type) | InputStream | Devuelve los datos de la imagen miniatura. |
- Tipos disponibles:
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.OKMWebservicesFactory;import com.openkm.sdk4j.bean.ThumbnailType;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); OutputStream fos = new FileOutputStream("/home/openkm/invoice.png"); InputStream is = ws.document.getThumbnail("46762f90-82c6-4886-8d21-ad3017dd78a7", ThumbnailType.THUMBNAIL_LIGHTBOX); IOUtils.copy(is, fos); IOUtils.closeQuietly(is); IOUtils.closeQuietly(fos); } catch (Exception e) { e.printStackTrace(); } }}createFromTemplate
Sección titulada «createFromTemplate»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createFromTemplate(String uuid, String dstPath, boolean categories, boolean keywords, boolean notes, Map<String, String> properties) |
Document | Crea un nuevo documento a partir de la plantilla y devuelve un objeto Document. |
- El parámetro uuid es el valor UUID del fichero plantilla.
- El valor dstPath es la ruta de destino del documento.
- 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 com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;import com.openkm.sdk4j.util.ISO8601;
import java.util.Calendar;import java.util.HashMap;import java.util.Map;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin";
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(username, password);
Map<String, String> properties = new HashMap<>(); // okg:tpl properties.put("okp:tpl.name", "sdk 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\" ]");
// Property okg:technology properties.put("okp:technology.comment", "sdk name");
Document document = ws.document.createFromTemplate("5e72dec8-2409-405b-ac15-d964feb3d7bb", "/okm:root/sdk/template.pdf", true, true, true, properties); System.out.println(document); } catch (Exception e) { e.printStackTrace(); } }}updateFromTemplate
Sección titulada «updateFromTemplate»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| updateFromTemplate(String uuid, String dstId, Map<String, String> properties) | Document | Actualiza un documento creado previamente a partir de la plantilla y devuelve un objeto Document. |
- El valor uuid es el valor UUID del fichero plantilla.
- El dstId es el UUID del documento a actualizar.
- 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.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;import com.openkm.sdk4j.util.ISO8601;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); Map<String, String> properties = new HashMap<>(); properties.put("okp:tpl.name", "update 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", "[ \"python\" ]");
ws.document.updateFromTemplate("9fa9787e-d8b0-4ff7-905a-a89f0b228ec8", "058b9379-b441-454d-8590-00d5a280ce79", properties); } catch (Exception e) { e.printStackTrace(); } }}getAnnotations
Sección titulada «getAnnotations»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getAnnotations(String uuid, String versionName) | String | Devuelve las anotaciones del documento para una versión concreta. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println(ws.document.getAnnotations("9ed5c7b1-9314-4479-8f80-fd8e2b47f55e", "1.0")); } catch (Exception e) { e.printStackTrace(); } }}getDifferences
Sección titulada «getDifferences»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getDifferences(String uuid, String versionName1, String versionName2) | 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.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); InputStream is = ws.document.getDifferences("46762f90-82c6-4886-8d21-ad3017dd78a7", "1.0", "1.1"); FileOutputStream fos = new FileOutputStream("/home/openkm/okm/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 de documentos con checkout hecho por el usuario. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); for (Document doc : ws.document.getCheckedOut()) { System.out.println(doc); } } catch (Exception e) { e.printStackTrace(); } }}setNodeClass
Sección titulada «setNodeClass»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setDocumentNodeClass(String uuid, long ncId) | void | Establece el NodeClass. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); long ncId = 2; ws.document.setNodeClass("7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", ncId); } catch (Exception e) { e.printStackTrace(); } }}setDispositionStage
Sección titulada «setDispositionStage»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setDispositionStage(String uuid, long stage) | void | Establece la fase de disposición |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); long stage = 1; ws.document.setDispositionStage("7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", stage); } catch (Exception e) { e.printStackTrace(); } }}setDescription
Sección titulada «setDescription»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setDescription(String uuid, String description) | void | Establece una descripción. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.document.setDescription("7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", "some description"); } catch (Exception e) { e.printStackTrace(); } }}createWizard
Sección titulada «createWizard»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createWizard(String uuid, String name, long nodeClass, InputStream is) | WizardNode | Crea un nuevo documento usando el wizard. |
- El parámetro uuid debe ser un UUID de carpeta o expediente válido.
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.WizardNode;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); InputStream is = new FileInputStream("/home/openkm/okm/logo.png"); WizardNode wn = ws.document.createWizard("1f323e88-64ee-4f57-91e2-9276f8c603f9", "logo.png", 0, is); System.out.print(wn); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}isOCRDataCaptureSupported
Sección titulada «isOCRDataCaptureSupported»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isOCRDataCaptureSupported(String uuid) | boolean | Comprueba si el nodo admite captura de datos por OCR. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); if (ws.document.isOCRDataCaptureSupported("b2f88679-e3fd-4f97-bf0e-abf76f9ec499")) { System.out.println("Yes supported OCR Data capture"); } else { System.out.println("No supported OCR Data capture"); } } catch (Exception e) { e.printStackTrace(); } }}recognize
Sección titulada «recognize»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| recognize(String uuid) | OCRRecognise | Devuelve un objeto OCRRecognise. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.OCRRecognise;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); OCRRecognise ocr = ws.document.recognize("b2f88679-e3fd-4f97-bf0e-abf76f9ec499"); System.out.println(ocr); } catch (Exception e) { e.printStackTrace(); } }}captureData
Sección titulada «captureData»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| captureData(String uuid, long templateId) | void | Realiza la captura de datos por OCR usando la plantilla OCR identificada por templateId. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); long templateId = 1; ws.document.captureData("f123a950-0329-4d62-8328-0ff500fd42db", templateId); } catch (Exception e) { e.printStackTrace(); } }}getNumberOfPages
Sección titulada «getNumberOfPages»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getNumberOfPages(String uuid) | int | Obtiene el número de páginas de un documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println("The number of pages is : " + ws.document.getNumberOfPages("b2f88679-e3fd-4f97-bf0e-abf76f9ec499")); } catch (Exception e) { e.printStackTrace(); } }}getPageAsImage
Sección titulada «getPageAsImage»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getPageAsImage(String uuid, int pageNumber, int maxWidth, int maxHeight) | String | Devuelve una página concreta como imagen codificada en Base64. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println(ws.document.getPageAsImage("3fe350e2-69e8-4681-a97c-6ac4ba6c1524", 1, 150, 150)); } catch (Exception e) { e.printStackTrace(); } }}liveEditCheckin
Sección titulada «liveEditCheckin»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| liveEditCheckin(String uuid, String comment, int increment) | void | Realiza un check-in de live edit. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.document.liveEditCheckin("8b9a32c8-db65-41c8-a2a0-af03761f60b6", "comment 1.1", 1); } catch (Exception e) { e.printStackTrace(); } }}liveEditCancelCheckout
Sección titulada «liveEditCancelCheckout»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| liveEditCancelCheckout(String uuid) | void | Cancela la edición en vivo (live edit) de un documento. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); // Llegados a este punto, el documento queda bloqueado para el resto de usuarios excepto para el que ejecutó la acción ws.document.liveEditCancelCheckout("1ec49da9-1746-4875-ae32-9281d7303a62"); // Llegados a este punto, el resto de usuarios ya pueden ejecutar un checkout y modificar el documento } catch (Exception e) { e.printStackTrace(); } }}liveEditForceCancelCheckout
Sección titulada «liveEditForceCancelCheckout»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| liveEditForceCancelCheckout(String uuid) | void | Cancela la edición en vivo (live edit) de un documento. |
- Este método permite cancelar la edición en vivo de cualquier documento.
- No es obligatorio que esta acción la ejecute el mismo usuario que ejecutó previamente el checkout.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); // Llegados a este punto, el documento queda bloqueado para el resto de usuarios excepto para el que ejecutó la acción ws.document.liveEditForceCancelCheckout("1ec49da9-1746-4875-ae32-9281d7303a62"); // Llegados a este punto, el resto de usuarios ya pueden ejecutar un checkout y modificar el documento } catch (Exception e) { e.printStackTrace(); } }}mergePdf
Sección titulada «mergePdf»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| mergePdf(String destinationUuid, String docName, List |
String | Combina dos o más ficheros PDF. |
- El parámetro destinationUuid debe ser el UUID de una carpeta o expediente válido.
Ejemplo:
package com.openkm;
import java.util.ArrayList;import java.util.List;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); List<String> uuids = new ArrayList<>(); uuids.add("3fe350e2-69e8-4681-a97c-6ac4ba6c1524"); uuids.add("8b9a32c8-db65-41c8-a2a0-af03761f60b6"); String fldUuid = "7213e597-c147-46c9-a90b-ac3966b3114b"; String uuid = ws.document.mergePdf(fldUuid, "MergePdf.pdf", uuids); Document pdfDoc = ws.document.getDocumentProperties(uuid); System.out.println(pdfDoc.getPath()); } catch (Exception e) { e.printStackTrace(); } }}liveEditSetContent
Sección titulada «liveEditSetContent»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| liveEditSetContent(String uuid, InputStream is) | void | Actualiza el contenido del documento editado con la función de live edit. |
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); InputStream is = new FileInputStream("/home/openkm/logo.png"); ws.document.liveEditSetContent("1ec49da9-1746-4875-ae32-9281d7303a62", is); IOUtils.closeQuietly(is); } catch (Exception e) { e.printStackTrace(); } }}isAttachment
Sección titulada «isAttachment»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isAttachment(String docId) | boolean | Devuelve un booleano que indica si el nodo es un adjunto de correo. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println(ws.document.isAttachment("9ed5c7b1-9314-4479-8f80-fd8e2b47f55e")); } catch (Exception e) { e.printStackTrace(); } }}isConvertibleToPDF
Sección titulada «isConvertibleToPDF»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isConvertibleToPDF(String docId) | boolean | Devuelve un booleano que indica si el nodo se puede convertir a PDF. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println(ws.document.isConvertibleToPDF("9ed5c7b1-9314-4479-8f80-fd8e2b47f55e")); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getPdf(String uuid) | InputStream | Devuelve un PDF 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.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); Document doc = ws.document.getProperties("7f6c5c0b-a66b-4782-9595-e14b402a18b0"); InputStream is = ws.document.getPdf(doc.getUuid()); OutputStream fos = new FileOutputStream("/home/openkm/book.pdf"); IOUtils.copy(is, fos); IOUtils.closeQuietly(is); IOUtils.closeQuietly(fos); } catch (Exception e) { e.printStackTrace(); } }}saveAsPdf
Sección titulada «saveAsPdf»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| saveAsPdf(String uuid, String newName, boolean propertyGroups, boolean security) | Document | Guarda el documento como PDF en el repositorio de OpenKM. |
- Cuando el valor del parámetro newName es null, el documento conservará el mismo nombre.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); Document doc = ws.document.getProperties("7f6c5c0b-a66b-4782-9595-e14b402a18b0"); Document docPdf = ws.document.saveAsPdf(doc.getUuid(), "book.pdf", true, true); System.out.println("Document pdf: " + docPdf.getPath()); } catch (Exception e) { e.printStackTrace(); } }}webPageImport
Sección titulada «webPageImport»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| webPageImport(String uuid, String url) | void | Guarda un documento como PDF con el contenido de la página web. |
- El valor del parámetro uuid debe ser el UUID de un nodo carpeta o expediente.
- El valor del parámetro url es la URL de cualquier página web.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.document.webPageImport("271cc3aa-218e-4574-8065-c34c704f4a20", "https://www.google.com/"); } catch (Exception e) { e.printStackTrace(); } }}setIndexable
Sección titulada «setIndexable»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setIndexable(String uuid, boolean enabled) | void | Establece si el documento es indexable. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.document.setIndexable("19938640-fd34-421c-90c8-6b435e4b7d79", true); Document document = ws.document.getDocumentProperties("19938640-fd34-421c-90c8-6b435e4b7d79"); System.out.println("Document indexable:" + document.isIndexable()); } catch (Exception e) { e.printStackTrace(); } }}getXRefs
Sección titulada «getXRefs»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getXRefs(String uuid) | List |
Devuelve una lista de referencias de documento para un documento de AutoCAD. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.XRef;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(username, password);
for (XRef xRef : ws.document.getXrefs("5ce6dd37-7472-404a-878e-274005a2d6db")) { System.out.println(xRef); } } catch (Exception e) { e.printStackTrace(); } }}refresh
Sección titulada «refresh»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| refresh(String uuid) | void | Refresca las referencias de un documento de AutoCAD. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(username, password);
ws.document.refresh("5ce6dd37-7472-404a-878e-274005a2d6db"); } catch (Exception e) { e.printStackTrace(); } }}