6.- Casos de uso y ejemplos SVCD

Para que una aplicación pueda utilizar servicios de SVCD, deberá estar dada de alta en la Plataforma de Autorización de Usuarios y además, deberá tener permiso sobre el servicio de SVCD que desee utilizar.

6.1.- Dependencias


A continuación se indica el fichero .pom de dependencias de la librería:

POM
<!-- SVCD --> <dependency> <groupId>SVCD</groupId> <artifactId>svcd-client</artifactId> <version>3.7.0</version> </dependency> <!-- CXF --> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-frontend-jaxrs</artifactId> <version>${cxf.version}</version> <!-- versión deseada --> </dependency> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-transports-http</artifactId> <version>${cxf.version}</version> </dependency> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-transports-http-jetty</artifactId> <version>${cxf.version}</version> </dependency> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-databinding-aegis</artifactId> <version>${cxf.version}</version> </dependency> <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-wadl2java-plugin</artifactId> <version>${cxf.version}</version> </dependency> <!-- Spring framework --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>${spring.version}</version> <!-- versión deseada --> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-expression</artifactId> <version>${spring.version}</version> </dependency> <!-- LOG --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.19</version> <!-- versión deseada --> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.19</version> <!-- versión deseada --> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> <!-- versión deseada --> </dependency> <!-- AXIS --> <dependency> <groupId>axis</groupId> <artifactId>axis</artifactId> <version>1.4</version> <!-- versión deseada --> </dependency>




6.2.- Consulta de identidad


A continuación, se muestra un ejemplo de cómo invocar al servicio de consulta de identidad:

Ejemplo de invocación
// Instanciamos la petición IdentitySearchRequestExt identitySearchRequestExt = new IdentitySearchRequestExt(); // Instanciamos objeto para asignar nif IdentificationData identificationData = new IdentificationData(); identificationData.setDocumentNumber("12345678Z"); identificationData.setDocumentType("NIF"); // Instanciamos objeto para asignar datos generales PurposeData purposeData = new PurposeData(); // número de expediente purposeData.setFileNumber("001"); // número de procedimiento purposeData.setProcedureNumber("466"); // finalidad purposeData.setPurposeText("prueba"); // tipo de consentimiento purposeData.setConsent("Si"); // código de validación de finalidad purposeData.setPurposeValidationCode("466"); // asignamos datos de identificación a la petición identitySearchRequestExt.setIdentificationData(identificationData); // asignamos datos generales a la petición identitySearchRequestExt.setPurposeData(purposeData); // Instanciamos objeto de parámetros de invocación IdentityQueryInExt identityQueryInExt = new IdentityQueryInExt(); identityQueryInExt.setIdentitySearchRequest(identitySearchRequestExt); // Código con el que la aplicación integradora se ha dado de alta en PAU identityQueryInExt.setApplicationId("APP_CODE"); // código de organismo que invoca identityQueryInExt.setOrganismCode("ORG07458"); // NIF del usuario que invoca identityQueryInExt.setUserCode("00000000T"); IdentityQueryOutExt identityQueryOutExt = null; try { // Obtener datos a través de la petición   identityQueryOutExt = identityQueryService.identityQueryExt(identityQueryInExt); } catch (Throwable) {  //Gestionar error  }



La clase podemos instanciar

Se muestra una posible clase cliente para realizar invocaciones:



Clase cliente
import es.aragon.svcd.core.ws.IIdentityVerificationService; public class ClienteSVCD { // se importa por ejemplo el servicio de verificación de identidad pero podría importarse cualquier otro private IIdentityVerificationService identityVerificationWS; public IdentityVerificationOut identityVerificationQuery() { IdentityVerificationRequest identityVerificationRequest = new IdentityVerificationRequest(); IdentificationData identificacionData = new IdentificationData(); identificacionData.setDocumentNumber("30000260A"); identificacionData.setDocumentType("NIF"); SpecificIdentificationData specificIdentificationData = new SpecificIdentificationData(); specificIdentificationData.setSupportNumber("AAA013521"); UserData userData = new UserData(); userData.setName("JUAN"); userData.setSurname1("GARCÍA"); userData.setSurname2("SOTO"); PurposeData purposeData = new PurposeData(); purposeData.setFileNumber("001"); purposeData.setProcedureNumber("466"); purposeData.setPurposeText("PruebaVerificacionIdentidad"); purposeData.setConsent("Si"); UserSpecificDataVI userSpecificDataVI = new UserSpecificDataVI(); userSpecificDataVI.setGender("M"); identityVerificationRequest.setIdentificationData(identificacionData); identityVerificationRequest.setSpecificIdentificationData(specificIdentificationData); identityVerificationRequest.setPurposeData(purposeData); identityVerificationRequest.setUserSpecificDataVI(userSpecificDataVI); identityVerificationRequest.setUserData(userData); IdentityVerificationIn identityVerificationIn = new IdentityVerificationIn(); identityVerificationIn.setIdentityVerificationRequest(identityVerificationRequest); // Código con el que la aplicación integradora se ha dado de alta en PAU identityVerificationIn.setApplicationId("APP_CODE"); identityVerificationIn.setOrganismCode("ORG07458"); identityVerificationIn.setUserCode("00000000T"); IdentityVerificationOut identityVerificationOut = null; try { identityVerificationOut = identityVerificationWS.identityVerification(identityVerificationIn); } catch(Throwable e) { // Gestionar error } } }



6.3.- Databinding soportado


Se adjunta un ejemplo de como configurar la invocación a los clientes de los servicios de SVCD. SVCD no soporta el databinding de aegis.

 

 

Related pages