Ofrece un método para facilitar la obtención de información de instancias de formularios de forma externa. La ruta a los servicios web de G·Forms es la siguiente:
$contexto_gforms$/seam/resources/rest/Instance
InstanceService instanceService = new InstanceService("$contexto_gforms$/seam/resources/rest");
public class Instance {
private String externalId;
private String formulario;
private Date lastAccessDate;
private Date lastUpdateDate;
private Long duration;
private String lastQuestionAnsweredId;
/*
* Getters and Setters
*/
}
<instance>
<externalId></externalId>
<descripcion></descripcion>
<formulario></formulario>
<lastAccessDate></lastAccessDate>
<lastUpdateDate></lastUpdateDate>
<duration></duration>
<lastQuestionAnsweredId></lastQuestionAnsweredId>
</instance>
Devuelve una lista de objetos Instance según los parámetros de filtrado pasados. Todos los parámetros son opcionales pero hay que tener en cuenta que si no se especifica ninguno la cantidad de registros devueltos puede ser muy grande. Las definiciones del método de consulta son las siguientes:
Invocación a través de gforms-ws-client
public Instances getInstances(String externalId, String form) throws GFormsWSException;
public Instances getInstances(String externalId) throws GFormsWSException;
Invocación REST
Se realizará una petición PUT a la url $contexto_gforms$/seam/resources/rest/Instance/query enviando el siguiente XML:
<instanceFilter>
<externalId>externalId</externalId> <!-- Opcional -->
<formulario>form</formulario> <!-- Opcional -->
</instanceFilter>
Existen múltiples combinaciones de filtros para la obtención de datos. A continuación se detallan las opciones de filtrado más comunes para este servicio.
Devuelve una lista de objetos Instance que únicamente contendrá la instancia con el identificador y formulario especificados. Si no se encuentra ninguna instancia que coincida con los parámetros la lista vendrá vacía. En caso de error inesperado se lanzará una excepción GFormsWSException con la causa del error.
Invocación a través de gforms-ws-client
Instances instances = instanceService.getInstances("id_instancia", "id_formulario");
Invocación REST
Se realizará una petición PUT a la url $contexto_gforms$/seam/resources/rest/Instance/query enviando el siguiente XML:
<instanceFilter>
<externalId>id_instancia</externalId>
<formulario>id_formulario</formulario>
</instanceFilter>
Devuelve una lista de objetos Instance que contendrá las instancia pertenecientes al formulario especificado. Si no se encuentra ninguna instancia que coincida con los parámetros la lista vendrá vacía. En caso de error inesperado se lanzará una excepción GFormsWSException con la causa del error.
Invocación a través de gforms-ws-client
Instances instances = instanceService.getInstances(null, "id_formulario");
Invocación REST
Se realizará una petición PUT a la url $contexto_gforms$/seam/resources/rest/Instance/query enviando el siguiente XML:
<instanceFilter>
<formulario>id_formulario</formulario>
</instanceFilter>
Devuelve un objeto File con el binario de un fichero PDF que contiene la información introducida en la instancia del formulario en el idioma seleccionado. Si no se encuentra ninguna instancia que coincida con los parámetros devolverá error.
Invocación a través de gforms-ws-client
public File getPDFInstance(String externalId, String form, String locale) throws GFormsWSException
Invocación REST
Se realizará una petición PUT a la url _$contexto_gforms$/seam/resources/rest/Instance/formularioPDF enviando el siguiente XML:
<instanceFilter>
<externalId>externalId</externalId>
<formulario>form</formulario>
<localeSeleccionado>locale</localeSeleccionado>
</instanceFilter>
Devuelve un objeto File con el binario de un fichero PDF que contiene la información introducida en la instancia del formulario en el idioma seleccionado y sobre la versión de formulario establecida. Si no se encuentra ninguna instancia que coincida con los parámetros devolverá error.
Invocación a través de gforms-ws-client
public File getPDFInstance(String externalId, String form, String locale, String version) throws GFormsWSException
Invocación REST
Se realizará una petición PUT a la url _$contexto_gforms$/seam/resources/rest/Instance/formularioPDF enviando el siguiente XML:
<instanceFilter>
<externalId>externalId</externalId>
<formulario>form</formulario>
<localeSeleccionado>locale</localeSeleccionado>
<version>version</version>
</instanceFilter>