Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 9 Next »

INDICE



1.- Servicios SOAP


1.1.- Servicio EntryService

En los siguientes apartados se especifican tanto los tipos de datos utilizados, como los métodos que la componen, detallando los parámetros y mostrando ejemplos de uso.

1.1.1- Método 'listEntry'

Devuelve el listado con los datos de los asientos registrales que se corresponden a los criterios de búsqueda especificados.

 Más detalles...

1.1.1.1- Signatura

ResultListEntries listEntry(String idApplication, ParamListEntries param) throws RemoteException, SRTException

1.1.1.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
infoInfo-Filtro de búsqueda en función de la información básica del asiento. Son obligatorios los campos organism, requestType y register.
consolidatedValueInt-Filtro para seleccionar los asientos consolidados (en Registro Físico), los no consolidados ó indistinto
INDISTINTO = 0
NO CONSOLIDADOS = 1
CONSOLIDADOS = 2
No
senderActor-Interesado que envía el asientoNo
senderAgentActor-Representante del interesado que envía el asientoNo
receiverActor-Destinatario al que va dirigido el asientoNo
receiverAgentActor-Representante del destinatario al que va dirigido el asientoNo
dateStartDate-Fecha (y hora) de presentación a partir de la cual se desea listar los asientosNo
dateEndDate-Fecha (y hora) de presentación hasta la que se desea listar los asientosNo
specificDataData[]-Datos específicos asociadosNo
sortColumnString-Ordenación por el nombre de la columna
ascendingBoolean-

Ordenación de las columnas

ASCENDENTE = true

DESCENDENTE = false

fromIndexInt-Valor desde el cual se busca
toIndexInt-Valor de búsqueda

El emisor (Sender), representante del emisor (SenderAgent), receptor/es (Receivers) y representante del receptor(ReceiverAgent) pueden ser de tipo Person, Organism, Company y UndefinedActor

Solamente se debería utilizar UndefinedActor para el Sender.

Person extends ActorTipoLongitud máximaDescripciónObligatorio
NifString255 caracteres
NameString255 caracteresNombreNo
Surname1String255 caracteresPrimer apellidoNo
Surname2String255 caracteresSegundo apellidoNo
MailString255 caracteresCorreoNo
AddressString255 caracteresDirecciónNo


Organism extends ActorTipoLongitud máximaDescripciónObligatorio
CodeString255 caracteresCódigo del organismo
NameString255 caracteresDescripción del organismo


Company extends ActorTipoLongitud máximaDescripciónObligatorio
CifString255 caracteresCif
NameString255 caracteresNombre
UndefinedActor extends ActorTipoLongitud máximaDescripciónObligatorio
NOTA: En métodos en los que se cree un asiento registral, solamente se debería utilizar este tipo UndefinedActor para el Sender. Por ejemplo, en un caso en el que el interesado es menor, el Sender (el menor) sería de tipo UndefinedActor y el representante del menor  (SenderAgent) que presenta el documento sería de tipo Person.
codeString255 caracteresCódigo
nameString255 caracteresNombre

1.1.1.3.- Parámetros de respuesta

NombreTipoDescripción
entriesEntry[]Listado de asientos que cumplen los filtros de búsqueda establecidos.

1.1.1.4.- Validaciones

NombreDescripción
InternalCoreExceptionSe agrupan todos aquellos errores internos de funcionamiento del SRT.

1.1.1.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.1.1.6.- Ejemplo de invocación

Ejemplo de invocación
ParamListEntries paramListEntries = new ParamListEntries();
ResultListEntries entries = new ResultListEntries();
Info info = new Info();
// Código de organismo, es un atributo que el integrador deberá pedir
al responsable funcional que le ha solicitado la aplicación
info.setOrganism("ORGXXXXX");
//Código de Libro de registro
info.setRegister("REG_XXX");
// Código de procedimiento, es un atributo que el integrador deberá
pedir al responsable funcional que le ha solicitado la aplicación
info.setProcessType("xxx");
//Tipo de Entry (Entrada(0), Salida(1))
info.setRequestType(SRTClientConstants.REQUEST_TYPE_INPUT);
//Fecha de creación del Entry
Calendar requestTime = Calendar.getInstance();
info.setRequestTime(requestTime);
paramListEntries.setInfo(info);
entries = entryClient.listEntry(paramListEntries);

1.1.2.- Método 'getEntryDetails'

Obtiene los datos sobre un asiento registral, a partir del identificador de su libro de registro y del número de asiento registral.

 Más detalles...

1.1.2.1.- Signatura

ResultGetEntryDetails getEntryDetails(String idApplication, ParamGetEntryDetails param) throws RemoteException, SRTException

1.1.2.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
registerIdString-Identificador del libro de registro en el que se va a realizar la consolidación de los asientos.
requestTypeInt-Tipo de asiento
ENTRADA = 0
SALIDA = 1
entryIdString-Nº de registro del asiento asociado al sistema telemático
consolidatedIdString-Nº de registro del asiento asociado al sistema físico con el que se consolidaNo
invokingIdString-Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.No

1.1.2.3.- Parámetros de respuesta

NombreTipoDescripción
entryEntryInformación general del asiento y datos específicos en 'specificdata'
requestStringContenido del documento de solicitud de alta de asiento (fichero PDF, XML, etc.) codificado en Base64
receiptStringContenido del documento de justificante de asiento (fichero PDF, XML, etc.) codificado en Base64 y firmado electrónicamente por el sistema telemático
attachmentsAttachmentInfo[]Datos generales de los documentos adjuntos

1.1.2.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.

1.1.2.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.1.2.6.- Ejemplo de invocación

Ejemplo de invocación
ParamGetEntryDetails paramGetEntryDetails = new
ParamGetEntryDetails();
ResultGetEntryDetails resultGetEntryDetails = new
ResultGetEntryDetails();
//Identificador de Libro de Registro
paramGetEntryDetails.setRegisterId("REG_XXX");
//Código del Asiento Registral
paramGetEntryDetails.setEntryId("PREF_XXXXXXXXXX/SUF");
//Tipo de Entry (Entrada(0), Salida(1))
paramGetEntryDetails.setRequestType(SRTClientConstants.REQUEST_TYPE_INPUT);
//paramGetEntryDetails.setInvokginId(null);
paramGetEntryDetails.setInvokginId("NIF"));
resultGetEntryDetails = entryClient.getEntryDetails(paramGetEntryDetails);

1.1.3.- Método 'getEntryAttachment'

Devuelve los bytes del fichero adjunto indicado en el criterio. (Método DEPRECADO). La recomendación es realizar esta integración mediante CCSV como se indica en ANEXO I: PROCESO DE INTEGRACIÓN MEDIANTE CCSV

 Más detalles...

1.1.3.1.- Signatura

DataHandler getEntryAttachment(String idApplication, ParamGetEntryAttachment param) throws RemoteException, SRTException

1.1.3.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
registerIdString-Identificador del libro de registro en el que se va a realizar la consolidación de los asientos.
requestTypeint-Tipo de la solicitud
Entrada = 0
Salida = 1
entryIdString-Identificador del tramite
idAttachmentString-Identificador del documento adjunto
invokingIdString-Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.No
AttachmentInputStream-Flujo de datos (stream) para la transmisión de forma eficiente del fichero adjunto desde el sistema telemático a la aplicación invocante-

1.1.3.3.- Parámetros de respuesta

NombreTipoDescripción
consolidationResultEntryConsolidatrionResult[]Listado de resultados de la consolidación de las entradas.

1.1.3.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.

1.1.3.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.1.3.6.- Ejemplo de invocación

Ejemplo de invocación
ParamGetEntryAttachment paramGetEntryAttachment = new
ParamGetEntryAttachment();
//Identificador de Libro de Registro
paramGetEntryAttachment.setRegisterId("REG_xxx");
//Código del Asiento Registral
paramGetEntryAttachment.setEntryId("PREF_XXXXXXXXX/SUF");
//Identificador del adjunto
paramGetEntryAttachment.setIdAttachment("idAttachment");
//Tipo de Entry (Entrada(0), Salida(1))
paramGetEntryAttachment.setRequestType(SRTClientConstants.REQUEST_TYPE_INPUT);
paramGetEntryAttachment.setInvokingId(null);
InputStream inputStream = entryClient.getEntryAttachment(paramGetEntryAttachment);

1.1.4.- Método 'getEntryAttachmentByFileRef'

 Más detalles...

1.1.4.1.- Signatura

String getEntryAttachmentByFileRef(String idApplication,ParamGetEntryAttachment param) throws RemoteException, SRTException

1.1.4.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
registerIdString-Identificador del libro de registro en el que se va a realizar la consolidación de los asientos.
requestTypeint-Tipo de la solicitud
Entrada = 0
Salida = 1
entryIdString-Identificador del tramite
idAttachmentString-Identificador del documento adjunto
invokingIdString-Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.No

1.1.4.3.- Parámetros de respuesta

NombreTipoDescripción
idRefStringIdentificador (“id”) del contenido del fichero dentro de la petición SOAP de invocación

1.1.4.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.

1.1.4.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.1.4.6.- Ejemplo de invocación

Ejemplo de invocación
ParamGetEntryAttachment paramGetEntryAttachment = new
ParamGetEntryAttachment();
//Identificador de Libro de Registro
paramGetEntryAttachment.setRegisterId("REG_XXX");
//Código del Asiento Registral
paramGetEntryAttachment.setEntryId("PREF_XXXXXXXXX/SUF");
//Identificador del adjunto
paramGetEntryAttachment.setIdAttachment("idAttachment");
//Tipo de Entry (Entrada(0), Salida(1))
paramGetEntryAttachment.setRequestType(SRTClientConstants.REQUEST_TYPE_INPUT);
paramGetEntryAttachment.setInvokingId(null);
InputStream inputStream = entryClient.getEntryAttachmentByFileRef(paramGetEntryAttachment);

