Trabajar con el repositorio de AEM Forms working-with-aem-forms-repository
Las muestras y 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 una aplicación 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, vea la siguiente aplicación de Forms denominada Applications/FormsApplication:
Observe que hay un archivo denominado Loan.xdp en la carpeta FormsFolder. Para tener acceso a este diseño de formulario, especifique la ruta de acceso 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. SOAP (Consulte Inicio rápido (modo de): 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. Ver recursos de lista.
- Recursos de lectura y sus propiedades. Ver 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.
Crear el cliente de servicio
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.
Crear 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.
Escriba 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
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
Cree un objeto
ResourceRepositoryClient
utilizando su constructor y pasando un objetoServiceClientFactory
que contenga propiedades de conexión. -
Cree la carpeta
Para crear una colección de recursos, primero debe crear un objeto
com.adobe.repository.infomodel.bean.RepositoryInfomodelFactoryBean
.Invoque el método
newResourceCollection
del objetorepositoryInfomodelFactoryBean
y pase los parámetros siguientes:- Identificador de UUID
com.adobe.repository.infomodel.Id
que se va a asignar al recurso. - Identificador de UUID
com.adobe.repository.infomodel.Lid
que se va a asignar al recurso. java.lang.String
que contiene el nombre de la colección de recursos. Por ejemplo,FormsFolder
.
El método devuelve un objeto
com.adobe.repository.infomodel.bean.ResourceCollection
que representa la nueva carpeta.Establezca la descripción de la carpeta mediante el método
setDescription
y pase el siguiente parámetro:String
que describe la colección de recursos. En este ejemplo,"test Folder"
se usa.
- Identificador de UUID
-
Escribir la carpeta en el repositorio
Invoque el método
writeResource
del objetoResourceRepositoryClient
y pase el URI de la carpeta y el objetoResourceCollection
. Por ejemplo, el URI de la carpeta puede ser el siguiente valor/Applications/FormsApplication/1.0/
.El método devuelve una instancia del objeto
com.adobe.repository.infomodel.bean.Resource
recién creado. Por ejemplo, puede recuperar el valor del identificador del nuevo recurso invocando el métodogetId
del objetocom.adobe.repository.infomodel.bean.Resource
.
Consulte también
SOAP Inicio rápido (modo de): Creación de una carpeta mediante la API de Java
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 objeto
RepositoryServiceService
invocando su constructor predeterminado. Establezca su propiedadCredentials
mediante un objetoSystem.Net.NetworkCredential
que contenga el nombre de usuario y la contraseña. -
Cree la carpeta
Cree la carpeta utilizando el constructor predeterminado para la clase
ResourceCollection
y pase los parámetros siguientes:- Un objeto
Id
, que se crea invocando el constructor predeterminado de la claseId
y se asigna al campoid
del objetoResource
. - Un objeto
Lid
, que se crea invocando el constructor predeterminado de la claseLid
y se asigna al campolid
del objetoResource
. - Cadena que contiene el nombre de la colección de recursos, que se asigna al campo
name
del objetoResource
. El nombre usado en este ejemplo es"testfolder"
. - Cadena que contiene la descripción de la colección de recursos, asignada al campo
description
del objetoResource
. La descripción utilizada en este ejemplo es"test folder"
.
- Un objeto
-
Escribir la carpeta en el repositorio
Invoque el método
writeResource
del objetoRepositoryServiceService
y pase los parámetros siguientes:- Ruta de acceso donde se creará la carpeta.
- El objeto
ResourceCollection
que representa la carpeta. - Pase
null
para los otros dos parámetros.
Consulte también
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.
Crear el cliente de servicio
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".
Crear el 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.
Especifique el contenido del recurso
Invoque el método del servicio Repositorio para crear contenido de recursos y almacenarlo en el recurso.
Escriba 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
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
Cree un objeto
ResourceRepositoryClient
utilizando su constructor y pasando un objetoServiceClientFactory
que contenga 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, como el recurso denominado
testResource
se almacenará en la carpeta denominadatestFolder
, el URI de la carpeta es"/testFolder"
. El URI se almacena como un objetojava.lang.String
. -
Creación del recurso
Para crear un recurso, primero debe crear un objeto
com.adobe.repository.infomodel.bean.RepositoryInfomodelFactoryBean
.Invoque el método
newResource
del objetoRepositoryInfomodelFactoryBean
, que crea un objetocom.adobe.repository.infomodel.bean.Resource
. En este ejemplo, se proporcionan los siguientes parámetros:- Un objeto
com.adobe.repository.infomodel.Id
, que se crea invocando el constructor predeterminado de la claseId
. - Un objeto
com.adobe.repository.infomodel.Lid
, que se crea invocando el constructor predeterminado de la claseLid
. java.lang.String
que contiene el nombre de archivo del recurso.
Para especificar la descripción del recurso, invoque el método
setDescription
del objetoResource
y pase una cadena que contenga la descripción. En este ejemplo, la descripción es"test resource"
. - Un objeto
-
Especificar el contenido del recurso
Para crear contenido para el recurso, invoque el método
newResourceContent
del objetoRepositoryInfomodelFactoryBean
, que devuelve un objetocom.adobe.repository.infomodel.bean.ResourceContent
. Agregar contenido al objetoResourceContent
. En este ejemplo, esto se logra haciendo las siguientes tareas:- Invocando el método
setDataDocument
del objetoResourceContent
y pasando un objetocom.adobe.idp.Document
- Invocando el método
setSize
del objetoResourceContent
y pasando el tamaño en bytes del objetoDocument
Agregue el contenido al recurso invocando el método
setContent
del objetoResource
y pasando el objetoResourceContent
. Para obtener más información, consulte Referencia de la API de AEM Forms. - Invocando el método
-
Escribir el recurso en la carpeta de destino
Invoque el método
writeResource
del objetoResourceRepositoryClient
y pase el URI de la carpeta y el objetoResource
.
Consulte también
SOAP Inicio rápido (modo de): Escritura de un recurso mediante la API de Java
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 objeto
RepositoryServiceService
invocando su constructor predeterminado. Establezca su propiedadCredentials
mediante un objetoSystem.Net.NetworkCredential
que contenga 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, como el recurso denominado
testResource
se almacenará 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 un objetoSystem.String
. -
Creación del recurso
Para crear un recurso, invoque el constructor predeterminado para la clase
Resource
. En este ejemplo, la siguiente información está almacenada en el objetoResource
:- Un objeto
com.adobe.repository.infomodel.Id
, que se crea invocando el constructor predeterminado de la claseId
y se asigna al campoid
del objetoResource
. - Un objeto
com.adobe.repository.infomodel.Lid
, que se crea invocando el constructor predeterminado de la claseLid
y se asigna al campolid
del objetoResource
. - Cadena que contiene el nombre de archivo del recurso, que se ha asignado al campo
name
del objetoResource
. El nombre usado en este ejemplo es"testResource"
. - Cadena que contiene la descripción del recurso, que se ha asignado al campo
description
del objetoResource
. La descripción utilizada en este ejemplo es"test resource"
.
- Un objeto
-
Especificar el contenido del recurso
Para crear contenido para el recurso, invoque el constructor predeterminado para la clase
ResourceContent
. Luego agregue contenido al objetoResourceContent
. En este ejemplo, esto se logra haciendo las siguientes tareas:- Asignando un objeto
BLOB
que contenga un documento al campodataDocument
del objetoResourceContent
. - Asignando el tamaño en bytes del objeto
BLOB
al camposize
del objetoResourceContent
.
Agregue el contenido al recurso asignando el objeto
ResourceContent
al campocontent
del objetoResource
. - Asignando un objeto
-
Escribir el recurso en la carpeta de destino
Invoque el método
writeResource
del objetoRepositoryServiceService
y pase el URI de la carpeta y el objetoResource
. Pasenull
para los otros dos parámetros.
Consulte también
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.
Crear el cliente de servicio
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.
Especifique 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".
Recuperar 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
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
Cree un objeto
ResourceRepositoryClient
utilizando su constructor y pasando un objetoServiceClientFactory
que contenga 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 como un objetojava.lang.String
. -
Recuperación de la lista de recursos
Invoque el método
listMembers
del objetoResourceRepositoryClient
y pase el URI de la carpeta.El método devuelve un objeto
java.util.List
decom.adobe.repository.infomodel.bean.Resource
que es el origen de un objetocom.adobe.repository.infomodel.bean.Relation
de tipoRelation.TYPE_MEMBER_OF
y que tiene como destino el URI de la colección de recursos. Puede iterar a través de este(a)List
para recuperar cada uno de los recursos. En este ejemplo, se muestra el nombre y la descripción de cada recurso.
Consulte también
SOAP Inicio rápido (modo de): Enumeración de recursos mediante la API de Java
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 objeto
RepositoryServiceService
invocando su constructor predeterminado. Establezca su propiedadCredentials
mediante un objetoSystem.Net.NetworkCredential
que contenga 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 un objetoSystem.String
. -
Recuperación de la lista de recursos
Invoque el método
listMembers
del objetoRepositoryServiceService
y pase el URI de la carpeta como el primer parámetro. Pasenull
para los otros dos parámetros.El método devuelve una matriz de objetos que se pueden convertir en
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
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:
- traverse: permite enumerar recursos; es decir, leer metadatos de recursos, pero no contenido de recursos
- leer: permite leer el contenido del recurso
- write: permite escribir contenido de recursos
- administrar 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.
Crear el cliente de servicio
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 se va a 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/recurso".
Leer el medio
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
Cree un objeto
ResourceRepositoryClient
utilizando su constructor y pasando un objetoServiceClientFactory
que contenga 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 método
readResource
del objetoResourceRepositoryClient
y pase el URI del recurso como parámetro. Este método devuelve una instanciaResource
que representa el recurso.
Consulte también
SOAP Inicio rápido (modo de): Lectura de un recurso mediante la API de Java
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. (Vea Crear un ensamblado de cliente .NET que utiliza codificación Base64.)
- Hacer referencia al ensamblado de cliente de Microsoft .NET. (Vea Crear un ensamblado de cliente .NET que utiliza codificación Base64.)
-
Creación del cliente de servicios
Mediante el ensamblado de cliente de Microsoft .NET, cree un objeto
RepositoryServiceService
invocando su constructor predeterminado. Establezca su propiedadCredentials
mediante un objetoSystem.Net.NetworkCredential
que contenga 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, como 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 un objetoSystem.String
. -
Leer el recurso
Invoque el método
readResource
del objetoRepositoryServiceService
y pase el URI del recurso como primer parámetro. Pasenull
para los otros dos parámetros.
Consulte también
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.
Crear el cliente de servicio
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 Recursos de lectura.
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
Cree un objeto
ResourceRepositoryClient
utilizando su constructor y pasando un objetoServiceClientFactory
que contenga 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 la información del objeto
Resource
. En este ejemplo, para actualizar la descripción, invoque el métodosetDescription
del objetoResource
y pase la nueva cadena de descripción como parámetro.A continuación, invoque el método
updateResource
del objetoServiceClientFactory
y pase los parámetros siguientes:- Un objeto
java.lang.String
que contiene el URI del recurso. - El objeto
Resource
que contiene la información de recursos actualizada. - Un valor
boolean
que indica si se debe actualizar la versión principal o secundaria. En este ejemplo, se pasa un valor detrue
para indicar que se va a incrementar la versión principal.
- Un objeto
Consulte también
SOAP Inicio rápido (modo de): Actualización de un recurso mediante la API de Java
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 objeto
RepositoryServiceService
invocando su constructor predeterminado. Establezca su propiedadCredentials
mediante un objetoSystem.Net.NetworkCredential
que contenga 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 Recursos de lectura. -
Actualizar el recurso
Actualice la información del objeto
Resource
. En este ejemplo, para actualizar la descripción, asigne un nuevo valor al campodescription
del objetoResource
. -
Invoque el método
updateResource
del objetoRepositoryServiceService
y pase los parámetros siguientes:- Un objeto
System.String
que contiene el URI del recurso. - El objeto
Resource
que contiene la información de recursos actualizada. - Un valor
boolean
que indica si se debe actualizar la versión principal o secundaria. En este ejemplo, se pasa un valor detrue
para indicar que se va a incrementar la versión principal. - Pase
null
para los dos parámetros restantes.
- Un objeto
Consulte también
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
Una consulta contiene una o más instrucciones unidas lógicamente con condiciones. Una instrucció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 una cláusula SQL ORDER BY
y está compuesto por elementos que contienen los atributos en los que se basa 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 criterio de ordenación al invocar el método searchProperties
del objeto ResourceRepositoryClient
y al especificar 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 valor ascending
en true
.
A continuación, invoca el método searchProperties
del objeto ResourceRepositoryClient
y pasa 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.
Crear el cliente de servicio
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.
Crear la consulta usada 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.
Buscar 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.
Recuperar 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
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
Cree un objeto
ResourceRepositoryClient
utilizando su constructor y pasando un objetoServiceClientFactory
que contenga 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 objeto
com.adobe.repository.infomodel.bean.Resource
. En este ejemplo, la búsqueda se realizará en el atributo name; por lo tanto, se utiliza unjava.lang.String
que contiene el nombre del objetoResource
, que estestResource
en este caso. -
Cree la consulta utilizada en la búsqueda
Para crear una consulta, cree un objeto
com.adobe.repository.query.Query
invocando el constructor predeterminado de la claseQuery
y agregue instrucciones a la consulta.Para crear una instrucción, invoque el constructor de la clase
com.adobe.repository.query.Query.Statement
y pase los parámetros siguientes:- 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, se utiliza el valor estático
Resource.ATTRIBUTE_NAME
. - Operador que contiene la condición utilizada en la búsqueda del atributo. El operador debe ser una de las constantes estáticas de la clase
Query.Statement
. En este ejemplo, se utiliza el valor estáticoQuery.Statement.OPERATOR_BEGINS_WITH
. - Operando derecho que contiene el valor del atributo en el que se va a realizar la búsqueda. En este ejemplo, se utiliza el atributo name, un
String
que contiene el valor"testResource"
.
Especifique el espacio de nombres del operando izquierdo invocando el método
setNamespace
del objetoQuery.Statement
y pasando uno de los valores estáticos contenidos en la clasecom.adobe.repository.infomodel.bean.ResourceProperty
. En este ejemplo, se utilizaResourceProperty.RESERVED_NAMESPACE_REPOSITORY
.Agregue cada instrucción a la consulta invocando el método
addStatement
del objetoQuery
y pasando el objetoQuery.Statement
. - 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, se utiliza 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 objeto
com.adobe.repository.query.sort.SortOrder
invocando el constructor predeterminado de la claseSortOrder
y agregue elementos al criterio de ordenación.Para crear un elemento para el criterio de ordenación, invoque uno de los constructores de la clase
com.adobe.repository.query.sort.SortOrder.Element
. En este ejemplo, como el nombre del recurso se usa como base para la búsqueda, el valor estáticoResource.ATTRIBUTE_NAME
se usa como primer parámetro y el orden ascendente (un valorboolean
detrue
) se especifica como segundo parámetro.Agregue cada elemento al orden invocando el método
addSortElement
del objetoSortOrder
y pasando el objetoSortOrder.Element
. -
Búsqueda de los recursos
Para buscar
resources
en función de las propiedades de atributo, invoque el métodosearchProperties
del objetoResourceRepositoryClient
y pase los parámetros siguientes:- Un(a)
String
que contiene la ruta base desde la cual ejecutar la búsqueda. En este caso, se utiliza"/testFolder"
. - La consulta utilizada en la búsqueda.
- Profundidad de la búsqueda. En este caso,
com.adobe.repository.infomodel.bean.ResourceCollection.DEPTH_INFINITE
se usa para indicar que se va a usar la ruta de acceso base y todas sus carpetas. - Un valor
int
que indica la primera fila desde la que se selecciona el conjunto de resultados no paginado. En este ejemplo, se ha especificado0
. - Un valor
int
que indica el número máximo de resultados que se van a devolver. En este ejemplo, se ha especificado10
. - Orden utilizado en la búsqueda.
El método devuelve un objeto
java.util.List
deResource
en el criterio de ordenación especificado. - Un(a)
-
Recuperación de los recursos del resultado de la búsqueda
Para recuperar los recursos contenidos en el resultado de la búsqueda, itere a través de
List
y convierta cada objeto en unResource
para extraer su información. En este ejemplo, se muestra el nombre de cada recurso.
Consulte también
SOAP Inicio rápido (modo de): Búsqueda de recursos mediante la API de Java
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.
- Pertenencia (sistema de archivos): relación en la que se encuentra un recurso dentro de una carpeta determinada.
- Personalizado: una relación que usted especifica 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.
Crear el cliente de servicio
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/recurso".
Crear 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
Cree un objeto
ResourceRepositoryClient
utilizando su constructor y pasando un objetoServiceClientFactory
que contenga 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, como 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 como objetosjava.lang.String
. 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, vea Escribir recursos. -
Creación de la relación
Invoque el método
createRelationship
del objetoResourceRepositoryClient
y pase los parámetros siguientes:- URI del recurso de origen.
- URI del recurso de destino.
- El tipo de relación, que es una de las constantes estáticas de la clase
com.adobe.repository.infomodel.bean.Relation
. En este ejemplo, se establece una relación de dependencia especificando el valorRelation.TYPE_DEPENDANT_OF
. - Un valor
boolean
que indica si el recurso de destino se actualiza automáticamente al identificador basado encom.adobe.repository.infomodel.Id
del nuevo recurso de encabezado. En este ejemplo, debido a la relación de dependencia, se especifica el valortrue
.
También puede recuperar una lista de recursos relacionados para un recurso determinado invocando el método
getRelated
del objetoResourceRepositoryClient
y pasando los parámetros siguientes:- URI del recurso para el que se recuperan los recursos relacionados. En este ejemplo, se especifica el recurso de origen (
"/testFolder/testResource1"
). - Un valor
boolean
que indica si el recurso especificado es el recurso de origen en la relación. En este ejemplo, se especifica el valortrue
porque este es el caso. - El tipo de relación, que es una de las constantes estáticas de la clase
Relation
. En este ejemplo, se especifica una relación de dependencia utilizando el mismo valor utilizado anteriormente:Relation.TYPE_DEPENDANT_OF
.
El método
getRelated
devuelve un objetojava.util.List
deResource
a través del cual puede iterar para recuperar cada uno de los recursos relacionados, convirtiendo los objetos contenidos enList
aResource
mientras lo hace. En este ejemplo, se espera quetestResource2
esté en la lista de recursos devueltos.
Consulte también
Creación de relaciones de recursos
SOAP Inicio rápido (modo de): Creación de relaciones entre recursos mediante la API de Java
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 objeto
RepositoryServiceService
invocando su constructor predeterminado. Establezca su propiedadCredentials
mediante un objetoSystem.Net.NetworkCredential
que contenga 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, como 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 como objetosSystem.String
. 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, vea Escribir recursos. -
Creación de la relación
Invoque el método
createRelationship
del objetoRepositoryServiceService
y pase los parámetros siguientes:- 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
. - Un valor
boolean
que indica si se especificó el tipo de relación. En este ejemplo, se especifica el valortrue
. - Un valor
boolean
que indica si el recurso de destino se actualiza automáticamente al identificador basado enId
del nuevo recurso de encabezado. En este ejemplo, debido a la relación de dependencia, se especifica el valortrue
. - Un valor
boolean
que indica si se especificó el encabezado de destino. En este ejemplo, se especifica el valortrue
. - Pase
null
para el último parámetro.
También puede recuperar una lista de recursos relacionados para un recurso determinado invocando el método
getRelated
del objetoRepositoryServiceService
y pasando los parámetros siguientes:- URI del recurso para el que se recuperan los recursos relacionados. En este ejemplo, se especifica el recurso de origen (
"/testFolder/testResource1"
). - Un valor
boolean
que indica si el recurso especificado es el recurso de origen en la relación. En este ejemplo, se especifica el valortrue
porque este es el caso. - Un valor
boolean
que indica si se especificó el recurso de origen. En este ejemplo, se proporciona el valortrue
. - 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
. - Pase
null
para los dos parámetros restantes.
El método
getRelated
devuelve una matriz de objetos que se pueden convertir enResource
objetos a través de los cuales se puede iterar para recuperar cada uno de los recursos relacionados. En este ejemplo, se espera quetestResource2
esté en la lista de recursos devueltos.
Consulte también
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.
Crear el cliente de servicio
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 se va a 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/recurso".
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
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
Cree un objeto
ResourceRepositoryClient
utilizando su constructor y pasando un objetoServiceClientFactory
que contenga 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, como el recurso denominado
testResource
se encuentra en la carpeta denominadatestFolder
, su URI es"/testFolder/testResource"
. El URI se almacena como un objetojava.lang.String
. -
Bloquear el recurso
Invoque el método
lockResource
del objetoResourceRepositoryClient
y pase los parámetros siguientes:- URI del recurso.
- El ámbito de bloqueo. En este ejemplo, dado que el recurso se bloqueará 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 elementos secundarios, la profundidad del bloqueo se especifica como
Lock.DEPTH_ZERO
.
note note NOTE La versión sobrecargada del método lockResource
que requiere cuatro parámetros genera una excepción. Asegúrese de utilizar el métodolockResource
que requiere tres parámetros, como se muestra en este tutorial. -
Recuperar los bloqueos del recurso
Invoque el método
getLocks
del objetoResourceRepositoryClient
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 los métodosgetOwnerUserId
,getDepth
ygetType
de cada objeto Lock, respectivamente. -
Desbloquear el recurso
Invoque el método
unlockResource
del objetoResourceRepositoryClient
y pase el URI del recurso como parámetro. Para obtener más información, consulte la Referencia de la API de AEM Forms.
Consulte también
SOAP Inicio rápido (modo de): Bloqueo de un recurso mediante la API de Java
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 objeto
RepositoryServiceService
invocando su constructor predeterminado. Establezca su propiedadCredentials
mediante un objetoSystem.Net.NetworkCredential
que contenga 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, como el recurso denominado
testResource
se encuentra en la carpetatestFolder
, su URI es"/testFolder/testResource"
. Cuando utilice un lenguaje compatible con Microsoft .NET Framework (por ejemplo, C#), almacene el URI en un objetoSystem.String
. -
Bloquear el recurso
Invoque el método
lockResource
del objetoRepositoryServiceService
y pase los parámetros siguientes:- URI del recurso.
- El ámbito de bloqueo. En este ejemplo, dado que el recurso se bloqueará 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 elementos secundarios, la profundidad del bloqueo se especifica como
2
. - Un valor
int
que indica el número de segundos hasta que caduque el bloqueo. En este ejemplo, se utiliza el valor de1000
. - Pase
null
para el último parámetro.
-
Recuperar los bloqueos del recurso
Invoque el método
getLocks
del objetoRepositoryServiceService
y pase el URI del recurso como el primer parámetro ynull
como el segundo. El método devuelve una matrizobject
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 al obtener acceso a los camposownerUserId
,depth
ytype
de cada objetoLock
, respectivamente. -
Desbloquear el recurso
Invoque el método
unlockResource
del objetoRepositoryServiceService
y pase el URI del recurso como el primer parámetro ynull
como el segundo.
Consulte también
Eliminación de recursos deleting-resources
SOAP Puede eliminar recursos mediante programación de una ubicación determinada del repositorio mediante la API de Java del servicio de repositorio (API) de Java. ()
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()
con el repositorio de ECM (EMC Documentum Content Server y IBM FileNet P8 Content Manager), la transacción no se revierte 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.
Crear el cliente de servicio
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 se 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/recurso". 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
SOAP Eliminación de recursos mediante la API de Java (API) 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
Cree un objeto
ResourceRepositoryClient
utilizando su constructor y pasando un objetoServiceClientFactory
que contenga 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 como un objetojava.lang.String
. 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, vea Escribir recursos. -
Eliminar el recurso
Invoque el método
deleteResource
del objetoResourceRepositoryClient
y pase el URI del recurso como parámetro.
Consulte también
SOAP Inicio rápido (modo de): Búsqueda de recursos mediante la API de Java
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 objeto
RepositoryServiceService
invocando su constructor predeterminado. Establezca su propiedadCredentials
mediante un objetoSystem.Net.NetworkCredential
que contenga 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, como 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, vea Escribir recursos. -
Eliminar el recurso
Invoque el método
deleteResources
del objetoRepositoryServiceService
y pase una matrizSystem.String
que contenga el URI del recurso como primer parámetro. Pasenull
para el segundo parámetro.
Consulte también
Invocar AEM Forms con codificación Base64