/
Servicio de Creación vía HTTP

Servicio de Creación vía HTTP

 

Para crear un documento a través de servicios HTTP, realice un POST a la siguiente URL:

http://<server>/thuban-web/http-services?service=documentService&clase=<NombreClase>&name=<DocName>&fields=<Campos>&extension=<Extension>

Reemplace la información entre "<>" por los siguientes parámetros:

NombreClase

El nombre de la clase documental que desea crear.

DocName

El nombre externo del documento.

Campos

Un listado de campo-valor siendo “|” (pipe) el separador entre pares e “=” (igual) el separador entre campo y valor. El nombre del campo corresponde con el ID del campo en Thuban Admin. Por ejemplo: NRO_DOC=12121212|ESTADO=APROBADO

Extensión

La extensión del archivo que desea subir.

 

El cuerpo del mensaje debe contener el archivo a subir. El mime type del cuerpo debe ser “application/octet-stream”. A continuación puede ver un ejemplo de uso del servicio para la herramienta SOAPUI.

 

<?xml version="1.0" encoding="UTF-8" ?> <con:soapui-project name="Thuban" resourceRoot="${projectDir}" soapui-version="4.0.0" abortOnError="false" runType="SEQUENTIAL" xmlns:con="http://eviware.com/soapui/config"> <con:settings /> <con:interface xsi:type="con:RestService" wadlVersion="http://wadl.dev.java.net/2009/02" name="Create Document" type="rest" basePath="/thuban-web/http-services" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <con:settings /> <con:definitionCache type="TEXT" rootPart="" /> <con:endpoints> <con:endpoint>http://cairo:9669</con:endpoint> </con:endpoints> <con:resource name="Create Documento Resource" path=""> <con:settings /> <con:parameters /> <con:method name="Method 1" method="POST"> <con:settings /> <con:parameters> <con:parameter> <con:name>service</con:name> <con:value>documentService</con:value> <con:style>QUERY</con:style> <con:type xmlns:xs="http://www.w3.org/2001/XMLSchema">xs:string</con:type> <con:default>documentService</con:default> <con:path xsi:nil="true" /> <con:description xsi:nil="true" /> </con:parameter> <con:parameter> <con:name>fields</con:name> <con:value>TEXTO1_6_0DEV3=TEST SERVICE</con:value> <con:style>QUERY</con:style> <con:type xmlns:xs="http://www.w3.org/2001/XMLSchema">xs:string</con:type> <con:default>TEXTO1_6_0DEV3=TEST SERVICE</con:default> <con:path xsi:nil="true" /> <con:description xsi:nil="true" /> </con:parameter> <con:parameter> <con:name>extension</con:name> <con:value>TXT</con:value> <con:style>QUERY</con:style> <con:type xmlns:xs="http://www.w3.org/2001/XMLSchema">xs:string</con:type> <con:default>TXT</con:default> <con:path xsi:nil="true" /> <con:description xsi:nil="true" /> </con:parameter> <con:parameter> <con:name>name</con:name> <con:value>DocPrueba</con:value> <con:style>QUERY</con:style> <con:type xmlns:xs="http://www.w3.org/2001/XMLSchema">xs:string</con:type> <con:default>DocPrueba</con:default> <con:path xsi:nil="true" /> <con:description xsi:nil="true" /> </con:parameter> <con:parameter> <con:name>clase</con:name> <con:value>6cero4</con:value> <con:style>QUERY</con:style> <con:default>6cero4</con:default> </con:parameter> </con:parameters> <con:representation type="RESPONSE"> <con:mediaType>text/html</con:mediaType> <con:status>200</con:status> <con:params /> <con:element>html</con:element> </con:representation> <con:representation type="REQUEST"> <con:mediaType>application/octet-stream</con:mediaType> <con:params /> </con:representation> <con:representation type="FAULT"> <con:mediaType>text/html</con:mediaType> <con:status>500 404</con:status> <con:params /> <con:element>html</con:element> </con:representation> <con:representation type="RESPONSE"> <con:mediaType xsi:nil="true" /> <con:status>200</con:status> <con:params /> <con:element>data</con:element> </con:representation> <con:request name="Request 1" mediaType="application/octet-stream" postQueryString="false"> <con:settings> <con:setting id="com.eviware.soapui.impl.wsdl.WsdlRequest@request-headers"><entry key="Authorization" value="Basic YWRtaW46" xmlns="http://eviware.com/soapui/config"/></con:setting> </con:settings> <con:endpoint>http://cairo:9669</con:endpoint> <con:request>HOLA ARCHIVO</con:request> <con:credentials> <con:username /> <con:password /> <con:domain /> </con:credentials> <con:jmsConfig JMSDeliveryMode="PERSISTENT" /> <con:jmsPropertyConfig /> <con:parameters> <con:entry key="extension" value="TXT" /> <con:entry key="name" value="DocPrueba" /> </con:parameters> </con:request> </con:method> </con:resource> </con:interface> <con:endpointStrategy xsi:type="con:DefaultEndpointStrategy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <con:endpoint mode="COMPLEMENT" username="admin" domain="">http://cairo:9669</con:endpoint> </con:endpointStrategy> <con:properties /> <con:wssContainer /> <con:sensitiveInformation /> </con:soapui-project>

 

Servicio de creación de documentos en código Java

Crea el documento, indexa los campos indicados en la URL y le adjunta el recurso mencionado. Si no se especifica un NAME y EXTENSIÓN, se crea el documento sin imagen.

public void testCreateDocumentHttpSerive() throws HttpException, IOException { HttpClient client= new HttpClient(); HttpMethodParams params= new HttpMethodParams(); PostMethod postMethod= new PostMethod("http://SERVER:PUERTO/thuban-web/http-services service=DocumentService&clase=NOMBRE%20CLASE%20DOCUMENTAL&fields=CAMPO=VALOR%7CCAMPO2=VALOR2&name=NOMBREDELDOCUMENTO&extension=TIF"); client.getState().setCredentials(new AuthScope("SERVER", PUERTO, "ThubanRealm"), new UsernamePasswordCredentials("USUARIO", "PASSWORD")); RequestEntity entity = new FileRequestEntity(new File("UBICACIÓN DEL ARCHIVO FÍSICO"), "application/stream; charset=ISO-8859-1"); postMethod.setRequestEntity(entity); List authPrefs = new ArrayList(2); authPrefs.add(AuthPolicy.BASIC); authPrefs.add(AuthPolicy.DIGEST); client.getParams().setParameter(AuthPolicy.AUTH_SCHEME_PRIORITY, authPrefs); client.getParams().setAuthenticationPreemptive(true); postMethod.setDoAuthentication(true); postMethod.setParams(params); System.out.println(postMethod.getQueryString()); try { int result = client.executeMethod(postMethod); // Display status code System.out.println("Response status code: " + result); System.out.println(postMethod.getResponseBodyAsString()); assertEquals(result, 200); } finally { postMethod.releaseConnection(); } }



 

Related content