1.1.5.- Método 'getEntrySpecificData'

Información general del asiento y datos específicos en 'specificdata'

 Más detalles...

1.1.5.1.- Signatura

ResultGetEntrySpecificData getEntrySpecificData(String idApplication, ParamGetEntryDetails param)throws RemoteException, SRTException

1.1.5.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
registerIdString-Identificador del libro de registro en el que se va a realizar la consolidación de los asientos.
requestTypeint-Tipo de la solicitud
Entrada = 0
Salida = 1
entryIdString-Identificador del tramite
consolidatedIdString-Nº de registro del asiento asociado al sistema físico con el que se consolidaNo
invokingIdString-Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona
autenticada en el mismo.
No

1.1.5.3.- Parámetros de respuesta

NombreTipoDescripción
EntryEntryInformación general del asiento y datos específicos en 'specificdata'

1.1.5.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.

1.1.5.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.1.5.6.- Ejemplo de invocación

Ejemplo de invocación
ResultGetEntrySpecificData result = new ResultGetEntrySpecificData();
ParamGetEntryDetails param = new ParamGetEntryDetails();
//Identificador de Libro de Registro
paramGetEntryAttachment.setRegisterId("REG_xxx");
//Código del Asiento Registral
paramGetEntryAttachment.setEntryId("PREF_XXXXXXXXX/SUF");
//Tipo de Entry (Entrada(0), Salida(1))
paramGetEntryAttachment.setRequestType(SRTClientConstants.REQUEST_TYPE_INPUT);
result = entryClient.getEntrySpecificData(param);

1.1.6.- Método 'sendEntry'

Alta del asiento registral. (Método DEPRECADO). Se recomienda utilizar el método sendFullEntry (apartado 1.1.7)

 Más detalles...

1.1.6.1.- Signatura

ResultSendEntry sendEntry(String idApplication, ParamSendEntry param, FileInfo fileInfo, DataHandler file)throws RemoteException, SRTException

1.1.6.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
infoInfo-Información básica y común
requestRequest-Contenido del documento de solicitud de alta de asiento (fichero PDF, XML, etc.) codificado en Base64
senderActor-Interesado que envía el asiento
senderAgentActor-Representante del interesado que envía el asientoNo
receiverActor-Destinatario al que va dirigido el asiento
receiverAgentActor-Representante del destinatario al que va dirigido el asientoNo
specificDataData[]

Clave → 255 caracteres

Valor → 255 caracteres

Datos específicos asociados
invokingIdString255 caracteresIdentificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.No
PROD_ORG_CODEAlfanumérico, código de registro-

Organismo productor u organismo responsable del procedimiento (en SIU). USOS: 

1) Se utiliza para obtener el órgano productor de un documento asociado a un procedimiento, con el fin de introducirlo como metadato de los documentos asociados a ese procedimiento (a la hora de guardar en el gestor documental - a través de CCSV). NO Titulo: Manual Integración
SRT v3.12 Página 44 de 129 Construyendo Europa desde Aragón

2) Saber qué procedimientos tiene asignados un organismo.

No
fileInfoFileInfo-Datos del fichero adjuntoNo
attachmentDataHandler-Flujo de datos (stream) para la transmisión de forma eficiente del fichero adjunto desde la aplicación invocante al sistema telemáticoNo
InfoTipoLongitud máximaDescripciónObligatorio
subjectString255 caracteresAsunto
reportCodeString255 caracteresCódigo de informeNo
requestTypeInteger1Tipo de petición (0 = entrada y 1 = salida)
requestTimeCalendar-Fecha de presentaciónNo
processTimeCalendar-Fecha de registroNo
organismString255 caracteresCódigo de organismo
registerString255 caracteresTipo de registro (I = Interno y E = externo)No
processTypeString255 caracteresCódigo de procedimiento
RequestTipoLongitud máximaDescripciónObligatorio
requestString-Bytes del archivo en base64
fileNameString255 caracteresNombre del archivo
detachedSignatureString-Firma del archivo en base64
formatSignatureLong19 dígitosFormato de la firma
mimeTypeString255 caracteresTipo de archivo
RequestPromoterTipoLongitud máximaDescripciónObligatorio
Promoter
Promoter/identifierNumberString255 caracteresNúmero de identificación
Promoter/nameString255 caracteresNombre
Promoter/surname1String255 caracteresPrimer apellidoNo
Promoter/surname2String255 caracteresSegundo apellidoNo
FileInfoTipoLongitud máximaDescripciónObligatorio
nameString255 caracteresNombre del archivo
fileSizeLong19 dígitosTamaño del archivo
descriptionString255 caracteresDescripción del archivo
detachedSignatureString-Firma del archivo en base64
formatSignatureLong19 dígitosFormato de la firma
mimeTypeString255 caracteresTipo de archivo

El emisor (Sender), agente emisor (SenderAgent) y receptor/es (Receivers) pueden ser de tipo Person, Organism, Company y UndefinedActor

Solamente se debe utilizar UndefinedActor para el Sender.

Person extends ActorTipoLongitud máximaDescripciónObligatorio
NifString255 caracteresNif 
NameString255 caracteresNombreNo
Surname1String255 caracteresPrimer apellidoNo
Surname2String255 caracteresSegundo apellidoNo
MailString255 caracteresCorreoNo
AddressString255 caracteresDirecciónNo


Organism extends ActorTipoLongitud máximaDescripciónObligatorio
CodeString255 caracteresCódigo del organismo
NameString255 caracteresDescripción del organismo


Company extends ActorTipoLongitud máximaDescripciónObligatorio
CifString255 caracteresCif
NameString255 caracteresNombre
UndefinedActor extends ActorTipoLongitud máximaDescripciónObligatorio
NOTA: En métodos en los que se cree un asiento registral, solamente se debería utilizar este tipo UndefinedActor para el Sender. Por ejemplo, en un caso en el que el interesado es menor, el Sender (el menor) sería de tipo UndefinedActor y el representante del menor  (SenderAgent) que presenta el documento sería de tipo Person.
codeString255 caracteresCódigo
nameString255 caracteresNombre

1.1.6.3.- Parámetros de respuesta

NombreTipoDescripción
idStringNúmero de registro correspondiente al asiento registral realizado
receiptReceiptContenido del documento de justificante de asiento (fichero PDF, XML, etc.) codificado en Base64 y firmado electrónicamente por el sistema telemático
processTimeDateFecha y hora de presentación, primer día hábil desde el alta (pudiendo coincidir), en Registro Telemático

1.1.6.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.
senderSi el asiento es de salida, el sender debe ser de tipo organism y valor param.info.organism
receiverSi el asiento es de entrada, el receiver debe ser de tipo organism y valor info.organism
info.organismSe valida que exista el organismo
info.registerNo es obligatorio ni se tiene en cuenta, será eliminado en un futuro
info.processTypeSe valida que exista el tipo de procedimiento.
org_code_list_reg_inEs un alfanumérico, código de registro , son los organismos de registro de entrada asociados al procedimiento. Si no aparece no esta ligado a ningún organismo en concreto este caso se permite registrar en cualquier organismo. Si aparece el atributo y esta ligado a un organismo concreto de la estructura de organismos se comprueba que el organismo indicado en el atributo coincida con el organismo contra el que se quiere registrar.
org_code_list_reg_outEs un alfanumérico, código de registro , son los organismos de registro de salida asociados al procedimiento. Si no aparece no esta ligado a ningún organismo en concreto este caso se permite registrar en cualquier organismo.
Si aparece el atributo y esta ligado a un organismo concreto de la estructura de organismos se comprueba que el organismo indicado en el atributo coincida con el organismo contra el que se quiere registrar.
specificData[SRTClientConstants.SPECIFIC_DATA_NAME_TYPE_REGISTER]El código de registro debe ser verificable. Puede tener los valores “I” para registro interno o “E” para registro externo.

1.1.6.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.1.6.6.- Ejemplo de invocación

