Trabajar con el repositorio de AEM Forms working-with-aem-forms-repository
Los ejemplos de este documento solo son para AEM Forms en un entorno JEE.
Acerca del servicio de repositorio
El servicio Repositorio proporciona servicios de gestión y almacenamiento de recursos a AEM Forms. Cuando los desarrolladores crean un AEM Forms pueden implementar los recursos en el repositorio en lugar del sistema de archivos. Los recursos pueden incluir cualquier tipo de material colateral, incluidos formularios XML, PDF forms (incluidos formularios Acrobat), fragmentos de formulario, imágenes, perfiles, directivas, archivos de SWF, archivos DDX, esquemas XML, archivos WSDL y datos de prueba.
Por ejemplo, considere la siguiente aplicación de Forms denominada Aplicaciones/FormsApplication:
Observe que hay un archivo denominado Loan.xdp en la carpeta FormsFolder. Para acceder a este diseño de formulario, debe especificar la ruta completa (incluida la versión): Applications/FormsApplication/1.0/FormsFolder/Loan.xdp
.
La ruta a un recurso en el repositorio de AEM Forms es:
Applications/Application-name/Application-version/Folder.../Filename
Los siguientes valores muestran algunos ejemplos de valores de URI:
- Applications/AppraisalReport/1.0/Forms/FullForm.xdp
- Applications/AnotherApp/1.1/Assets/picture.jpg
- Applications/SomeApp/2.0/Resources/Data/XSDs/MyData.xsd
https://[server name]:[server port]/repository
. Puede comprobar los resultados de inicio rápido asociados a la sección Uso del repositorio de AEM Forms mediante un explorador web. Por ejemplo, si agrega contenido al repositorio de AEM Forms, puede verlo en un explorador web. (Consulte Inicio rápido (modo SOAP): Escritura de un recurso mediante la API de Java.)La API del repositorio proporciona varias operaciones que puede utilizar para almacenar y recuperar información del repositorio. Por ejemplo, puede obtener una lista de recursos o recuperar recursos específicos almacenados en el repositorio cuando se necesite un recurso como parte del procesamiento de una aplicación.
Mediante la API del servicio de repositorio, puede realizar las siguientes tareas:
- Cree carpetas. Consulte Creación de carpetas.
- Recursos de escritura y sus propiedades. Consulte Recursos de escritura.
- Enumerar recursos de una colección determinada o relacionados con otros recursos. Consulte Listando recursos.
- Recursos de lectura y sus propiedades. Consulte Leyendo recursos.
- Actualizar recursos y sus propiedades. Consulte Actualización de recursos.
- Busque recursos, incluido su historial, recursos relacionados y propiedades. Consulte Búsqueda de recursos.
- Especifique las relaciones entre los recursos. Consulte Creación de relaciones de recursos.
- Administrar el control de acceso a recursos, incluidos el bloqueo y desbloqueo de recursos y la lectura y escritura de listas de control de acceso (ACL). Consulte Bloqueo de recursos.
- Eliminar recursos y sus propiedades. Consulte Eliminación de recursos.
Creación de carpetas creating-folders
Las carpetas (colecciones de recursos) se utilizan para almacenar objetos (archivos o recursos) en agrupaciones organizadas. Las carpetas pueden contener recursos y otras carpetas, también conocidas como subcarpetas. Los recursos solo se pueden almacenar en una carpeta a la vez.
Los archivos heredan las listas de control de acceso (ACL) de las carpetas y las subcarpetas heredan las ACL de sus carpetas principales. Por lo tanto, las carpetas principales deben existir antes de poder crear carpetas secundarias. El IDE permite interactuar únicamente carpeta por carpeta, no archivo por archivo. No puede crear versiones de carpetas y no es necesario; una carpeta no contiene datos en sí. En su lugar, solo es un contenedor para recursos que contienen datos. La ACL predeterminada es el permiso del sistema, lo que significa que los usuarios deben tener permisos del sistema (leer, escribir, recorrer y administrar ACL) hasta que alguien les conceda permisos para una carpeta en particular. Las ACL solo funcionan en el IDE.
Resumen de los pasos summary-of-steps
Para crear una carpeta, siga estos pasos:
- Incluir archivos de proyecto.
- Cree el cliente de servicios.
- Cree la carpeta.
- Escriba la carpeta en el repositorio.
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si está creando una aplicación cliente mediante Java, incluya los archivos JAR necesarios. Si utiliza servicios web, incluya los archivos proxy.
Creación del cliente de servicios
Para poder crear mediante programación una colección de recursos, debe establecer una conexión y proporcionar credenciales. Esto se logra creando un cliente de servicio.
Cree la carpeta
Invoque el método del servicio de repositorio para crear la colección de recursos y rellenarla con información de identificación, incluido su UUID, nombre de carpeta y descripción.
Escribir la carpeta en el repositorio
Invoque el método del servicio de repositorio para escribir la colección de recursos, especificando el URI de la carpeta de destino.
Consulte también
Creación de carpetas con la API de Java
Creación de carpetas mediante la API de servicio web
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Inicio rápido de la API del servicio de repositorio
Creación de carpetas con la API de Java create-folders-using-the-java-api
Cree una carpeta mediante la API de servicio de repositorio (Java):
-
Incluir archivos de proyecto
Incluya archivos de proyecto en la ruta de clase de su proyecto Java.
-
Creación del cliente de servicios
Crear un
ResourceRepositoryClient
mediante su constructor y pasando un objetoServiceClientFactory
que contiene las propiedades de conexión. -
Cree la carpeta
Para crear una colección de recursos, primero debe crear una
com.adobe.repository.infomodel.bean.RepositoryInfomodelFactoryBean
objeto.Invoque el
repositoryInfomodelFactoryBean
del objetonewResourceCollection
y pase los siguientes parámetros:- A
com.adobe.repository.infomodel.Id
Identificador UUID que se va a asignar al recurso. - A
com.adobe.repository.infomodel.Lid
Identificador UUID que se va a asignar al recurso. - A
java.lang.String
que contiene el nombre de la colección de recursos. Por ejemplo,FormsFolder
.
El método devuelve un valor
com.adobe.repository.infomodel.bean.ResourceCollection
que representa la nueva carpeta.Defina la descripción de la carpeta utilizando
setDescription
y pase el siguiente parámetro:- A
String
que describe la colección de recursos. En este ejemplo,"test Folder"
se utiliza.
- A
-
Escribir la carpeta en el repositorio
Invoque el
ResourceRepositoryClient
del objetowriteResource
y pase el URI de la carpeta y elResourceCollection
objeto. Por ejemplo, el URI de la carpeta puede ser el siguiente valor/Applications/FormsApplication/1.0/
.El método devuelve una instancia del recién creado
com.adobe.repository.infomodel.bean.Resource
objeto. Por ejemplo, puede recuperar el valor del identificador del nuevo recurso invocando el métodocom.adobe.repository.infomodel.bean.Resource
del objetogetId
método.
Consulte también
Inicio rápido (modo SOAP): Creación de una carpeta con la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Creación de carpetas mediante la API de servicio web create-folders-using-the-web-service-api
Cree una carpeta mediante la API del servicio de repositorio (servicio web):
-
Incluir archivos de proyecto
- Cree un ensamblado de cliente de Microsoft .NET que consuma el WSDL del repositorio utilizando base64.
- Hacer referencia al ensamblado de cliente de Microsoft .NET.
-
Creación del cliente de servicios
Mediante el ensamblado de cliente de Microsoft .NET, cree un
RepositoryServiceService
invocando su constructor predeterminado. Establezca suCredentials
propiedad con unSystem.Net.NetworkCredential
que contiene el nombre de usuario y la contraseña. -
Cree la carpeta
Cree la carpeta utilizando el constructor predeterminado para
ResourceCollection
y pasar los siguientes parámetros:- Un
Id
, que se crea invocando el constructor predeterminado para el objetoId
y se asigna a laResource
del objetoid
field. - Un
Lid
, que se crea invocando el constructor predeterminado para el objetoLid
y se asigna a laResource
del objetolid
field. - Cadena que contiene el nombre de la colección de recursos, que se asigna a la variable
Resource
del objetoname
field. El nombre utilizado en este ejemplo es"testfolder"
. - Cadena que contiene la descripción de la colección de recursos, que se asigna a la variable
Resource
del objetodescription
field. La descripción utilizada en este ejemplo es"test folder"
.
- Un
-
Escribir la carpeta en el repositorio
Invoque el
RepositoryServiceService
del objetowriteResource
y pasar los siguientes parámetros:- Ruta de acceso donde se creará la carpeta.
- El
ResourceCollection
que representa la carpeta. - Aprobado
null
para los otros dos parámetros.
Consulte también
Invocar AEM Forms con codificación Base64
Recursos de escritura writing-resources
Puede crear recursos en una ubicación determinada del repositorio. El tamaño natural del archivo está sujeto a las limitaciones de la base de datos y al tiempo de espera de la sesión. Para la configuración predeterminada, los archivos están limitados a 25 MB. Para aumentar o reducir el tamaño máximo de archivo, debe cambiar la configuración de la base de datos.
Escribir recursos equivale a almacenar datos en el repositorio. Una vez que escriba un recurso en el repositorio, todos los clientes del ecosistema del repositorio podrán acceder a él. Al escribir recursos, como esquemas XML, archivos XDP y archivos XSD, en el repositorio, el contenido se analiza en función del tipo MIME. Si se admite el tipo MIME, el analizador determina si hay una relación implícita con otro contenido. Por ejemplo, si una hoja de estilos en cascada (CSS) tiene una dirección URL relativa que hace referencia a un CSS común, se espera que también envíe el CSS común al repositorio. La relación entre los dos recursos se almacena como una relación pendiente durante un periodo no ajustable de 30 días. Cuando envía el CSS común al repositorio en el periodo de 30 días, se forma la relación.
Al crear un recurso, la lista de control de acceso (ACL) se hereda de la carpeta principal. La carpeta raíz tiene permisos de nivel del sistema hasta que se crea un recurso o una carpeta inicial, momento en el que el recurso o la carpeta recibe los permisos ACL predeterminados.
Puede escribir recursos mediante programación utilizando la API de Java del servicio de repositorio o la API del servicio web.
Resumen de los pasos summary_of_steps-1
Para escribir un recurso, siga estos pasos:
- Incluir archivos de proyecto.
- Cree un cliente de servicio de Repositorio.
- Especifique el URI del recurso que se va a leer.
- Lea el recurso.
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si está creando una aplicación cliente mediante Java, incluya los archivos JAR necesarios. Si utiliza servicios web, incluya los archivos proxy.
Creación del cliente de servicios
Para poder leer un recurso mediante programación, debe establecer una conexión y proporcionar credenciales. Esto se logra creando un cliente de servicio.
Especifique el URI de la carpeta de destino del recurso
Cree una cadena que contenga el URI del recurso que se va a leer. La sintaxis incluye barras diagonales, como en este ejemplo: "/ruta/carpeta".
Creación del recurso
Invoque el método del servicio del repositorio para crear el recurso y rellénelo con información de identificación, incluido su UUID, el nombre del recurso y la descripción.
Especificar el contenido del recurso
Invoque el método del servicio Repositorio para crear contenido de recursos y almacenarlo en el recurso.
Escribir el recurso en la carpeta de destino
Invoque el método del servicio del repositorio para escribir el recurso, especificando el URI de la carpeta de destino.
Consulte también
Escribir recursos mediante la API de Java
Escribir recursos mediante la API de servicio web
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Inicio rápido de la API del servicio de repositorio
Escribir recursos mediante la API de Java write-resources-using-the-java-api
Escriba un recurso mediante la API de servicio de repositorio (Java):
-
Incluir archivos de proyecto
Incluya archivos JAR de cliente en la ruta de clase del proyecto Java.
-
Creación del cliente de servicios
Crear un
ResourceRepositoryClient
mediante su constructor y pasando un objetoServiceClientFactory
que contiene las propiedades de conexión. -
Especifique el URI de la carpeta de destino del recurso
Especifique el URI de la carpeta de destino del recurso. En este caso, debido a que el recurso denominado
testResource
se almacenarán en la carpeta denominadatestFolder
, el URI de la carpeta es"/testFolder"
. El URI se almacena comojava.lang.String
objeto. -
Creación del recurso
Para crear un recurso, primero debe crear un
com.adobe.repository.infomodel.bean.RepositoryInfomodelFactoryBean
objeto.Invoque el
RepositoryInfomodelFactoryBean
del objetonewResource
, que crea uncom.adobe.repository.infomodel.bean.Resource
objeto. En este ejemplo, se proporcionan los siguientes parámetros:- A
com.adobe.repository.infomodel.Id
, que se crea invocando el constructor predeterminado para el objetoId
clase. - A
com.adobe.repository.infomodel.Lid
, que se crea invocando el constructor predeterminado para el objetoLid
clase. - A
java.lang.String
que contiene el nombre de archivo del recurso.
Para especificar la descripción del recurso, invoque el
Resource
del objetosetDescription
y pase una cadena que contenga la descripción. En este ejemplo, la descripción es"test resource"
. - A
-
Especificar el contenido del recurso
Para crear contenido para el recurso, invoque el
RepositoryInfomodelFactoryBean
del objetonewResourceContent
método, que devuelve un valorcom.adobe.repository.infomodel.bean.ResourceContent
objeto. Añadir contenido aResourceContent
objeto. En este ejemplo, esto se logra haciendo las siguientes tareas:- Invocando el
ResourceContent
del objetosetDataDocument
método y pasar uncom.adobe.idp.Document
objeto - Invocando el
ResourceContent
del objetosetSize
y pasando el tamaño en bytes del métodoDocument
objeto
Añada el contenido al recurso invocando el
Resource
del objetosetContent
método y pasando elResourceContent
objeto. Para obtener más información, consulte Referencia de API de AEM Forms. - Invocando el
-
Escribir el recurso en la carpeta de destino
Invoque el
ResourceRepositoryClient
del objetowriteResource
y pasan el URI de la carpeta, y elResource
objeto.
Consulte también
Inicio rápido (modo SOAP): Escritura de un recurso mediante la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Escribir recursos mediante la API de servicio web write-resources-using-the-web-service-api
Escribir un recurso mediante la API del servicio de repositorio (servicio web):
-
Incluir archivos de proyecto
- Cree un ensamblado de cliente de Microsoft .NET que consuma el WSDL del repositorio utilizando base64.
- Hacer referencia al ensamblado de cliente de Microsoft .NET.
-
Creación del cliente de servicios
Mediante el ensamblado de cliente de Microsoft .NET, cree un
RepositoryServiceService
invocando su constructor predeterminado. Establezca suCredentials
propiedad con unSystem.Net.NetworkCredential
que contiene el nombre de usuario y la contraseña. -
Especifique el URI de la carpeta de destino del recurso
Especifique el URI de la carpeta de destino del recurso. En este caso, debido a que el recurso denominado
testResource
se almacenarán en la carpeta denominadatestFolder
, el URI de la carpeta es"/testFolder"
. Cuando utilice un lenguaje compatible con Microsoft .NET Framework (por ejemplo, C#), almacene el URI en unaSystem.String
objeto. -
Creación del recurso
Para crear un recurso, invoque el constructor predeterminado para
Resource
clase. En este ejemplo, la siguiente información se almacena en elResource
objeto:- A
com.adobe.repository.infomodel.Id
, que se crea invocando el constructor predeterminado para el objetoId
y se asigna a laResource
del objetoid
field. - A
com.adobe.repository.infomodel.Lid
, que se crea invocando el constructor predeterminado para el objetoLid
y se asigna a laResource
del objetolid
field. - Cadena que contiene el nombre de archivo del recurso, que se asigna al
Resource
del objetoname
field. El nombre utilizado en este ejemplo es"testResource"
. - Cadena que contiene la descripción del recurso, que se asigna al
Resource
del objetodescription
field. La descripción utilizada en este ejemplo es"test resource"
.
- A
-
Especificar el contenido del recurso
Para crear contenido para el recurso, invoque el constructor predeterminado para
ResourceContent
clase. A continuación, añada contenido aResourceContent
objeto. En este ejemplo, esto se logra haciendo las siguientes tareas:- Asignación de un
BLOB
objeto que contiene un documento paraResourceContent
del objetodataDocument
field. - Asignación del tamaño en bytes del
BLOB
objeto aResourceContent
del objetosize
field.
Añada el contenido al recurso asignando el
ResourceContent
objeto aResource
del objetocontent
field. - Asignación de un
-
Escribir el recurso en la carpeta de destino
Invoque el
RepositoryServiceService
del objetowriteResource
y pasan el URI de la carpeta, y elResource
objeto. Aprobadonull
para los otros dos parámetros.
Consulte también
Invocar AEM Forms con codificación Base64
Listando recursos listing-resources
Puede descubrir recursos enumerando los recursos. Se realiza una consulta en el repositorio para buscar todos los recursos relacionados con una colección de recursos determinada.
Una vez organizados los recursos, puede inspeccionar la estructura creada viendo una rama concreta de la estructura, como lo haría en un sistema operativo.
La lista de recursos funciona por relación: los recursos son miembros de carpetas. La pertenencia se representa mediante una relación de tipo "miembro de". Cuando se enumeran recursos en una carpeta determinada, se están consultando recursos relacionados con una carpeta determinada mediante la relación "miembro de". Las relaciones son direccionales: un miembro de una relación tiene un origen que es miembro del destino. El origen es el recurso, el destino es la carpeta principal.
Resumen de los pasos summary_of_steps-2
Para enumerar los recursos, siga estos pasos:
- Incluir archivos de proyecto.
- Cree el cliente de servicios.
- Especifique la ruta de la carpeta.
- Recupere la lista de recursos.
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si está creando una aplicación cliente mediante Java, incluya los archivos JAR necesarios. Si utiliza servicios web, incluya los archivos proxy.
Creación del cliente de servicios
Para poder crear mediante programación una colección de recursos, debe establecer una conexión y proporcionar credenciales. Esto se logra creando un cliente de servicio.
Especificar la ruta de la carpeta
Cree una cadena que contenga la ruta de la carpeta que contiene los recursos. La sintaxis incluye barras diagonales, como en este ejemplo: "/ruta/carpeta".
Recuperación de la lista de recursos
Invoque el método del servicio Repositorio para recuperar la lista de recursos, especificando la ruta de la carpeta de destino.
Consulte también
Enumeración de recursos mediante la API de Java
Enumerar recursos mediante la API de servicio web
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Inicio rápido de la API del servicio de repositorio
Enumeración de recursos mediante la API de Java list-resources-using-the-java-api
Enumerar recursos mediante la API de servicio de repositorio (Java):
-
Incluir archivos de proyecto
Incluya archivos JAR de cliente en la ruta de clase del proyecto Java.
-
Creación del cliente de servicios
Crear un
ResourceRepositoryClient
mediante su constructor y pasando un objetoServiceClientFactory
que contiene las propiedades de conexión. -
Especificar la ruta de la carpeta
Especifique el URI de la colección de recursos que desea consultar. En este caso, su URI es
"/testFolder"
. El URI se almacena comojava.lang.String
objeto. -
Recuperación de la lista de recursos
Invoque el
ResourceRepositoryClient
del objetolistMembers
y pase el URI de la carpeta.El método devuelve un valor
java.util.List
decom.adobe.repository.infomodel.bean.Resource
objetos que son el origen de un objetocom.adobe.repository.infomodel.bean.Relation
de tipoRelation.TYPE_MEMBER_OF
y tienen como destino el URI de la colección de recursos. Puede iterar a través de estoList
para recuperar cada uno de los recursos. En este ejemplo, se muestra el nombre y la descripción de cada recurso.
Consulte también
Inicio rápido (modo SOAP): Listado de recursos mediante la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Enumerar recursos mediante la API de servicio web list-resources-using-the-web-service-api
Enumerar recursos mediante la API del servicio de repositorio (servicio web):
-
Incluir archivos de proyecto
- Cree un ensamblado de cliente de Microsoft .NET que consuma el WSDL del repositorio.
- Hacer referencia al ensamblado de cliente de Microsoft .NET.
-
Creación del cliente de servicios
Mediante el ensamblado de cliente de Microsoft .NET, cree un
RepositoryServiceService
invocando su constructor predeterminado. Establezca suCredentials
propiedad con unSystem.Net.NetworkCredential
que contiene el nombre de usuario y la contraseña. -
Especificar la ruta de la carpeta
Especifique una cadena que contenga el URI de la carpeta que se va a consultar. En este caso, su URI es
"/testFolder"
. Cuando utilice un lenguaje compatible con Microsoft .NET Framework (por ejemplo, C#), almacene el URI en unaSystem.String
objeto. -
Recuperación de la lista de recursos
Invoque el
RepositoryServiceService
del objetolistMembers
y pase el URI de la carpeta como primer parámetro. Aprobadonull
para los otros dos parámetros.El método devuelve una matriz de objetos a los que se puede convertir
Resource
objetos. Puede iterar a través de la matriz de objetos para recuperar cada uno de los recursos relacionados. En este ejemplo, se muestra el nombre y la descripción de cada recurso.
Consulte también
Invocar AEM Forms con codificación Base64
Leyendo recursos reading-resources
Puede recuperar recursos de una ubicación determinada del repositorio para leer su contenido y metadatos. El flujo de trabajo está front-end mediante un formulario de inicialización. El proceso tiene todos los permisos necesarios para leer el formulario. El sistema recupera el formulario de datos y lee el contenido del repositorio. El repositorio concede acceso al contenido y a los metadatos (la capacidad de saber si existe el recurso).
El repositorio tiene los siguientes cuatro tipos de permisos:
- recorrer: permite enumerar recursos; es decir, leer metadatos de recursos, pero no contenido de recursos
- leer: permite leer el contenido del recurso
- escribir: permite escribir contenido de recursos
- administración de listas de control de acceso (ACL): permite manipular las ACL en los recursos
Los usuarios solo pueden ejecutar procesos cuando tienen permiso para ejecutar el proceso. Los usuarios del IDE necesitan permisos de recorrido y lectura para sincronizarse con el repositorio. Las ACL se aplican solo en tiempo de diseño porque el tiempo de ejecución se produce dentro del contexto del sistema.
Puede leer recursos mediante programación utilizando la API de Java del servicio de repositorio o la API del servicio web.
Resumen de los pasos summary_of_steps-3
Para leer un recurso, siga estos pasos:
- Incluir archivos de proyecto.
- Cree un cliente de servicio de Repositorio.
- Especifique el URI del recurso que se va a leer.
- Lea el recurso.
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si está creando una aplicación cliente mediante Java, incluya los archivos JAR necesarios. Si utiliza servicios web, incluya los archivos proxy.
Creación del cliente de servicios
Para poder leer un recurso mediante programación, debe establecer una conexión y proporcionar credenciales. Esto se logra creando un cliente de servicio.
Especifique el URI del recurso que desea leer
Cree una cadena que contenga el URI del recurso que se va a leer. La sintaxis incluye barras diagonales, como en este ejemplo: "/ruta/resource".
Leer el recurso
Invoque el método del servicio del repositorio para leer el recurso y especificar el URI.
Consulte también
Leer recursos mediante la API de Java
Lectura de recursos mediante la API de servicio web
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Inicio rápido de la API del servicio de repositorio
Leer recursos mediante la API de Java read-resources-using-the-java-api
Leer un recurso mediante la API de servicio de repositorio (Java):
-
Incluir archivos de proyecto
Incluya archivos JAR de cliente en la ruta de clase del proyecto Java.
-
Creación del cliente de servicios
Crear un
ResourceRepositoryClient
mediante su constructor y pasando un objetoServiceClientFactory
que contiene las propiedades de conexión. -
Especifique el URI del recurso que desea leer
Especifique un valor de cadena que represente el URI del recurso que se va a recuperar. Por ejemplo, suponiendo que el recurso se llame testResource que se encuentra en una carpeta denominada testFolder, especifique
/testFolder/testResource
. -
Leer el recurso
Invoque el
ResourceRepositoryClient
del objetoreadResource
y pase el URI del recurso como parámetro. Este método devuelve unResource
instancia que representa el recurso.
Consulte también
Inicio rápido (modo SOAP): Lectura de un recurso mediante la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Lectura de recursos mediante la API de servicio web reading-resources-using-the-web-service-api
Leer un recurso mediante la API del servicio de repositorio (servicio web):
-
Incluir archivos de proyecto
- Cree un ensamblado de cliente de Microsoft .NET que consuma el WSDL del repositorio. (Consulte Crear un ensamblado de cliente .NET que utilice codificación Base64.)
- Hacer referencia al ensamblado de cliente de Microsoft .NET. (Consulte Crear un ensamblado de cliente .NET que utilice codificación Base64.)
-
Creación del cliente de servicios
Mediante el ensamblado de cliente de Microsoft .NET, cree un
RepositoryServiceService
invocando su constructor predeterminado. Establezca suCredentials
propiedad con unSystem.Net.NetworkCredential
que contiene el nombre de usuario y la contraseña. -
Especifique el URI del recurso que desea leer
Especifique una cadena que contenga el URI del recurso que se va a recuperar. En este caso, debido a que el recurso denominado
testResource
se encuentra en la carpeta denominadatestFolder
, su URI es"/testFolder/testResource"
. Cuando utilice un lenguaje compatible con Microsoft .NET Framework (por ejemplo, C#), almacene el URI en unaSystem.String
objeto. -
Leer el recurso
Invoque el
RepositoryServiceService
del objetoreadResource
y pase el URI del recurso como el primer parámetro. Aprobadonull
para los otros dos parámetros.
Consulte también
Invocar AEM Forms con codificación Base64
Actualización de recursos updating-resources
Puede recuperar y actualizar el contenido de los recursos del repositorio. Al actualizar los recursos, el control de acceso a esos recursos permanece sin cambios entre las versiones. Al realizar una actualización, tiene la opción de incrementar la versión principal. Si no incrementa la versión principal, la versión secundaria se actualiza automáticamente.
Al actualizar un recurso, se crea la nueva versión en función de los atributos de recurso especificados. Al actualizar un recurso, se especifican dos parámetros importantes: el URI de destino y una instancia de recurso que contiene todos los metadatos actualizados. Es importante tener en cuenta que si no está cambiando un atributo determinado (por ejemplo, el nombre), el atributo sigue siendo necesario en la instancia que transfiere. Las relaciones que se crean al analizar el contenido se añaden a la versión específica y no se reenvían a menos que se especifique lo contrario.
Por ejemplo, si actualiza un archivo XDP y contiene referencias a otros recursos, también se registrarán esas referencias adicionales. Supongamos que form.xdp versión 1.0 tiene dos referencias externas: un logotipo y una hoja de estilo y, a continuación, actualice form.xdp para que ahora tenga tres referencias: un logotipo, una hoja de estilo y un archivo de esquema. Durante la actualización, el repositorio añadirá la tercera relación (al archivo de esquema) a su tabla de relaciones pendiente. Una vez que el archivo de esquema esté presente en el repositorio, la relación se formará automáticamente. Sin embargo, si la versión 2.0 de form.xdp ya no utiliza el logotipo, la versión 2.0 de form.xdp no tendrá relación con él.
Todas las operaciones de actualización son atómicas y transaccionales. Por ejemplo, si dos usuarios leen el mismo recurso y ambos deciden actualizar la versión 1.0 a la 2.0, uno de ellos se realizará correctamente y uno de ellos fallará, la integridad del repositorio se mantendrá y ambos recibirán un mensaje que confirme el éxito o el error. Si la transacción no se confirma, se revertirá si se produce un error en la base de datos y se agotará el tiempo de espera o se revertirá según el servidor de aplicaciones.
Puede actualizar los recursos mediante programación utilizando la API de Java del servicio de repositorio o la API del servicio web.
Resumen de los pasos summary_of_steps-4
Para actualizar un recurso, siga estos pasos:
- Incluir archivos de proyecto.
- Cree un cliente de servicio de Repositorio.
- Recupere el recurso que desea actualizar.
- Actualice el recurso.
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si está creando una aplicación cliente mediante Java, incluya los archivos JAR necesarios. Si utiliza servicios web, incluya los archivos proxy.
Creación del cliente de servicios
Para poder leer un recurso mediante programación, debe establecer una conexión y proporcionar credenciales. Esto se logra creando un cliente de servicio.
Recupere el recurso que desea actualizar
Lea el recurso. Para obtener más información, consulte Leyendo recursos.
Actualizar el recurso
Establezca la nueva información en el recurso e invoque el método del servicio del repositorio para actualizar el recurso, especificando el URI, el recurso actualizado y cómo se debe actualizar la información de la versión.
Consulte también
Actualización de recursos mediante la API de Java
Actualización de recursos mediante la API de servicio web
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Inicio rápido de la API del servicio de repositorio
Actualización de recursos mediante la API de Java update-resources-using-the-java-api
Actualizar un recurso mediante la API de servicio de repositorio (Java):
-
Incluir archivos de proyecto
Incluya archivos JAR de cliente en la ruta de clase del proyecto Java.
-
Creación del cliente de servicios
Crear un
ResourceRepositoryClient
mediante su constructor y pasando un objetoServiceClientFactory
que contiene las propiedades de conexión. -
Recupere el recurso que desea actualizar
Especifique el URI del recurso para recuperar y leer el recurso. En este ejemplo, el URI del recurso es
"/testFolder/testResource"
. -
Actualizar el recurso
Actualice el
Resource
información del objeto. En este ejemplo, para actualizar la descripción, invoque elResource
del objetosetDescription
y pasar la nueva cadena de descripción como parámetro.A continuación, invoque el
ServiceClientFactory
del objetoupdateResource
y pase los siguientes parámetros:- A
java.lang.String
que contiene el URI del recurso. - El
Resource
que contiene la información actualizada del recurso. - A
boolean
valor que indica si se actualiza la versión principal o secundaria. En este ejemplo, un valor detrue
se pasa para indicar que la versión principal se va a incrementar.
- A
Consulte también
Inicio rápido (modo SOAP): Actualización de un recurso mediante la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Actualización de recursos mediante la API de servicio web update-resources-using-the-web-service-api
Actualizar un recurso mediante la API del repositorio (servicio web):
-
Incluir archivos de proyecto
- Cree un ensamblado de cliente de Microsoft .NET que consuma el WSDL del repositorio.
- Hacer referencia al ensamblado de cliente de Microsoft .NET.
-
Creación del cliente de servicios
Mediante el ensamblado de cliente de Microsoft .NET, cree un
RepositoryServiceService
invocando su constructor predeterminado. Establezca suCredentials
propiedad con unSystem.Net.NetworkCredential
que contiene el nombre de usuario y la contraseña. -
Recupere el recurso que desea actualizar
Especifique el URI del recurso que se va a recuperar y lea el recurso. En este ejemplo, el URI del recurso es
"/testFolder/testResource"
. Para obtener más información, consulte Leyendo recursos. -
Actualizar el recurso
Actualice el
Resource
información del objeto. En este ejemplo, para actualizar la descripción, asigne un nuevo valor alResource
del objetodescription
field. -
Invoque el
RepositoryServiceService
del objetoupdateResource
y pase los siguientes parámetros:- A
System.String
que contiene el URI del recurso. - El
Resource
que contiene la información actualizada del recurso. - A
boolean
valor que indica si se actualiza la versión principal o secundaria. En este ejemplo, un valor detrue
se pasa para indicar que la versión principal se va a incrementar. - Aprobado
null
para los dos parámetros restantes.
- A
Consulte también
Invocar AEM Forms con codificación Base64
Búsqueda de recursos searching-for-resources
Puede construir consultas utilizadas para buscar recursos en el repositorio, incluido el historial, los recursos relacionados y las propiedades.
Puede recuperar recursos relacionados para determinar las dependencias entre un formulario y sus fragmentos. Por ejemplo, si tiene un formulario, puede determinar qué fragmentos o recursos externos utiliza. Si tiene una imagen, también puede averiguar qué formularios utilizan la imagen. También puede buscar recursos relacionados utilizando el filtrado basado en propiedades. Por ejemplo, puede buscar todos los formularios que utilizan una imagen con un nombre especificado o cualquier imagen utilizada por un formulario con un nombre especificado. También puede buscar utilizando las propiedades del recurso. Por ejemplo, puede realizar una consulta para buscar todos los formularios o recursos cuyo nombre comience por una cadena determinada que puede incluir caracteres comodín "%" y "_". Recuerde que las búsquedas basadas en propiedades no se basan en relaciones; dichas búsquedas se basan en la suposición de que tiene conocimientos específicos sobre un recurso determinado.
Instrucciones de consulta
A query contiene una o más instrucciones unidas lógicamente con condiciones. A declaración consta de un operando izquierdo, un operador y un operando derecho. Además, puede especificar el criterio de ordenación que se utilizará para los resultados de búsqueda. El criterio de ordenación contiene información equivalente a un SQL ORDER BY
y se compone de elementos que contienen los atributos en los que se basó la búsqueda y un valor que indica si se va a utilizar en orden ascendente o descendente.
Puede buscar recursos mediante programación utilizando la API de Java del servicio de repositorio. En este momento, no es posible utilizar la API del servicio web para buscar recursos.
Comportamiento de ordenación
No se respeta el orden al invocar el ResourceRepositoryClient
del objeto searchProperties
y especificando un criterio de ordenación. Por ejemplo, suponga que crea un recurso con tres propiedades personalizadas, donde los nombres de atributo son name
, secondName
, y asecondName
. A continuación, cree un elemento de criterio de ordenación en el nombre de atributo y establezca el ascending
valor hasta true
.
A continuación, invoque la variable ResourceRepositoryClient
del objeto searchProperties
y pasar el criterio de ordenación. La búsqueda devuelve el recurso correcto, con las tres propiedades. Sin embargo, las propiedades no se ordenan por nombre de atributo. Se devuelven en el orden en que se agregaron: name
, secondName
, y asecondName
.
Resumen de los pasos summary_of_steps-5
Para buscar recursos, siga estos pasos:
- Incluir archivos de proyecto.
- Cree un cliente de servicio de Repositorio.
- Especifique la carpeta de destino para la búsqueda.
- Especifique los atributos utilizados en la búsqueda.
- Cree la consulta utilizada en la búsqueda.
- Cree el criterio de ordenación para los resultados de búsqueda.
- Busque los recursos.
- Recupere los recursos del resultado de la búsqueda.
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si está creando una aplicación cliente mediante Java, incluya los archivos JAR necesarios. Si utiliza servicios web, incluya los archivos proxy.
Creación del cliente de servicios
Para poder leer un recurso mediante programación, debe establecer una conexión y proporcionar credenciales. Esto se logra creando un cliente de servicio.
Especifique la carpeta de destino para la búsqueda
Cree una cadena que contenga la ruta base desde la que realizar la búsqueda. La sintaxis incluye barras diagonales, como en este ejemplo: "/ruta/carpeta".
Especifique los atributos utilizados en la búsqueda
Puede basar la búsqueda en los atributos contenidos en los recursos. Especifique los valores de los atributos en los que desea realizar la búsqueda.
Cree la consulta utilizada en la búsqueda
Construya una consulta utilizando instrucciones y condiciones. Cada instrucción especifica el atributo en el que se basará la búsqueda, la condición que se utilizará y el valor del atributo que se utilizará en la búsqueda.
Crear el criterio de ordenación para los resultados de búsqueda
El criterio de ordenación consta de elementos, cada uno de los cuales contiene uno de los atributos utilizados en la búsqueda y un valor que indica si se va a utilizar en orden ascendente o descendente.
Búsqueda de los recursos
Busque los recursos mediante la carpeta, la consulta y el criterio de ordenación. Además, indique la profundidad de la búsqueda y un límite superior en el número de resultados que se van a devolver.
Recuperación de los recursos del resultado de la búsqueda
Itere por la lista devuelta de recursos y extraiga la información para un procesamiento posterior.
Consulte también
Búsqueda de recursos mediante la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Inicio rápido de la API del servicio de repositorio
Búsqueda de recursos mediante la API de Java search-for-resources-using-the-java-api
Busque un recurso mediante la API de servicio de repositorio (Java):
-
Incluir archivos de proyecto
Incluya archivos JAR de cliente en la ruta de clase del proyecto Java.
-
Creación del cliente de servicios
Crear un
ResourceRepositoryClient
mediante su constructor y pasando un objetoServiceClientFactory
que contiene las propiedades de conexión. -
Especifique la carpeta de destino para la búsqueda
Especifique el URI de la ruta base desde la que se ejecutará la búsqueda. En este ejemplo, el URI del recurso es
/testFolder
. -
Especifique los atributos utilizados en la búsqueda
Especifique los valores de los atributos en los que desea realizar la búsqueda. Los atributos existen dentro de un
com.adobe.repository.infomodel.bean.Resource
objeto. En este ejemplo, la búsqueda se realizará en el atributo name; por lo tanto, unjava.lang.String
que contiene elResource
se utiliza el nombre del objeto, que estestResource
en este caso. -
Cree la consulta utilizada en la búsqueda
Para crear una consulta, cree un
com.adobe.repository.query.Query
invocando el constructor predeterminado para el objetoQuery
y agregue instrucciones a la consulta.Para crear una instrucción, invoque el constructor de la instrucción
com.adobe.repository.query.Query.Statement
y pasar los siguientes parámetros:- Operando izquierdo que contiene la constante de atributo de recurso. En este ejemplo, como el nombre del recurso se utiliza como base para la búsqueda, el valor estático
Resource.ATTRIBUTE_NAME
se utiliza. - Operador que contiene la condición utilizada en la búsqueda del atributo. El operador debe ser una de las constantes estáticas de
Query.Statement
clase. En este ejemplo, el valor estáticoQuery.Statement.OPERATOR_BEGINS_WITH
se utiliza. - Operando derecho que contiene el valor del atributo en el que se va a realizar la búsqueda. En este ejemplo, el atributo name, un
String
que contiene el valor"testResource"
, se utiliza.
Especifique el área de nombres del operando izquierdo invocando el
Query.Statement
del objetosetNamespace
y pasando uno de los valores estáticos contenidos en la variablecom.adobe.repository.infomodel.bean.ResourceProperty
clase. En este ejemplo, se utilizaResourceProperty.RESERVED_NAMESPACE_REPOSITORY
.Agregue cada instrucción a la consulta invocando el método
Query
del objetoaddStatement
método y pasando elQuery.Statement
objeto. - Operando izquierdo que contiene la constante de atributo de recurso. En este ejemplo, como el nombre del recurso se utiliza como base para la búsqueda, el valor estático
-
Crear el criterio de ordenación para los resultados de búsqueda
Para especificar el criterio de ordenación utilizado en los resultados de búsqueda, cree un
com.adobe.repository.query.sort.SortOrder
invocando el constructor predeterminado para el objetoSortOrder
y agregue elementos al criterio de ordenación.Para crear un elemento para el criterio de ordenación, invoque uno de los constructores para
com.adobe.repository.query.sort.SortOrder.Element
clase. En este ejemplo, como el nombre del recurso se utiliza como base para la búsqueda, el valor estáticoResource.ATTRIBUTE_NAME
se utiliza como primer parámetro y en orden ascendente (a)boolean
valor detrue
) se especifica como segundo parámetro.Agregue cada elemento al criterio de ordenación invocando la variable
SortOrder
del objetoaddSortElement
método y pasando elSortOrder.Element
objeto. -
Búsqueda de los recursos
Para buscar
resources
en función de las propiedades del atributo, invoque elResourceRepositoryClient
del objetosearchProperties
y pasar los siguientes parámetros:- A
String
que contiene la ruta base desde la que ejecutar la búsqueda. En este caso,"/testFolder"
se utiliza. - La consulta utilizada en la búsqueda.
- Profundidad de la búsqueda. En este caso,
com.adobe.repository.infomodel.bean.ResourceCollection.DEPTH_INFINITE
se utiliza para indicar que se van a utilizar la ruta base y todas sus carpetas. - Un
int
valor que indica la primera fila desde la que se selecciona el conjunto de resultados no paginado. En este ejemplo,0
se ha especificado. - Un
int
valor que indica el número máximo de resultados que se van a devolver. En este ejemplo,10
se ha especificado. - Orden utilizado en la búsqueda.
El método devuelve un valor
java.util.List
deResource
en el orden especificado. - A
-
Recuperación de los recursos del resultado de la búsqueda
Para recuperar los recursos contenidos en el resultado de búsqueda, itere a través de la variable
List
y convierta cada objeto en unaResource
para extraer su información. En este ejemplo, se muestra el nombre de cada recurso.
Consulte también
Inicio rápido (modo SOAP): Búsqueda de recursos mediante la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Creación de relaciones de recursos creating-resource-relationships
Puede especificar relaciones entre recursos en el repositorio. Existen tres tipos de relaciones:
- Dependencia: una relación en la que un recurso depende de otros recursos, lo que significa que todos los recursos relacionados son necesarios en el repositorio.
- Suscripción (sistema de archivos): una relación en la que un recurso se encuentra dentro de una carpeta determinada.
- Personalizado: una relación que especifique entre los recursos. Por ejemplo, si un recurso ha quedado obsoleto y otro introducido en el repositorio, puede especificar su propia relación de sustitución.
Puede crear sus propias relaciones personalizadas. Por ejemplo, si almacena un archivo de HTML en el repositorio y utiliza una imagen, puede especificar una relación personalizada para relacionar el archivo de HTML con la imagen (ya que normalmente solo los archivos XML están asociados a imágenes mediante una relación de dependencia definida en el repositorio). Otro ejemplo de relación personalizada sería si desea crear una vista diferente del repositorio con una estructura de gráficos cíclica en lugar de una estructura de árbol. Puede definir un gráfico circular junto con un visor para recorrer esas relaciones. Por último, puede indicar que un recurso reemplaza a otro aunque los dos recursos sean completamente diferentes. En ese caso, puede definir un tipo de relación fuera del intervalo reservado y crear una relación entre esos dos recursos. Su aplicación sería el único cliente que podría detectar y procesar la relación y se podría utilizar para realizar búsquedas sobre esa relación.
Puede especificar mediante programación relaciones entre recursos mediante la API de Java del servicio de repositorio o la API del servicio web.
Resumen de los pasos summary_of_steps-6
Para especificar una relación entre dos recursos, siga estos pasos:
- Incluir archivos de proyecto.
- Cree un cliente de servicio de Repositorio.
- Especifique los URI de los recursos que se van a relacionar.
- Cree la relación.
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si está creando una aplicación cliente mediante Java, incluya los archivos JAR necesarios. Si utiliza servicios web, incluya los archivos proxy.
Creación del cliente de servicios
Para poder leer un recurso mediante programación, debe establecer una conexión y proporcionar credenciales. Esto se logra creando un cliente de servicio.
Especifique los URI de los recursos que se van a relacionar
Cree cadenas que contengan los URI del recurso que desea relacionar. La sintaxis incluye barras diagonales, como en este ejemplo: "/ruta/resource".
Creación de la relación
Invoque el método de servicio Repositorio para crear y especificar el tipo de relación.
Consulte también
Creación de recursos de relación mediante la API de Java
Creación de recursos de relación mediante la API de servicio web
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Inicio rápido de la API del servicio de repositorio
Creación de recursos de relación mediante la API de Java create-relationship-resources-using-the-java-api
Cree recursos de relación mediante la API de Java del servicio de repositorio y realice las siguientes tareas:
-
Incluir archivos de proyecto
Incluya archivos JAR de cliente en la ruta de clase del proyecto Java.
-
Creación del cliente de servicios
Crear un
ResourceRepositoryClient
mediante su constructor y pasando un objetoServiceClientFactory
que contiene las propiedades de conexión. -
Especifique los URI de los recursos que se van a relacionar
Especifique los URI de los recursos que se van a relacionar. En este caso, debido a que los recursos se denominan
testResource1
ytestResource2
y se encuentran en la carpeta denominadatestFolder
, sus URI son"/testFolder/testResource1"
y"/testFolder/testResource2"
. Los URI se almacenan comojava.lang.String
objetos. En este ejemplo, los recursos se escriben primero en el repositorio y se recuperan sus URI. Para obtener más información sobre cómo escribir un recurso, consulte Recursos de escritura. -
Creación de la relación
Invoque el
ResourceRepositoryClient
del objetocreateRelationship
y pasar los siguientes parámetros:- URI del recurso de origen.
- URI del recurso de destino.
- El tipo de relación, que es una de las constantes estáticas de
com.adobe.repository.infomodel.bean.Relation
clase. En este ejemplo, se establece una relación de dependencia especificando el valorRelation.TYPE_DEPENDANT_OF
. - A
boolean
valor que indica si el recurso de destino se actualiza automáticamente alcom.adobe.repository.infomodel.Id
Identificador basado en del nuevo recurso de encabezado. En este ejemplo, debido a la relación de dependencia, el valortrue
se ha especificado.
También puede recuperar una lista de recursos relacionados para un recurso determinado invocando el método
ResourceRepositoryClient
del objetogetRelated
y pasando los siguientes parámetros:- URI del recurso para el que se recuperan los recursos relacionados. En este ejemplo, el recurso de origen (
"/testFolder/testResource1"
) se ha especificado. - A
boolean
valor que indica si el recurso especificado es el recurso de origen en la relación. En este ejemplo, el valortrue
se especifica porque este es el caso. - El tipo de relación, que es una de las constantes estáticas de
Relation
clase. En este ejemplo, se especifica una relación de dependencia utilizando el mismo valor utilizado anteriormente:Relation.TYPE_DEPENDANT_OF
.
El
getRelated
El método devuelve un valorjava.util.List
deResource
objetos a través de los cuales se puede iterar para recuperar cada uno de los recursos relacionados, convirtiendo los objetos contenidos en elList
hastaResource
mientras lo hace. En este ejemplo,testResource2
se espera que esté en la lista de recursos devueltos.
Consulte también
Creación de relaciones de recursos
Inicio rápido (modo SOAP): Creación de relaciones entre recursos mediante la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Creación de recursos de relación mediante la API de servicio web create-relationship-resources-using-the-web-service-api
Cree recursos de relación mediante la API del repositorio (servicio web):
-
Incluir archivos de proyecto
- Cree un ensamblado de cliente de Microsoft .NET que consuma el WSDL del repositorio.
- Hacer referencia al ensamblado de cliente de Microsoft .NET.
-
Creación del cliente de servicios
Mediante el ensamblado de cliente de Microsoft .NET, cree un
RepositoryServiceService
invocando su constructor predeterminado. Establezca suCredentials
propiedad con unSystem.Net.NetworkCredential
que contiene el nombre de usuario y la contraseña. -
Especifique los URI de los recursos que se van a relacionar
Especifique los URI de los recursos que se van a relacionar. En este caso, debido a que los recursos se denominan
testResource1
ytestResource2
y se encuentran en la carpeta denominadatestFolder
, sus URI son"/testFolder/testResource1"
y"/testFolder/testResource2"
. Cuando se utiliza un lenguaje compatible con Microsoft .NET Framework (por ejemplo, C#), los URI se almacenan comoSystem.String
objetos. En este ejemplo, los recursos se escriben primero en el repositorio y se recuperan sus URI. Para obtener más información sobre cómo escribir un recurso, consulte Recursos de escritura. -
Creación de la relación
Invoque el
RepositoryServiceService
del objetocreateRelationship
y pasar los siguientes parámetros:- URI del recurso de origen.
- URI del recurso de destino.
- El tipo de relación. En este ejemplo, se establece una relación de dependencia especificando el valor
3
. - A
boolean
valor que indica si se especificó el tipo de relación. En este ejemplo, el valortrue
se ha especificado. - A
boolean
valor que indica si el recurso de destino se actualiza automáticamente alId
Identificador basado en del nuevo recurso de encabezado. En este ejemplo, debido a la relación de dependencia, el valortrue
se ha especificado. - A
boolean
valor que indica si se especificó el encabezado de destinatario. En este ejemplo, el valortrue
se ha especificado. - Aprobado
null
para el último parámetro.
También puede recuperar una lista de recursos relacionados para un recurso determinado invocando el método
RepositoryServiceService
del objetogetRelated
y pasando los siguientes parámetros:- URI del recurso para el que se recuperan los recursos relacionados. En este ejemplo, el recurso de origen (
"/testFolder/testResource1"
) se ha especificado. - A
boolean
valor que indica si el recurso especificado es el recurso de origen en la relación. En este ejemplo, el valortrue
se especifica porque este es el caso. - A
boolean
valor que indica si se especificó el recurso de origen. En este ejemplo, el valortrue
se proporciona. - Matriz de enteros que contiene los tipos de relación. En este ejemplo, se especifica una relación de dependencia utilizando el mismo valor en la matriz que se utilizó anteriormente:
3
. - Aprobado
null
para los dos parámetros restantes.
El
getRelated
método devuelve una matriz de objetos a los que se puede convertirResource
objetos a través de los cuales se puede iterar para recuperar cada uno de los recursos relacionados. En este ejemplo,testResource2
se espera que esté en la lista de recursos devueltos.
Consulte también
Creación de relaciones de recursos
Invocar AEM Forms con codificación Base64
Bloqueo de recursos locking-resources
Puede bloquear un recurso o un conjunto de recursos para su uso exclusivo por parte de un usuario en particular o para su uso compartido entre más de un usuario. Un bloqueo compartido es una indicación de que algo sucederá con el recurso, pero no impide que otra persona realice acciones con ese recurso. Un bloqueo compartido debe considerarse un mecanismo de señalización. Un bloqueo exclusivo significa que el usuario que bloqueó el recurso va a cambiar el recurso y el bloqueo garantiza que nadie más pueda hacerlo hasta que el usuario ya no necesite acceso al recurso y haya liberado el bloqueo. Si un administrador del repositorio desbloquea un recurso, todos los bloqueos exclusivos y compartidos de ese recurso se eliminarán automáticamente. Este tipo de acción está diseñado para situaciones en las que un usuario ya no está disponible y no ha desbloqueado el recurso.
Cuando un recurso está bloqueado, aparece un icono de bloqueo al ver la pestaña Recursos en Workbench, como se muestra en la siguiente ilustración.
Puede controlar mediante programación el acceso a los recursos mediante la API de Java del servicio de repositorio o la API del servicio web.
Resumen de los pasos summary_of_steps-7
Para bloquear y desbloquear recursos, siga estos pasos:
- Incluir archivos de proyecto.
- Cree un cliente de servicio de Repositorio.
- Especifique el URI del recurso que se va a bloquear.
- Bloquee el recurso.
- Recupere los bloqueos del recurso.
- Desbloquear el recurso
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si está creando una aplicación cliente mediante Java, incluya los archivos JAR necesarios. Si utiliza servicios web, incluya los archivos proxy.
Creación del cliente de servicios
Para poder leer un recurso mediante programación, debe establecer una conexión y proporcionar credenciales. Esto se logra creando un cliente de servicio.
Especifique el URI del recurso que desea bloquear
Cree una cadena que contenga el URI del recurso que se va a bloquear. La sintaxis incluye barras diagonales, como en este ejemplo: "/ruta/resource".
Bloquear el recurso
Invoque el método del servicio de repositorio para bloquear el recurso, especificando el URI, el tipo de bloqueo y la profundidad de bloqueo.
Recuperar los bloqueos del recurso
Invoque el método del Servicio de repositorio para recuperar los bloqueos del recurso y especificar el URI.
Desbloquear el recurso
Invoque el método del Servicio de repositorio para desbloquear el recurso y especificar el URI.
Consulte también
Bloqueo de recursos mediante la API de Java
Bloqueo de recursos mediante la API de servicio web
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Inicio rápido de la API del servicio de repositorio
Bloqueo de recursos mediante la API de Java lock-resources-using-the-java-api
Bloqueo de recursos mediante la API de servicio de repositorio (Java):
-
Incluir archivos de proyecto
Incluya archivos JAR de cliente en la ruta de clase del proyecto Java.
-
Creación del cliente de servicios
Crear un
ResourceRepositoryClient
mediante su constructor y pasando un objetoServiceClientFactory
que contiene las propiedades de conexión. -
Especifique el URI del recurso que desea bloquear
Especifique el URI del recurso que se va a bloquear. En este caso, debido a que el recurso denominado
testResource
se encuentra en la carpeta denominadatestFolder
, su URI es"/testFolder/testResource"
. El URI se almacena comojava.lang.String
objeto. -
Bloquear el recurso
Invoque el
ResourceRepositoryClient
del objetolockResource
y pasar los siguientes parámetros:- URI del recurso.
- El ámbito de bloqueo. En este ejemplo, como el recurso estará bloqueado para uso exclusivo, el ámbito de bloqueo se especifica como
com.adobe.repository.infomodel.bean.Lock.SCOPE_EXCLUSIVE
. - La profundidad del bloqueo. En este ejemplo, debido a que el bloqueo se aplicará sólo al recurso concreto y a ninguno de sus miembros o hijos, la profundidad de bloqueo se especifica como
Lock.DEPTH_ZERO
.
note note NOTE La versión sobrecargada del lockResource
que requiere cuatro parámetros y genera una excepción. Asegúrese de utilizar ellockResource
que requiere tres parámetros, como se muestra en este tutorial. -
Recuperar los bloqueos del recurso
Invoque el
ResourceRepositoryClient
del objetogetLocks
y pase el URI del recurso como parámetro. El método devuelve un objeto List of Lock a través del cual se puede iterar. En este ejemplo, el propietario, la profundidad y el ámbito del bloqueo se imprimen para cada objeto invocando el de cada objeto LockgetOwnerUserId
,getDepth
, ygetType
métodos, respectivamente. -
Desbloquear el recurso
Invoque el
ResourceRepositoryClient
del objetounlockResource
y pase el URI del recurso como parámetro. Para obtener más información, consulte la Referencia de API de AEM Forms.
Consulte también
Inicio rápido (modo SOAP): Bloqueo de un recurso mediante la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Bloqueo de recursos mediante la API de servicio web lock-resources-using-the-web-service-api
Bloqueo de recursos mediante la API del servicio de repositorio (servicio web):
-
Incluir archivos de proyecto
- Cree un ensamblado de cliente de Microsoft .NET que consuma el WSDL del repositorio utilizando Base64.
- Hacer referencia al ensamblado de cliente de Microsoft .NET.
-
Creación del cliente de servicios
Mediante el ensamblado de cliente de Microsoft .NET, cree un
RepositoryServiceService
invocando su constructor predeterminado. Establezca suCredentials
propiedad con unSystem.Net.NetworkCredential
que contiene el nombre de usuario y la contraseña. -
Especifique el URI del recurso que desea bloquear
Especifique una cadena que contenga el URI del recurso que se va a bloquear. En este caso, debido a que el recurso denominado
testResource
está en la carpetatestFolder
, su URI es"/testFolder/testResource"
. Cuando utilice un lenguaje compatible con Microsoft .NET Framework (por ejemplo, C#), almacene el URI en unaSystem.String
objeto. -
Bloquear el recurso
Invoque el
RepositoryServiceService
del objetolockResource
y pasar los siguientes parámetros:- URI del recurso.
- El ámbito de bloqueo. En este ejemplo, como el recurso estará bloqueado para uso exclusivo, el ámbito de bloqueo se especifica como
11
. - La profundidad del bloqueo. En este ejemplo, debido a que el bloqueo se aplicará sólo al recurso concreto y a ninguno de sus miembros o hijos, la profundidad de bloqueo se especifica como
2
. - Un
int
valor que indica el número de segundos hasta que caduca el bloqueo. En este ejemplo, el valor de1000
se utiliza. - Aprobado
null
para el último parámetro.
-
Recuperar los bloqueos del recurso
Invoque el
RepositoryServiceService
del objetogetLocks
y pasan el URI del recurso como primer parámetro ynull
para el segundo parámetro. El método devuelve un valorobject
matriz que contieneLock
objetos a través de los cuales se puede iterar. En este ejemplo, el propietario del bloqueo, la profundidad y el ámbito se imprimen para cada objeto accediendo a cada unoLock
del objetoownerUserId
,depth
, ytype
Campos, respectivamente. -
Desbloquear el recurso
Invoque el
RepositoryServiceService
del objetounlockResource
y pasan el URI del recurso como primer parámetro ynull
para el segundo parámetro.
Consulte también
Invocar AEM Forms con codificación Base64
Eliminación de recursos deleting-resources
Puede eliminar recursos mediante programación de una ubicación determinada del repositorio mediante la API Java del servicio de repositorio (SOAP).
Cuando se elimina un recurso, la eliminación suele ser permanente, aunque en algunos casos los repositorios de ECM pueden almacenar las versiones del recurso según sus mecanismos de historial. Por lo tanto, al eliminar un recurso, es importante asegurarse de que nunca más necesitará ese recurso. Los motivos comunes para eliminar un recurso incluyen la necesidad de aumentar el espacio disponible en la base de datos. Puede eliminar una versión de un recurso, pero si lo hace debe especificar el identificador del recurso y no su identificador lógico (LID) o ruta de acceso. Si elimina una carpeta, se eliminará automáticamente todo el contenido de la misma, incluidas las subcarpetas y los recursos.
Los recursos relacionados no se eliminan. Por ejemplo, si tiene un formulario que utiliza el archivo logo.gif y elimina logo.gif, se almacenará una relación en la tabla de relaciones pendientes. Como alternativa, para la obsolescencia de la versión, establezca el estado de objeto de la última versión como obsoleto.
Una operación de eliminación no es segura para transacciones en sistemas ECM. Por ejemplo, si intenta eliminar 100 recursos y la operación falla en el recurso número 50, las primeras 49 instancias se eliminarán, pero el resto no. De lo contrario, el comportamiento predeterminado es rollback (sin compromiso).
com.adobe.repository.bindings.dsc.client.ResourceRepositoryClient.deleteResources()
método con el repositorio de ECM (EMC Documentum Content Server y IBM FileNet P8 Content Manager), la transacción no se revertirá si la eliminación falla en uno de los recursos especificados, lo que significa que los archivos que se han eliminado no se pueden deshacer.Resumen de los pasos summary_of_steps-8
Para eliminar un recurso, siga estos pasos:
- Incluir archivos de proyecto.
- Cree un cliente de servicio de Repositorio.
- Especifique el URI del recurso que se va a eliminar.
- Elimine el recurso.
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si está creando una aplicación cliente mediante Java, incluya los archivos JAR necesarios. Si utiliza servicios web, incluya los archivos proxy.
Creación del cliente de servicios
Para poder leer un recurso mediante programación, debe establecer una conexión y proporcionar credenciales. Esto se logra creando un cliente de servicio.
Especifique el URI del recurso que desea eliminar
Cree una cadena que contenga el URI del recurso que se va a eliminar. La sintaxis incluye barras diagonales, como en este ejemplo: "/ruta/resource". Si el recurso que se va a eliminar es una carpeta, la eliminación será recursiva.
Eliminar el recurso
Invoque el método del servicio del repositorio para eliminar el recurso y especifique el URI.
Consulte también
Eliminación de recursos mediante la API de Java
Eliminación de recursos mediante la API de servicio web
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Inicio rápido de la API del servicio de repositorio
Eliminación de recursos mediante la API de Java (SOAP) delete-resources-using-the-java-api-soap
Elimine un recurso mediante la API del repositorio (Java):
-
Incluir archivos de proyecto
Incluya archivos JAR de cliente en la ruta de clase del proyecto Java.
-
Creación del cliente de servicios
Crear un
ResourceRepositoryClient
mediante su constructor y pasando un objetoServiceClientFactory
que contiene las propiedades de conexión. -
Especifique el URI del recurso que desea eliminar
Especifique el URI del recurso que se va a recuperar. En este caso, como el recurso denominado testResourceToBeDeleted se encuentra en la carpeta denominada testFolder, su URI es
/testFolder/testResourceToBeDeleted
. El URI se almacena comojava.lang.String
objeto. En este ejemplo, el recurso se escribe primero en el repositorio y se recupera su URI. Para obtener más información sobre cómo escribir un recurso, consulte Recursos de escritura. -
Eliminar el recurso
Invoque el
ResourceRepositoryClient
del objetodeleteResource
y pase el URI del recurso como parámetro.
Consulte también
Inicio rápido (modo SOAP): Búsqueda de recursos mediante la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Eliminación de recursos mediante la API de servicio web delete-resources-using-the-web-service-api
Eliminar un recurso mediante la API del repositorio (servicio web):
-
Incluir archivos de proyecto
- Cree un ensamblado de cliente de Microsoft .NET que consuma el WSDL del repositorio utilizando Base64.
- Hacer referencia al ensamblado de cliente de Microsoft .NET.
-
Creación del cliente de servicios
Mediante el ensamblado de cliente de Microsoft .NET, cree un
RepositoryServiceService
invocando su constructor predeterminado. Establezca suCredentials
propiedad con unSystem.Net.NetworkCredential
que contiene el nombre de usuario y la contraseña. -
Especifique el URI del recurso que desea eliminar
Especifique el URI del recurso que se va a recuperar. En este caso, debido a que el recurso denominado
testResourceToBeDeleted
se encuentra en la carpeta denominadatestFolder
, su URI es"/testFolder/testResourceToBeDeleted"
. En este ejemplo, el recurso se escribe primero en el repositorio y se recupera su URI. Para obtener más información sobre cómo escribir un recurso, consulte Recursos de escritura. -
Eliminar el recurso
Invoque el
RepositoryServiceService
del objetodeleteResources
método y pase unSystem.String
matriz que contiene el URI del recurso como primer parámetro. Aprobadonull
para el segundo parámetro.
Consulte también
Invocar AEM Forms con codificación Base64