Ejemplo de invocación
ResultSendEntry resultSendEntry = new ResultSendEntry ();
ParamSendEntry paramSendEntry = new ParamSendEntry();
Info info = new Info();
Request request = new Request();
Person receiver = new Person();
Actor senderAgent = new Actor();
// Asunto del Entry
info.setSubject("Asunto");
// Código de Organismo, es un atributo que el integrador deberá pedir
al responsable funcional que le ha solicitado la aplicación
info.setOrganism("ORGXXXXX");
// Tipo de Entry (Entrada(0)/Salida(1))
info.setRequestType("1");
// Fecha de creación del Entry
Calendar requestTime = Calendar.getInstance();
info.setRequestTime(requestTime);
// Código de Procedimiento, es un atributo que el integrador deberá
pedir al responsable funcional que le ha solicitado la aplicación
info.setProcessType("tramite_pruebas");
// Fichero a enviar
byte[] arrayFile = FileCopyUtils.copyToByteArray(new File("URL
Fichero"));
String fileSoli = BASE64Encoder.encode(arrayFile);
// Firma del fichero a enviar
byte[] arraySign = FileCopyUtils.copyToByteArray(new File("URL
Firma"));
String detachedSignature = BASE64Encoder.encode(arraySign);
// Formato del fichero
request.setMimeType("Formato");
// Fichero
request.setRequest(fileSoli);
// Nombre del fichero
request.setFileName("Nombre.Extension");
// Firma
request.setDetachedSignature(detachedSignature);
// Formato de Firma
request.setFormatSignature("Formato Firma");
// Organismo Emisor
Organism sender = new Organism("ORGXXXXX", "Nombre Organismo");
// Datos del Emisor
senderAgent = new Person("NIF/CIF","Name","Surname1","Surname2", "Email","Address");
// Datos del Destinatario
receiver.setAddress("Address");
receiver.setGivenName("Name");
receiver.setMail("Email");
receiver.setNif("NIF/CIF");
receiver.setSurname1("surname1");
receiver.setSurname2("surname2");
Actor[] receiverList = new Actor[1];
receiverList[0] = (Actor)receiver;
// Datos especificos
Data[] dataList = new Data[2];
dataList[0] = new Data("Name1","Value1");
dataList[1] = new Data("Name2","Value2");
paramSendEntry.setInfo(info);
paramSendEntry.setRequest(request);
paramSendEntry.setSender(sender);
paramSendEntry.setReceiver(receiverList);
paramSendEntry.setSpecificData(dataList);
paramSendEntry.setSenderAgent (senderAgent);
paramSendEntry.setInvokingId(null);
// Fichero Adjunto
FileDataSource dataSource = new FileDataSource(new File("URLAdjunto"));
DataHandler file = new DataHandler(dataSource);
FileInfo fileInfo = new FileInfo();
// Nombre del Fichero Adjunto
fileInfo.setName("Nombre.Extension");
// Descripción del Fichero Adjunto
fileInfo.setDescription ("testing document");
// Tamaño del Fichero Adjunto
fileInfo.setFileSize(new Long(dataSource.getFile().length()));
// Formato del Fichero Adjunto
fileInfo.setMimeType("Formato");
resultSendEntry = entryClient.sendEntry(paramSendEntry, fileInfo, file);

1.1.7.- Método 'sendFullEntry'

Alta de asiento registral. Permite hacerlo tanto con ficheros adjuntos (bytes), que es la forma no recomendada, como mediante la integración a través de CCSV (la recomendada y descrita en el apartado ANEXO I:PROCESO DE INTEGRACIÓN MEDIANTE CCSV)

 Más detalles...

1.1.7.1.- Signatura

ResultSendFullEntry sendFullEntry(String idApplication,ParamSendFullEntry param, FileInfo fileInfo, DataHandler file) throws RemoteException, SRTException

1.1.7.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
infoInfo-Información básica y común
requestPromoterRequestPromoter-Datos del PromotorNo
senderActor-Interesado que envía el asiento
senderAgentActor-Representante del interesado que envía el asiento, obligatorio si asiento de salidaNo/Sí
receiverActor-Destinatario al que va dirigido el asiento
receiverAgentActor-Representante del destinatario al que va dirigido el asientoNo
specificDataData[]

Clave → 255 caracteres

Valor → 255 caracteres

Datos específicos asociadosNo
invokingIdString255 caracteresIdentificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.No
fileInfoFileInfo-Datos del fichero adjuntoNo
attachmentDataHandler-Flujo de datos (stream) para la transmisión de forma eficiente del fichero adjunto desde la aplicación invocante al sistema telemáticoNo
InfoTipoLongitud máximaDescripciónObligatorio
subjectString255 caracteresAsunto
reportCodeString255 caracteresCódigo de informeNo
requestTypeInteger1Tipo de petición (0 = entrada y 1 = salida)
requestTimeCalendar-Fecha de presentaciónNo
processTimeCalendar-Fecha de registroNo
organismString255 caracteresCódigo de organismo
registerString255 caracteresTipo de registro (I = Interno y E = externo)No
processTypeString255 caracteresCódigo de procedimiento
RequestPromoterTipoLongitud máximaDescripciónObligatorio
Promoter
Promoter/identifierNumberString255 caracteresNúmero de identificación
Promoter/nameString255 caracteresNombre
Promoter/surname1String255 caracteresPrimer apellidoNo
Promoter/surname2String255 caracteresSegundo apellidoNo
FileInfoTipoLongitud máximaDescripciónObligatorio
nameString255 caracteresNombre del archivo
fileSizeLong19 dígitosTamaño del archivoNo
descriptionString255 caracteresDescripción del archivo
detachedSignatureString-Firma del archivo en base64
formatSignatureLong19 dígitosFormato de la firma
mimeTypeString255 caracteresTipo de archivo

El emisor (Sender), representante del emisor (SenderAgent), receptor/es (Receivers) y representante del receptor(ReceiverAgent) pueden ser de tipo Person, Organism, Company y UndefinedActor

Solamente se debería utilizar UndefinedActor para el Sender.

Person extends ActorTipoLongitud máximaDescripciónObligatorio
NifString255 caracteresNif 
NameString255 caracteresNombreNo
Surname1String255 caracteresPrimer apellidoNo
Surname2String255 caracteresSegundo apellidoNo
MailString255 caracteresCorreoNo
AddressString255 caracteresDirecciónNo


Organism extends ActorTipoLongitud máximaDescripciónObligatorio
CodeString255 caracteresCódigo del organismo
NameString255 caracteresDescripción del organismo


Company extends ActorTipoLongitud máximaDescripciónObligatorio
CifString255 caracteresCif
NameString255 caracteresNombre
UndefinedActor extends ActorTipoLongitud máximaDescripciónObligatorio
NOTA: En métodos en los que se cree un asiento registral, solamente se debería utilizar este tipo UndefinedActor para el Sender. Por ejemplo, en un caso en el que el interesado es menor, el Sender (el menor) sería de tipo UndefinedActor y el representante del menor  (SenderAgent) que presenta el documento sería de tipo Person.
codeString255 caracteresCódigo
nameString255 caracteresNombre

1.1.7.3.- Parámetros de respuesta

NombreTipoDescripción
idStringNúmero de registro correspondiente al asiento registral realizado
receiptReceiptContenido del documento de justificante de asiento (fichero PDF, XML, etc.) codificado en Base64 y firmado electrónicamente por el sistema telemático
processTimeDateFecha y hora de presentación, primer día hábil desde el alta (pudiendo coincidir), en Registro Telemático
CSVReceiptStringCSV del recibo (justificante) de alta de asiento registral

1.1.7.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.
senderSi el asiento es de Salida, el sender debe ser de tipo Organism y su valor estar en info.organism
senderAgentPara realizar un registro de salida es necesario identificar al representante
receiverSi el asiento es de Entrada, el receiver debe ser de tipo Organism y su valor estar en info.organism
info.organismSe valida que exista el organismo en SIU, debe coincidir con el receiver en los de entrada y con el sender en los de salida
info.registerNo es obligatorio ni se tiene en cuenta, será eliminado en un futuro
info.processTypeSe valida que exista el tipo de procedimiento y que se pueda registrar en el organismo indicado
specificData[SRTClientConstants.SPECIFIC_DATA_NAME_TYPE_REGISTER]El código de registro debe ser verificable. Puede tener los valores “I” para registro interno o “E” para registro externo. Para crear un asiento en un libro de registro interno es necesario que el organismo asociado al asiento tenga como dato extendido "InternalRegister" igual a libro de registro usado para hacer los asientos internos.
specificData[SRTClientConstants.SPECIFIC_DATA_NAME_CSV_REQUEST]El estado de la solicitud enviada debe ser de tipo original o copia, no se permite registrar si el estado del documento en CCSV es de otro tipo.
specificData[SRTClientConstants.SPECIFIC_DATA_NAME_CSV_ATTACHED]El estado de los adjuntos enviados debe ser de tipo original o copia, no se permite registrar si el estado de alguno de los documentos en CCSV es de otro tipo
org_code_list_reg_inEs un alfanumérico, código de registro , son los organismos de registro de entrada asociados al procedimiento.
Si no aparece no esta ligado a ningún organismo en concreto este caso se permite registrar en cualquier organismo.
Si aparece el atributo y esta ligado a un organismo concreto de la estructura de organismos se comprueba que el organismo indicado en el atributo coincida con el organismo contra el que se quiere registrar.
org_code_list_reg_outEs un alfanumérico, código de registro , son los organismos de registro de salida asociados al procedimiento.
Si no aparece no esta ligado a ningún organismo en concreto este caso se permite registrar en cualquier organismo.
Si aparece el atributo y esta ligado a un organismo concreto de la estructura de organismos se comprueba que el organismo indicado en el atributo coincida con el organismo contra el que se quiere registrar.

1.1.7.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.1.7.6.- Ejemplo de invocación

Ejemplo de invocación
// IMPORTANTE: Para más información ver anexo I
ResultSendFullEntry resultSendFullEntry = new ResultSendFullEntry ();
ParamSendFullEntry paramSendFullEntry = new ParamSendFullEntry();
Info info = new Info();
// Asunto del Entry
info.setSubject("Asunto");
// Código de Organismo, es un atributo que el integrador deberá pedir
al responsable funcional que le ha solicitado la aplicación
info.setOrganism("ORGXXXXX");
// Tipo de Entry (Entrada(0)/Salida(1))
info.setRequestType(SRTClientConstants.REQUEST_TYPE_xxx);
// Fecha de creación del Entry
Calendar requestTime = Calendar.getInstance();
info.setRequestTime(requestTime);
// Código de Procedimiento, es un atributo que el integrador deberá
pedir al responsable funcional que le ha solicitado la aplicación
info.setProcessType("xxx");
// Fichero a enviar
byte[] arrayFile = FileCopyUtils.copyToByteArray(new File("URL
Fichero"));
String fileSoli = BASE64Encoder.encode(arrayFile);
// Firma del fichero a enviar
byte[] arraySign = FileCopyUtils.copyToByteArray(new File("URL
Firma"));
String detachedSignature = BASE64Encoder.encode(arraySign);
RequestPromoter request = new RequestPromoter();
//Formato del Documento
request.setMimeType("Formato");
//Documento
request.setRequest(fileSoli);
//Nombre del Documento
request.setFileName("Name");
//Firma
request.setDetachedSignature(detachedSignature);
//Formato de Firma
request.setFormatSignature(SRTClientConstants.SIGN_TYPE_xxx);
//Organismo Emisor
Organism sender = new Organism("ORGXXXXX");
Actor senderAgent = new Actor();
//Datos Emisor
senderAgent = new
Person("NIF/CIF","Name","surmane1","surname2","Email","Adress");
Person receiver = new Person();
//Datos Destinatario
receiver.setAddress("Adress");
receiver.setGivenName("Name");
receiver.setMail("Email");
receiver.setNif("NIF/CIF");
receiver.setSurname1("surname1");
receiver.setSurname2("surname2");
Actor[] receiverList = new Actor[1];
receiverList[0] = (Actor)receiver;
// Datos especificos
Data[] dataList = new Data[3];
dataList[0] = new Data("TypeRegister ", "E");
dataList[1] = new Data("Name2", "Value2");
dataList[2] = new Data(SRTClientConstants.SPECIFIC_DATA_NAME_XXX,"Value3");
paramSendFullEntry.setInfo(info);
paramSendFullEntry.setRequestPromoter(request);
paramSendFullEntry.setSender(sender );
paramSendFullEntry.setReceiver(receiverList);
paramSendFullEntry.setSpecificData(dataList);
paramSendFullEntry.setSenderAgent(senderAgent);
paramSendFullEntry.setInvokingId("NIF");
// Adjunto Firmado
FileDataSource dataSource = new FileDataSource(new File("URLAdjunto"));
DataHandler file = new DataHandler(dataSource);
FileInfo fileInfo = new FileInfo();
// Nombre del Documento
fileInfo.setName("Nombre+"."+Extension");
// Descripción del Documento
fileInfo.setDescription ("Descripcion");
// Tamaño del Documento en bytes
fileInfo.setFileSize("Tamaño");
// Formato del Documento (mime-type)
fileInfo.setMimeType("Formato");
// Formato de Firma
fileInfo.setFormatSignature(SRTClientConstants.SIGN_TYPE_xxx);
resultSendFullEntry = entryClient.sendFullEntry(paramSendFullEntry,fileInfo, file);

1.1.8.- Método 'sendEntryOnlySaveReceipt'

Alta de asiento registral, sin que se almacene la solicitud (bytes) ni sus posibles adjuntos en el Sistema de Registro Telemático. Sólo se almacena en CCSV el fichero del recibo de registro, devolviéndose su contenido a la aplicación invocante. Se describe la integración con este método en ANEXO II: PROCESO DE INTEGRACIÓN MEDIANTE SISTEMA EXTERNO

 Más detalles...

1.1.8.1.- Signatura

public ResultSendEntryOnlySaveReceipt sendEntryOnlySaveReceipt(String idApplication,ParamSendEntryOnlySaveReceipt param) throws SRTException

1.1.8.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
infoInfo-Información básica y común
requestPromoterRequestPromoter-Datos del PromotorNo
senderActor-Interesado que envía el asiento
senderAgentActor-Representante del interesado que envía el asientoNo
receiverActor-Destinatario al que va dirigido el asiento
receiverAgentActor-Representante del destinatario al que va dirigido el asientoNo
specificDataData[]

Clave → 255 caracteres

Valor → 255 caracteres


invokingIdString255 caracteresIdentificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.No
InfoTipoLongitud máximaDescripciónObligatorio
subjectString255 caracteresAsunto
reportCodeString255 caracteresCódigo de informeNo
requestTypeInteger1Tipo de petición (0 = entrada y 1 = salida)
requestTimeCalendar-Fecha de presentaciónNo
processTimeCalendar-Fecha de registroNo
organismString255 caracteresCódigo de organismo
registerString255 caracteresTipo de registro (I = Interno y E = externo)No
processTypeString255 caracteresCódigo de procedimiento
RequestPromoterTipoLongitud máximaDescripciónObligatorio
Promoter
Promoter/identifierNumberString255 caracteresNúmero de identificación
Promoter/nameString255 caracteresNombre
Promoter/surname1String255 caracteresPrimer apellidoNo
Promoter/surname2String255 caracteresSegundo apellidoNo

El emisor (Sender), representante del emisor (SenderAgent), receptor/es (Receivers) y representante del receptor(ReceiverAgent) pueden ser de tipo Person, Organism, Company y UndefinedActor

Solamente se debería utilizar UndefinedActor para el Sender.

Person extends ActorTipoLongitud máximaDescripciónObligatorio
NifString255 caracteresNif 
NameString255 caracteresNombreNo
Surname1String255 caracteresPrimer apellidoNo
Surname2String255 caracteresSegundo apellidoNo
MailString255 caracteresCorreoNo
AddressString255 caracteresDirecciónNo


Organism extends ActorTipoLongitud máximaDescripciónObligatorio
CodeString255 caracteresCódigo del organismo
NameString255 caracteresDescripción del organismo


Company extends ActorTipoLongitud máximaDescripciónObligatorio
CifString255 caracteresCif
NameString255 caracteresNombre
UndefinedActor extends ActorTipoLongitud máximaDescripciónObligatorio
NOTA: En métodos en los que se cree un asiento registral, solamente se debería utilizar este tipo UndefinedActor para el Sender. Por ejemplo, en un caso en el que el interesado es menor, el Sender (el menor) sería de tipo UndefinedActor y el representante del menor  (SenderAgent) que presenta el documento sería de tipo Person.
codeString255 caracteresCódigo
nameString255 caracteresNombre

1.1.8.3.- Parámetros de respuesta

NombreTipoDescripción
idStringNúmero de registro correspondiente al asiento registral realizado
receiptReceiptContenido del documento de justificante de asiento (fichero PDF, XML, etc.) codificado en Base64 y firmado electrónicamente por el sistema telemático
processTimeDateFecha y hora de presentación, primer día hábil desde el alta (pudiendo coincidir), en Registro Telemático
CSVReceiptStringCSV del recibo (justificante) de alta de asiento registral

1.1.8.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.
IdRequestSe valida para que este identificador nunca venga vacío
senderSi el asiento es de salida, el sender debe ser de tipo organism y valor param.info.organism
receiverSi el asiento es de entrada, el receiver debe ser de tipo organism y valor info.organism
info.organismSe valida que exista el organismo
info.registerNo es obligatorio ni se tiene en cuenta, será eliminado en un futuro
info.processTypeSe valida que exista el tipo de procedimiento.
specificData[SRTClientConstants.SPECIFIC_DATA_NAME_TYPE_REGISTER]El código de registro debe ser verificable. Puede tener los valores “I” para registro interno o “E” para registro externo. Para crear un asiento en un libro de registro interno es necesario que el organismo asociado al asiento tenga como dato extendido "InternalRegister" igual a libro de registro usado para hacer los asientos internos.
org_code_list_reg_inEs un alfanumérico, código de registro , son los organismos de registro de entrada asociados al procedimiento.
Si no aparece no esta ligado a ningún organismo en concreto este caso se permite registrar en cualquier organismo.
Si aparece el atributo y esta ligado a un organismo concreto de la estructura de organismos se comprueba que el organismo indicado en el atributo coincida con el organismo contra el que se quiere registrar.
org_code_list_reg_outEs un alfanumérico, código de registro , son los organismos de registro de salida asociados al procedimiento.
Si no aparece no esta ligado a ningún organismo en concreto este caso se permite registrar en cualquier organismo.
Si aparece el atributo y esta ligado a un organismo concreto de la estructura de organismos se comprueba que el organismo indicado en el atributo coincida con el organismo contra el que se quiere registrar.

1.1.8.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.

1.1.8.6.- Ejemplo de invocación

Ejemplo de invocación
ResultSendEntryOnlySaveReceipt resultSendEntryOnlySaveReceipt = new
ResultSendEntryOnlySaveReceipt ();
ParamSendEntryOnlySaveReceipt paramSendEntryOnlySaveReceipt = new
ParamSendEntryOnlySaveReceipt();
//Se rellena el 'Info'
Info info = new Info();
info.setSubject(“Asunto”);
// Código de organismo, es un atributo que el integrador deberá pedir al
responsable funcional que le ha solicitado la aplicación
info.setOrganism(“ORGXXXXX”);
// Tipo de Entry (Entrada(0)/Salida(1))
info.setRequestType(SRTClientConstants.REQUEST_TYPE_INPUT);
Calendar requestTime = Calendar.getInstance();
info.setRequestTime(requestTime);
// Código de procedimiento, es un atributo que el integrador deberá
pedir al responsable funcional que le ha solicitado la aplicación
info.setProcessType(“xxx”);
//Se rellena el 'sender'
Organism sender = new Organism(“ORGXXXXX”);
//Se rellena el 'senderAgent'
Actor senderAgent = new Actor();
senderAgent = new Person(“NIF/CIF”, “Name”, “surmane1”, “surname2”,“Email”, “Adress”);
//Se rellena el 'receiver'
Actor[] receiver = new Actor[1];
Person person = new Person();
person.setAddress (“Adress”);
person.setGivenName(“Name”);
person.setMail(“Email”);
person.setNif(“NIF/CIF”);
person.setSurname1(“surmane1”);
person.setSurname2(“surname2”);
receiver[0] = person;
//Se rellena el 'dataSpecific'
Data[] dataList = new Data[3];
dataList[0] = new Data("TypeRegister ", "E");
dataList[1] = new Data("Name2", "Value2");
dataList[2] = new Data(SRTClientConstants.SPECIFIC_DATA_NAME_XXX,"Value3");
//Se rellena el 'request'
RequestPromoter request = new RequestPromoter();
request.setMimeType (“Formato”);
request.setRequest (null);
request.setFileName (“Name”);
request.setDetachedSignature(null);
request.setFormatSignature (null);
paramSendEntryOnlySaveReceipt.setInfo(info);
paramSendEntryOnlySaveReceipt.setReceiver(receiver);
paramSendEntryOnlySaveReceipt.setSender(sender);
paramSendEntryOnlySaveReceipt.setSpecificData(dataList);
paramSendEntryOnlySaveReceipt.setInvokingId("NIF");
if(sendSenderAgent){
paramSendEntryOnlySaveReceipt.setSenderAgent(senderAgent);
}
paramSendEntryOnlySaveReceipt.setRequestPromoter(request);
resultSendEntryOnlySaveReceipt = entryClient.sendEntryOnlySaveReceipt(paramSendEntryOnlySaveReceipt);
return resultSendEntryOnlySaveReceipt;

1.1.9.- Método 'sendEntryByFileRef'

Alta de asiento registral, desde tecnologías non-Java, mediante SwA. (Método DEPRECADO) Se recomienda utilizar el método sendFullEntry (apartado 1.1.7)

 Más detalles...

1.1.9.1.- Signatura

ResultSendEntry sendEntryByFileRef(String idApplication,ParamSendEntry param, FileInfo fileInfo, String fileRef) throws RemoteException, SRTException

1.1.9.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
infoInfo-Información básica y común
requestRequest-Contenido del documento de solicitud de alta de asiento (fichero PDF, XML, etc.) codificado en Base64
senderActor-Interesado que envía el asiento
senderAgentActor-Representante del interesado que envía el asientoNo
receiverActor-Destinatario al que va dirigido el asiento
receiverAgentActor-Representante del destinatario al que va dirigido el asientoNo
specificDataData[]

Clave → 255 caracteres

Valor → 255 caracteres

Datos específicos asociadosNo
invokingIdString-Identificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.No
fileInfoFileInfo-Datos del fichero adjunto
fileRefString255 caracteresIdentificador (“id”) del contenido del fichero dentro de la petición SOAP de invocación SI 5.5.4.3 ResultSendEntry
InfoTipoLongitud máximaDescripciónObligatorio
subjectString255 caracteresAsunto
reportCodeString255 caracteresCódigo de informeNo
requestTypeInteger1Tipo de petición (0 = entrada y 1 = salida)
requestTimeCalendar-Fecha de presentaciónNo
processTimeCalendar-Fecha de registroNo
organismString255 caracteresCódigo de organismo
registerString255 caracteresTipo de registro (I = Interno y E = externo)No
processTypeString255 caracteresCódigo de procedimiento
RequestTipoLongitud máximaDescripciónObligatorio
requestString-Bytes del archivo en base64
fileNameString255 caracteresNombre del archivo
detachedSignatureString-Firma del archivo en base64
formatSignatureLong19 dígitosFormato de la firma
mimeTypeString255 caracteresTipo de archivo
FileInfoTipoLongitud máximaDescripciónObligatorio
nameString255 caracteresNombre del archivo
fileSizeLong19 dígitosTamaño del archivo
descriptionString255 caracteresDescripción del archivo
detachedSignatureString-Firma del archivo en base64
formatSignatureLong19 dígitosFormato de la firma
mimeTypeString255 caracteresTipo de archivo

El emisor (Sender), representante del emisor (SenderAgent), receptor/es (Receivers) y representante del receptor(ReceiverAgent) pueden ser de tipo Person, Organism, Company y UndefinedActor

Solamente se debería utilizar UndefinedActor para el Sender.

Person extends ActorTipoLongitud máximaDescripciónObligatorio
NifString255 caracteresNif 
NameString255 caracteresNombreNo
Surname1String255 caracteresPrimer apellidoNo
Surname2String255 caracteresSegundo apellidoNo
MailString255 caracteresCorreoNo
AddressString255 caracteresDirecciónNo


Organism extends ActorTipoLongitud máximaDescripciónObligatorio
CodeString255 caracteresCódigo del organismo
NameString255 caracteresDescripción del organismo


Company extends ActorTipoLongitud máximaDescripciónObligatorio
CifString255 caracteresCif
NameString255 caracteresNombre
UndefinedActor extends ActorTipoLongitud máximaDescripciónObligatorio
NOTA: En métodos en los que se cree un asiento registral, solamente se debería utilizar este tipo UndefinedActor para el Sender. Por ejemplo, en un caso en el que el interesado es menor, el Sender (el menor) sería de tipo UndefinedActor y el representante del menor  (SenderAgent) que presenta el documento sería de tipo Person.
codeString255 caracteresCódigo
nameString255 caracteresNombre

1.1.9.3.- Parámetros de respuesta

NombreTipoDescripción
idStringNúmero de registro correspondiente al asiento registral realizado
receiptReceiptContenido del documento de justificante de asiento (fichero PDF, XML, etc.) codificado en Base64 y firmado electrónicamente por el sistema telemático
processTimeDateFecha y hora de presentación, primer día hábil desde el alta(pudiendo coincidir), en Registro Telemático

1.1.9.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.
senderSi el asiento es de salida, el sender debe ser de tipo organism y valor param.info.organism
receiverSi el asiento es de entrada, el receiver debe ser de tipo organism y valor info.organism
info.organismSe valida que exista el organismo en SIU
info.registerNo es obligatorio ni se tiene en cuenta, será eliminado en un futuro
info.processTypeSe valida que exista el tipo de procedimiento y que se pueda registrar en él organismo indicado
specificData[SRTClientConstants.SPECIFIC_DATA_NAME_TYPE_REGISTER]El código de registro debe ser verificable. Puede tener los valores “I” para registro interno o “E” para registro externo. Para crear un asiento en un libro de registro interno es necesario que el organismo asociado al asiento tenga como dato extendido "InternalRegister" igual a libro de registro usado para hacer los asientos internos.
org_code_list_reg_inEs un alfanumérico, código de registro , son los organismos de registro de entrada asociados al procedimiento.
Si no aparece no esta ligado a ningún organismo en concreto este caso se permite registrar en cualquier organismo.
Si aparece el atributo y esta ligado a un organismo concreto de la estructura de organismos se comprueba que el organismo indicado en el atributo coincida con el organismo contra el que se quiere registrar.
org_code_list_reg_outEs un alfanumérico, código de registro , son los organismos de registro de salida asociados al procedimiento.
Si no aparece no esta ligado a ningún organismo en concreto este caso se permite registrar en cualquier organismo.
Si aparece el atributo y esta ligado a un organismo concreto de la estructura de organismos se comprueba que el organismo indicado en el atributo coincida con el organismo contra el que se quiere registrar.

1.1.9.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.1.9.6.- Ejemplo de invocación

Ejemplo de invocación
ResultSendEntry resultSendEntry = new ResultSendEntry ();
ParamSendEntry paramSendEntry = new ParamSendEntry();
ResultSendEntry resultSendEntry = new ResultSendEntry ();
ParamSendEntry paramSendEntry = new ParamSendEntry();
Info info = new Info();
Request request = new Request();
Person receiver = new Person();
Actor senderAgent = new Actor();
// Asunto del Entry
info.setSubject("Asunto");
// Código de organismo, es un atributo que el integrador deberá pedir
al responsable funcional que le ha solicitado la aplicación
info.setOrganism("ORGXXXXX");
// Tipo de Entry (Entrada(0)/Salida(1))
info.setRequestType(SRTClientConstants.REQUEST_TYPE_INPUT);
// Fecha de creación del Entry
Calendar requestTime = Calendar.getInstance();
info.setRequestTime(requestTime);
// Código de procedimiento, es un atributo que el integrador deberá
pedir al responsable funcional que le ha solicitado la aplicación
info.setProcessType("xxx");
// Fichero a enviar
byte[] arrayFile = FileCopyUtils.copyToByteArray(new File("URLFichero"));
String fileSoli = BASE64Encoder.encode(arrayFile);
// Firma del fichero a enviar
byte[] arraySign = FileCopyUtils.copyToByteArray(new File("URL
Firma"));
String detachedSignature = BASE64Encoder.encode(arraySign);
// Formato del fichero
request.setMimeType("Formato");
// Fichero
request.setRequest(fileSoli);
// Nombre del fichero
request.setFileName("Nombre.Extension");
// Firma
request.setDetachedSignature(detachedSignature);
// Formato de Firma
request.setFormatSignature("Formato Firma");
// Organismo Emisor
Organism sender = new Organism("ORGXXXXX");
// Datos del Emisor
senderAgent = new Person("NIF/CIF","Name","Surname1","Surname2","Email","Address");
// Datos del Destinatario
receiver.setAddress("Address");
receiver.setGivenName("Name");
receiver.setMail("Email");
receiver.setNif("NIF/CIF");
receiver.setSurname1("surname1");
receiver.setSurname2("surname2");
Actor[] receiverList = new Actor[1];
receiverList[0] = (Actor)receiver;
// Datos específicos
Data[] dataList = new Data[2];
dataList[0] = new Data("TypeRegister","E");
dataList[1] = new Data("Name2","Value2");
// Archivo Adjunto
File file = new File("URL Adjunto");
FileInfo fileInfo = new FileInfo();
// Nombre Archivo Adjunto
fileInfo.setName("Nombre.Extension");
// Descripción Archivo Adjunto
fileInfo.setDescription("testing document");
// Tamaño Archivo Adjunto
fileInfo.setFileSize(new Long(file.length()));
// Formato Archivo Adjunto
fileInfo.setMimeType("Formato");
paramSendEntry.setInfo(info);
paramSendEntry.setRequest(request);
paramSendEntry.setSender(sender);
paramSendEntry.setReceiver(receiverList);
paramSendEntry.setSpecificData(dataList);
paramSendEntry.setSenderAgent (senderAgent);
paramSendEntry.setInvokingId(null);
resultSendEntry = entryClient.sendEntryByFileRef(paramSendEntry,fileInfo, file);

1.2.- Servicio AdminService

Realiza la consolidación de los asientos registrales entre el sistema telemático y el sistema físico de registro externo y perteneciente a la organización. Para ello se asocian los números de libro de registro de ambos sistemas. En los siguientes apartados se especifican tanto los tipos de datos utilizados, como los métodos que la componen, detallando los parámetros y mostrando ejemplos de uso.

1.2.1.- Método 'consolidateEntries'

 Click here to expand...

1.2.1.1.- Signatura

ResultConsolidateEntries consolidateEntries(String idApplication, ParamConsolidateEntries param)throws RemoteException, SRTException

1.2.1.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
registerIdString-Identificador del libro de registro en el que se va a realizar la consolidación de los asientos.
consolidationListEntryConsolidation[]-Listado de consolidaciones de los asientos.

1.2.1.3.- Parámetros de respuesta

NombreTipoDescripción
consolidationResultEntryConsolidatrionResult[]Listado de resultados de la consolidación de las entradas.

1.2.1.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.

1.2.1.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.2.1.6.- Ejemplo de invocación

Ejemplo de invocación
ResultConsolidateEntries resultConsolidateEntries = new
ResultConsolidateEntries();
ParamConsolidateEntries param = new ParamConsolidateEntries();
EntryConsolidation[] consolidationList = new EntryConsolidation[1];
EntryConsolidation entryConsolidation = new EntryConsolidation();
// Identificador de consolidación
entryConsolidation.setConsolidatedId("PRE_XXXXXXXXX/SUF");
// Identificador de asiento
entryConsolidation.setId("PRE_XXXXXXXXX/SUF");
// Tipo: entrada(0), salida(1)
entryConsolidation.setRequestType("0");
consolidationList[0] = entryConsolidation;
param.setConsolidationList(consolidationList);
// Identificador del libro de registro
param.setRegisterId("REG_GA");
resultConsolidateEntries = adminClient.consolidateEntries(param);

1.3.- Servicio DraftService

1.3.1.- Método 'createDraft'

Método obsoleto. Para nuevas integraciones se recomienda utilizar el método sendFullEntry de EntryService (apartado 1.1.7)

Alta de borrador sobre el cual se le asociarán los ficheros adjuntos, con bytes.

 Más detalles...

1.3.1.1.- Signatura

ResultCreateDraft createDraft(String idApplication,ParamCreateDraft param) throws RemoteException, SRTException

1.3.1.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
infoInfo-Información básica para poder crear el borrador.
senderActor-Interesado que envía el borrador.
senderAgentActor-Representante del interesado que envía el borrador.No
receiverActor[]-Destinatarios a los que va dirigido el borrador.
receiverAgentActor-Representante de los destinatarios a los que va dirigido el borrador.No
specificDataData[]

Clave → 255 caracteres

Valor → 255 caracteres


InfoTipoLongitud máximaDescripciónObligatorio
subjectString255 caracteresAsunto
reportCodeString255 caracteresCódigo de informeNo
requestTypeInteger1Tipo de petición (0 = entrada y 1 = salida)
requestTimeCalendar-Fecha de presentaciónNo
processTimeCalendar-Fecha de registroNo
organismString255 caracteresCódigo de organismo
registerString255 caracteresTipo de registro (I = Interno y E = externo)No
processTypeString255 caracteresCódigo de procedimiento

El emisor (Sender), representante del emisor (SenderAgent), receptor/es (Receivers) y representante del receptor(ReceiverAgent) pueden ser de tipo Person, Organism, Company y UndefinedActor

Solamente se debería utilizar UndefinedActor para el Sender.

Person extends ActorTipoLongitud máximaDescripciónObligatorio
NifString255 caracteresNif 
NameString255 caracteresNombreNo
Surname1String255 caracteresPrimer apellidoNo
Surname2String255 caracteresSegundo apellidoNo
MailString255 caracteresCorreoNo
AddressString255 caracteresDirecciónNo


Organism extends ActorTipoLongitud máximaDescripciónObligatorio
CodeString255 caracteresCódigo del organismo
NameString255 caracteresDescripción del organismo


Company extends ActorTipoLongitud máximaDescripciónObligatorio
CifString255 caracteresCif
NameString255 caracteresNombre
UndefinedActor extends ActorTipoLongitud máximaDescripciónObligatorio
NOTA: En métodos en los que se cree un asiento registral o borrador, solamente se debería utilizar este tipo UndefinedActor para el Sender. Por ejemplo, en un caso en el que el interesado es menor, el Sender (el menor) sería de tipo UndefinedActor y el representante del menor  (SenderAgent) que presenta el documento sería de tipo Person.
codeString255 caracteresCódigo
nameString255 caracteresNombre

1.3.1.3.- Parámetros de respuesta

NombreTipoDescripción
idDraftStringIdentificador del borrador creado.

1.3.1.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.
senderSi el asiento es de salida, el sender debe ser de tipo Organism y su valor coincide con info.organism
receiverSi el asiento es de entrada, el receiver[0] debe ser el único receptor, debe ser de tipo Organism y coincidir con el valor info.organism. Si el asiento es de salida puede tener varios receptores.
receiverAgentSi el asiento es de salida debe ser nulo.
info.registerNo es obligatorio ni se tiene en cuenta, será eliminado en un futuro
info.processTypeSe valida que exista el tipo de procedimiento. Si es nulo, se inicia a “Tramite_Pruebas”
specificData[SRTClientConstants.SPECIFIC_DATA_NAME_TYPE_REGISTER]El código de registro debe ser verificable. Puede tener los valores “I” para registro interno o “E” para registro externo. Para crear un asiento en un libro de registro interno es necesario que el organismo asociado al asiento tenga como dato extendido "InternalRegister" igual a libro de registro usado para hacer los asientos internos.
info.requestTimeSe inicializa durante el proceso de creación del borrador.
org_code_list_reg_inEs un alfanumérico, código de registro , son los organismos de registro de entrada asociados al procedimiento. Si no aparece no esta ligado a ningún organismo en concreto este caso se permite registrar en cualquier organismo. Si aparece el atributo y esta ligado a un organismo concreto de la estructura de organismos se comprueba que el organismo indicado en el atributo coincida con el organismo contra el que se quiere registrar.
org_code_list_reg_outEs un alfanumérico, código de registro , son los organismos de registro de salida asociados al procedimiento. Si no aparece no esta ligado a ningún organismo en concreto este caso se permite registrar en cualquier organismo. Si aparece el atributo y esta ligado a un organismo concreto de la estructura de organismos se comprueba que el organismo indicado en el atributo coincida con el organismo contra el que se quiere registrar.

1.3.1.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.3.1.6.- Ejemplo de invocación

Ejemplo de invocación
ParamCreateDraft paramCreateDraft = new ParamCreateDraft();
ResultCreateDraft resultCreateDraft = new ResultCreateDraft();
Info info = new Info();
//Asunto del Draft
info.setSubject("Asunto");
//Código de organismo, es un atributo que el integrador deberá pedir
al responsable funcional que le ha solicitado la aplicación
info.setOrganism("ORGXXXXX");
//Fecha de creación del draft
Calendar requestTime = Calendar.getInstance();
info.setRequestTime(requestTime);
//Código de procedimiento, es un atributo que el integrador deberá
pedir al responsable funcional que le ha solicitado la aplicación
info.setProcessType("tramite_pruebas");
// Tipo: entrada(0), salida(1)
info.setRequestType("1");
// Creamos el organismo emisor
Organism sender = new Organism("ORGXXXXX", "Nombre del Organismo");
// Creamos la persona emisora
Actor senderAgent = new Actor();
senderAgent = new Person("NIF/CIF","Name","Surname1","Surname2",
"Email","Address");
// Creamos la persona destinataria
Actor[] receiver = new Actor[1];
Person person = new Person();
person.setAddress ("Address");
person.setGivenName("Name");
person.setMail("Email");
person.setNif("NIF/CIF");
person.setSurname1("surname1" );
person.setSurname2("surname2" );
receiver[0] = person;
// Creamos los datos especificos
Data[] data = new Data[1];
data[0] = new Data("TypeRegister","E");
paramCreateDraft.setInfo(info);
paramCreateDraft.setSender(sender);
paramCreateDraft.setSpecificData(data);
Titulo: Manual Integración
SRT v3.12
Página 33 de 129
Construyendo Europa desde Aragón
paramCreateDraft.setReceiver(receiver);
paramCreateDraft.setSenderAgent(senderAgent);
resultCreateDraft = draftClient.createDraft(paramCreateDraft);

1.3.2.- Método 'addAttachment'

Método obsoleto. Para nuevas integraciones se recomienda utilizar el método sendFullEntry de EntryService (apartado 1.1.7)

Añadir un fichero adjunto (bytes) al borrador

 Más detalles...

1.3.2.1.- Signatura

ResultAddAttachment addAttachment(String idApplication, ParamAddAttachment param, DataHandler file) throws RemoteException,SRTException

1.3.2.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
idDraftString-Identificador del borrador al que se desea adjuntar el fichero.
fileInfoFileInfo-Datos del fichero adjuntoNo
invokingIdString255 caracteresIdentificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.No
FileInfoTipoLongitud máximaDescripciónObligatorio
nameString255 caracteresNombre del archivo
fileSizeLong19 dígitosTamaño del archivo
descriptionString255 caracteresDescripción del archivo
detachedSignatureString-Firma del archivo en base64
formatSignatureLong19 dígitosFormato de la firma
mimeTypeString255 caracteresTipo de archivo

1.3.2.3.- Parámetros de respuesta

NombreTipoDescripción
attachmentStringIdentificador del fichero subido

1.3.2.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.
fileInfoSe comprueba que info no sea nulo
fileInfo.nameSe comprueba que name no sea una cadena vacía
fileInfo.nameSe valida que name contenga la extensión del archivo
fileInfo.mimeTypeSe valida que el mimeType o esté vacío

1.3.2.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.3.2.6.- Ejemplo de invocación

Ejemplo de invocación
ParamAddAttachment paramAddAttachment = new ParamAddAttachment();
ResultAddAttachment resultAddAttachment = new ResultAddAttachment ();
FileInfo fileInfo = new FileInfo();
// URL del fichero a adjuntar
FileDataSource dataSource = new FileDataSource(new File("Adjunto"));
DataHandler file = new DataHandler(dataSource);
// URL de la firma del fichero a adjuntar
byte[] arraySign = FileCopyUtils.copyToByteArray(new File("Firma"));
String detachedSignature = BASE64Encoder.encode(arraySign);
// Nombre del fichero
fileInfo.setName("fichero.extension");
// Descripción del fichero
fileInfo.setDescription ("testing document");
// Formato del documento
fileInfo.setMimeType("text/doc");
// Firma del documento
fileInfo.setDetachedSignature (detachedSignature);
// Tamaño del documento
fileInfo.setFileSize(new Long(dataSource.getFile().length()));
// Tipo de Firma
fileInfo.setFormatSignature("Formato de Firma");
// Identificador del Draft
paramAddAttachment.setIdDraft("idDraft");
paramAddAttachment.setFileInfo(fileInfo);
paramAddAttachment.setInvokingId(null);
resultAddAttachment = draftClient.addAttachment(paramAddAttachment, file);

1.3.3.- Método 'addAttachmentByFileRef'

Método obsoleto. Para nuevas integraciones se recomienda utilizar el método sendFullEntry de EntryService (apartado 1.1.7)

Añadir un fichero adjunto (bytes) al borrador, desde tecnologías non-Java, mediante SwA (Service with Attachment)

 Más detalles...

1.3.3.1.- Signatura

ResultAddAttachment addAttachmentByFileRef(String idApplication, ParamAddAttachment param, String fileRef) throws RemoteException, InvalidDataException, SRTException

1.3.3.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
idDraftString-Identificador del borrador al que se desea adjuntar el fichero.
fileRefFileInfo-Referencia al adjuntoNo
invokingIdString255 caracteresIdentificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.No
fileRefString255 caracteresFichero del adjunto SI
FileInfoTipoLongitud máximaDescripciónObligatorio
nameString255 caracteresNombre del archivo
fileSizeLong19 dígitosTamaño del archivo
descriptionString255 caracteresDescripción del archivo
detachedSignatureString-Firma del archivo en base64
formatSignatureLong19 dígitosFormato de la firma
mimeTypeString255 caracteresTipo de archivo

1.3.3.3.- Parámetros de respuesta

NombreTipoDescripción
idAttachmentStringIdentificador del fichero subido

1.3.3.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.
fileInfoSe comprueba que info no sea nulo
fileInfo.nameSe comprueba que name no sea una cadena vacía
fileInfo.nameSe valida que name contenga la extensión del archivo
fileInfo.mimeTypeSe valida que el mimeType o esté vacío
contentSe comprueba que content sea distinto de null

1.3.3.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.3.3.6.- Ejemplo de invocación

Ejemplo de invocación
ParamAddAttachment paramAddAttachment = new ParamAddAttachment();
ResultAddAttachment resultAddAttachment = new ResultAddAttachment ();
FileInfo fileInfo= new FileInfo();
// URL del fichero a adjuntar
File file = new File("Adjunto");
// URL de la firma del fichero a adjuntar
byte[] arraySign = FileCopyUtils.copyToByteArray("Firma");
String detachedSignature = BASE64Encoder.encode(arraySign);
/ Nombre del fichero
fileInfo.setName("fichero.extension");
// Descripción del fichero
fileInfo.setDescription ("testing document");
// Formato del documento
fileInfo.setMimeType("text/doc");
// Firma del documento
fileInfo.setDetachedSignature (detachedSignature);
// Tamaño del documento
fileInfo.setFileSize(new Long(dataSource.getFile().length()));
// Tipo de Firma
fileInfo.setFormatSignature("Formato de Firma");
// Identificador del Draft
paramAddAttachment.setIdDraft("idDraft");
paramAddAttachment.setFileInfo(fileInfo);
paramAddAttachment.setInvokingId(null);
resultAddAttachment = draftClient.addAttachmentByFileRef(paramAddAttachment,file);

1.3.4.- Método 'sendDraft'

Método obsoleto. Para nuevas integraciones se recomienda utilizar el método sendFullEntry de EntryService (apartado 1.1.7)

Finalización del borrador, alta del fichero de solicitud (bytes) y alta del asiento registral correspondiente.

 Más detalles...


1.3.4.1.- Signatura

ResultSendDraft sendDraft(String idApplication, ParamSendDraft param) throws RemoteException, InternalCoreException, SRTException

1.3.4.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
idDraftString-Identificador del borrador
requestRequest-Contenido del documento de solicitud de alta de asiento (fichero PDF, XML, etc.) codificado en Base64No
invokingIdString255 caracteresIdentificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.No
RequestTipoLongitud máximaDescripciónObligatorio
requestString-Bytes del archivo en base64
fileNameString255 caracteresNombre del archivo
detachedSignatureString-Firma del archivo en base64
formatSignatureLong19 dígitosFormato de la firma
mimeTypeString255 caracteresTipo de archivo

1.3.4.3.- Parámetros de respuesta

NombreTipoDescripción
idEntryStringNúmero de registro correspondiente al asiento registral realizado
receiptStringContenido del documento de justificante de asiento (fichero PDF, XML, etc.) codificado en Base64 y firmado  electrónicamente por el sistema telemático
processTimeCalendarFecha y hora de presentación, primer día hábil desde el alta (pudiendo coincidir), en Registro Telemático

1.3.4.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.
requestSe comprueba que el objeto request no sea null
Request.requestSe comprueba que request no sea una cadena vacía
Request.fileNameSe comprueba que fileName no sea una cadena vacía
Request.mimeTypeSe comprueba que mimeType no sea una cadena vacía
Request.fileNameSe valida que fileName contenga la extensión del archivo

1.3.4.5.- Códigos error

TipoDescripción
InternalCoreExceptionSe agrupan todos aquellos errores internos de funcionamiento de SRT.
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.3.4.6.- Ejemplo de invocación

Ejemplo de invocación
ParamSendDraft paramSendDraft = new ParamSendDraft();
ResultSendDraft resultSendDraft = new ResultSendDraft();
Request request = new Request();
// URL del fichero
byte[] arrayFile = FileCopyUtils.copyToByteArray("Fichero");
String fileSoli = BASE64Encoder.encode(arrayFile);
// URL de la firma del fichero
byte[] arraySign = FileCopyUtils.copyToByteArray("Firma");
String detachedSignature = BASE64Encoder.encode(arraySign);
// Formato del fichero
request.setMimeType("Formato");
// Nombre del fichero
request.setFileName("Nombre.Extension");
// Fichero a enviar
request.setRequest(fileSoli);
// Firma del fichero a enviar
request.setDetachedSignature(detachedSignature);
// Formato de la firma
request.setFormatSignature("Formato de Firma");
// Datos Especificos
Data[] data = new Data[1];
data[0] = new Data("Name","Value");
// Identificado del Draft
paramSendDraft.setIdDraft("idDraft");
paramSendDraft.setRequest(request);
paramSendDraft.setSpecificData(data);
paramSendDraft.setInvokingId(null);
resultSendDraft = draftClient.sendDraft(paramSendDraft);

1.3.5.- Método 'sendFullDraft'

Método obsoleto. Para nuevas integraciones se recomienda utilizar el método sendFullEntry de EntryService (apartado 1.1.7)

Finalización del proceso de elaboración del borrador, alta del fichero de solicitud (contenido) y alta del asiento registral correspondiente.

 Más detalles...

1.3.5.1.- Signatura

ResultSendFullDraft sendFullDraft(String idApplication, ParamSendFullDraft param) throws RemoteException, SRTException

1.3.5.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
idDraftString-Identificador del borrador
requestPromoterRequestPromoter-Datos del PromotorNo
specificDataData[]

Clave → 255 caracteres

Valor → 255 caracteres

Lista de Datos específicosNo
invokingIdString255 caracteresIdentificador (NIF) de la persona que origina la petición desde la aplicación invocante. Si se trata de una aplicación web será la persona autenticada en el mismo.No
RequestPromoterTipoLongitud máximaDescripciónObligatorio
Promoter
Promoter/identifierNumberString255 caracteresNúmero de identificación
Promoter/nameString255 caracteresNombre
Promoter/surname1String255 caracteresPrimer apellidoNo
Promoter/surname2String255 caracteresSegundo apellidoNo

1.3.5.3.- Parámetros de respuesta

NombreTipoDescripción
idEntryStringNúmero de registro correspondiente al asiento registral realizado
receiptStringContenido del documento de justificante de asiento (fichero PDF, XML, etc.) codificado en Base64 y firmado electrónicamente por el sistema telemático
processTimeDateFecha y hora de presentación, primer día hábil desde el alta (pudiendo coincidir), en Registro Telemático
CSVReceiptStringCSV del recibo (justificante) de alta de asiento registral

1.3.5.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código
requestPromoterSe comprueba que el objeto requestPromoter no sea null
RequestPromoter.NameSe comprueba que Name no sea una cadena vacía
RequestPromoter.Surname1Se comprueba que Surname1 no sea una cadena vacía
RequestPromoter.Surname2Se comprueba que Surname2 no sea una cadena vacía

1.3.5.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.3.5.6.- Ejemplo de invocación

Ejemplo de invocación
ParamSendFullDraft paramSendFullDraft = new ParamSendFullDraft();
ResultSendFullDraft resultSendFullDraft = new ResultSendFullDraft();
Promoter promoter=new Promoter();
RequestPromoter request = new RequestPromoter();
//Fichero sin firma
byte[] arrayFile = FileCopyUtils.copyToByteArray(new File(new File
(".").getCanonicalPath()+"URL del fichero"));
String fileSoli = BASE64Encoder.encode(arrayFile);
// Firma del fichero
byte[] arraySign = FileCopyUtils.copyToByteArray(new File(new File
(".").getCanonicalPath()+"URL de la firma"));
String detachedSignature = BASE64Encoder.encode(arraySign);
// NIF/CIF del promotor
promoter.setIdentifierNumber("NIF/CIF");
// Nombre del promotor
promoter.setName("Name");
// Primer Apellido del promotor
promoter.setSurname1("Surmane1");
// Segundo Apellido del promotor
promoter.setSurname2("Surname2");
// Formato del Fichero
request.setMimeType("Formato Fichero");
// Nombre del Fichero
request.setFileName("Nombre Fichero");
// Fichero
request.setRequest(fileSoli);
// Firma del Fichero
request.setDetachedSignature(detachedSignature);
// Formato de la Firma
request.setFormatSignature ("Formato Firma");
// Promotor
request.setPromoter(promoter);
Titulo: Manual Integración
SRT v3.12
Página 42 de 129
Construyendo Europa desde Aragón
// Datos Especificos
Data[] data = new Data[1];
data[0] = new Data("Name", "Value");
//Identificador del Draft
paramSendFullDraft.setIdDraft ("idDraft");
paramSendFullDraft.setRequestPromoter(request);
paramSendFullDraft.setSpecificData(data);
paramSendFullDraft.setInvokingId(null);
resultSendFullDraft = draftClient.sendFullDraft(paramSendFullDraft);

1.4.- Servicio InfoService

1.4.1.- Método 'listOrganism (ParamListOrganism)'

Devuelve la información (código/nombre) de un organismo y sus “hijos”. Obtiene organismos que contengan el dato extendido "srtCode". (Método DEPRECADO) Se debe utilizar el servicio organismTree que proporciona la aplicación Sistema de Identificación de Usuarios (SIU)

 Más detalles...

1.4.1.1.- Signatura

ResultListOrganisms listOrganism(String idApplication,ParamListOrganism param) throws RemoteException, SRTException

1.4.1.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
organismCodeString-Código organismo SIU del cual se desean obtener los organismos hijos. Si no se especifica ninguno (null), se obtienen todos los organismos habilitados para esa aplicación. Este código de Organismo puede cambiar en el futuro cuando cambie la estructura de organismos.No

1.4.1.3.- Parámetros de respuesta

NombreTipoDescripción
ResultListOrganisms

ResultListOrganisms/organismsOrganismInfo[]Listado de organismos

1.4.1.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.

1.4.1.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.4.1.6.- Ejemplo de invocación

Ejemplo de invocación
ParamListOrganism paramListOrganism = new ParamListOrganism();
ResultListOrganisms resultListOrganisms = new ResultListOrganisms();
//Código de Organismo
paramListOrganism.setOrganismCode("ORGXXXXX");
resultListOrganisms = infoClient.listOrganism(paramListOrganism);

1.4.2.- Método 'listRegisters'

Devuelve la información (código/nombre) de los libros de registro sobre los que puede registrar para un organismo. (Método DEPRECADO) Se recomienda utiliza el método fullListRegisters (apartado 1.4.3)

 Más detalles...

1.4.2.1.- Signatura

ResultListRegisters listRegisters(String idApplication, ParamListRegisters param) throws RemoteException, SRTException

1.4.2.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
organismCodeString-Código administrativo del organismo que se recupera de SIU. Este código de Organismo puede cambiar en el futuro cuando cambie la estructura de organismos.No

1.4.2.3.- Parámetros de respuesta

NombreTipoDescripción
registerRegister[]Listado de libros de registro

1.4.2.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.

1.4.2.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.4.2.6.- Ejemplo de invocación

Ejemplo de invocación
ParamListRegisters paramListRegisters = new ParamListRegisters();
ResultListRegisters resultListRegisters = new ResultListRegisters();
resultListRegisters = infoClient.listRegisters(paramListRegisters);

1.4.3.- Método 'fullListRegisters'

Devuelve la información de los libros de registro sobre los que puede registrar para un organismo.

 Más detalles...

1.4.3.1.- Signatura

ResultFullListRegisters fullListRegisters(String idApplication, ParamFullListRegisters param) throws RemoteException, SRTException

1.4.3.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
organismCodeString-Código administrativo del organismo que se recupera de SIU. Este código de Organismo puede cambiar en el futuro cuando cambie la
estructura de organismos.
No
enabledBoolean-Accesibilidad de los libros de registro
activado = true
desactivado = false
No
exteriorVisibleBoolean-Visibilidad de los libros de registro
visible exterior = true
no visible exterior = false
No

1.4.3.3.- Parámetros de respuesta

NombreTipoDescripción
fullRegistersFullRegister[]Listado de libros de registro(código, nombre, activado, visible exterior)

1.4.3.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.

1.4.3.5.- Códigos error

Tipo

Descripción
SRTExceptionError en la operación.
RemoteException

Error remoto.

1.4.3.6.- Ejemplo de invocación

Ejemplo de invocación
ParamFullListRegisters paramFullListRegisters = new ParamFullListRegisters();
ResultFullListRegisters resultFullListRegisters = new ResultFullListRegisters();
resultFullListRegisters = infoClient.fullListRegisters(paramFullListRegisters);

1.4.4.- Método 'listOrganism (ParamListOrganismSIU)'

Devuelve la información (código/nombre) de un organismo y sus “hijos”. En este caso no tiene en cuenta el dato extendido "srtCode". (Método DEPRECADO) Se debe utilizar el servicio organismTree que proporciona la aplicación Sistema de Identificación de Usuarios (SIU)

 Más detalles...

1.4.4.1.- Signatura

ResultListOrganismsSIU listOrganism(String idApplication,ParamListOrganismSIU param) throws RemoteException, SRTException

1.4.4.2.- Parámetros de invocación

NombreTipoLongitud máximaDescripciónObligatorio
organismCodeString-Código organismo SIU del cual se desean obtener los organismos hijos. Si no se especifica ninguno (null), se obtienen todos los organismos habilitados para esa aplicación. Este código de Organismo puede cambiar en el futuro cuando cambie la estructura de organismos.No

1.4.4.3.- Parámetros de respuesta

NombreTipoDescripción
ResultListOrganismsSIU

ResultListOrganismsSIU/organismsOrganismInfo[]Listado de organismos

1.4.4.4.- Validaciones

NombreDescripción
idApplicationSe valida que existe una aplicación dada de alta con ese código.

1.4.4.5.- Códigos error

TipoDescripción
SRTExceptionError en la operación.
RemoteExceptionError remoto.

1.4.4.6.- Ejemplo de invocación

Ejemplo de invocación
ParamListOrganismSIU paramListOrganismSIU = new ParamListOrganismSIU();
ResultListOrganismsSIU resultListOrganismsSIU = new ResultListOrganismsSIU();
//Código de Organismo
paramListOrganismSIU.setOrganismCode("ORGXXXXX");
resultListOrganismsSIU = infoClient.listOrganism(paramListOrganismSIU);


1.5.- Manejo de excepciones

A continuación se muestra un ejemplo de captura de excepciones de los servicios SOAP de SRT.

Capturando excepciones de SRT
try {
	log.info("BEGIN SRT EntryClient.sendFullEntry");
	resultSendEntry = entryClient.sendFullEntry(paramSendFullEntry, null, null);
	log.info("END SRT EntryClient.sendFullEntry");
} catch (SRTException e) {
	String extraInfo = e.getCode() + ":" + e.getExtraInfo(); //Obtenemos el código y la información del error
} 

1.6.- Servicio SRT (OBSOLETO)

Todos los métodos de este servicio han quedado obsoletos.

Los métodos son los siguientes:

  • solicitudRegistro
  • listadoRegistro
  • detalleRegistro
  • obtenerOrganismosYTramites
  • No labels