AEM Forms verbinden met Adobe LiveCycle
Gemaakt voor:
- Admin
Met de Adobe Experience Manager (AEM) LiveCycle-aansluiting kunt u Adobe LiveCycle ES4 Document Services naadloos oproepen vanuit AEM webapps en workflows. LiveCycle biedt een rijke client SDK, waarmee clienttoepassingen met Java API's LiveCycle-services kunnen starten. AEM de Schakelaar van de LiveCycle vereenvoudigt het gebruiken van deze APIs binnen het milieu OSGi.
AEM server verbinden met Adobe LiveCycle
AEM LiveCycle Connector maakt deel uit van de AEM Forms-invoegtoepassing. Nadat u het AEM Forms-invoegpakket hebt geïnstalleerd, voert u de volgende stappen uit om gegevens van de LiveCycle-server toe te voegen aan AEM webconsole.
- Zoek in AEM configuratiebeheer van de webconsole de configuratiecomponent van de Adobe LiveCycle Client SDK.
- Klik op de component om de URL van de configuratieserver, de gebruikersnaam en het wachtwoord te bewerken.
- Controleer de instellingen en klik op Opslaan.
Hoewel de eigenschappen vanzelfsprekend zijn, zijn de belangrijkste als volgt:
-
Server-URL - Geeft de URL naar de LiveCycle-server op. Als u wilt dat LiveCycle en AEM communiceren via https, start u AEM met de volgende JVM
argument -Djavax.net.ssl.trustStore=<<em>path to LC keystore</em>>
optie.
-
Gebruikersnaam- Hier geeft u de gebruikersnaam op van de account die wordt gebruikt om communicatie tot stand te brengen tussen AEM en LiveCycle. De account is een LiveCycle-gebruikersaccount die gemachtigd is om Document Services te starten.
-
Wachtwoord- Geeft het wachtwoord op.
-
Servicenaam - Geeft de services aan die worden gestart met de gebruikersgegevens in de velden Gebruikersnaam en Wachtwoord. Standaard worden geen referenties doorgegeven bij het starten van LiveCycle-services.
Documentservices starten
De toepassingen van de cliënt kunnen de diensten van LiveCycle programmatically beginnen gebruikend Java API, de Diensten van het Web, Remoting, en REST. Voor Java-clients kan de toepassing LiveCycle SDK gebruiken. De LiveCycle SDK biedt een Java API waarmee deze services op afstand kunnen worden gestart. Als u bijvoorbeeld een Microsoft Word-document wilt converteren naar PDF, start de client GeneratePDFService. De aanroepingsstroom bestaat uit de volgende stappen:
- Maak een ServiceClientFactory-instantie.
- Elke service biedt een clientklasse. Om de dienst te beginnen, creeer een cliëntgeval van de dienst.
- Start de service en verwerkt het resultaat.
AEM de Schakelaar van de LiveCycle vereenvoudigt de stroom door deze cliëntinstanties als diensten bloot te stellen OSGi die kunnen worden betreden gebruikend standaardOSGi middelen. De aansluiting LiveCycle biedt de volgende functies:
- Clientinstanties als OSGi Service: De clients die als OSGI-bundels zijn verpakt, worden vermeld in de Lijst met Document Services sectie. Elke cliëntjar registreert de cliëntinstantie als dienst OSGi met de Registratie van de Dienst OSGi.
- Doorgave gebruikersreferenties: De verbindingsgegevens die nodig zijn om verbinding te maken met de LiveCycle-server worden centraal beheerd.
- ServiceClientFactory Service: Om de processen te beginnen, kan de cliënttoepassing tot de instantie toegang hebben ServiceClientFactory.
Beginnend via de Verwijzingen van de Dienst van OSGi Registratie van de Dienst
Om de blootgestelde dienst van binnen AEM te beginnen, voer de volgende stappen uit:
-
Geweven afhankelijkheden bepalen. Voeg gebiedsdeel aan de vereiste cliëntbar in uw gegeven pom.xml- dossier toe. Voeg minstens afhankelijkheid toe aan adobe-livecycle-client en adobe-usermanager-client-jars.
<dependency> <groupId>com.adobe.livecycle</groupId> <artifactId>adobe-livecycle-client</artifactId> <version>11.0.0</version> </dependency> <dependency> <groupId>com.adobe.livecycle</groupId> <artifactId>adobe-usermanager-client</artifactId> <version>11.0.0</version> </dependency> <dependency> <groupId>com.adobe.livecycle</groupId> <artifactId>adobe-cq-integration-api</artifactId> <version>11.0.0</version> </dependency>
Om de dienst te beginnen, voeg overeenkomstig Geweven gebiedsdeel voor de dienst toe. Voor de lijst van gebiedsdelen, zie Lijst met documentservices. Bijvoorbeeld, voor de Generate dienst van de PDF voegt de volgende gebiedsdeel toe:
<dependency> <groupId>com.adobe.livecycle</groupId> <artifactId>adobe-generatepdf-client</artifactId> <version>11.0.0</version> </dependency>
-
Verkrijg de de dienstverwijzing. Krijg een handvat aan de de dienstinstantie. Als u een klasse van Java schrijft, kunt u de Verklarende annotaties van de Diensten gebruiken.
import com.adobe.livecycle.generatepdf.client.GeneratePdfServiceClient; import com.adobe.livecycle.generatepdf.client.CreatePDFResult; import com.adobe.idp.Document; @Reference GeneratePdfServiceClient generatePDF; ... Resource r = resourceResolver.getResource("/path/tp/docx"); Document sourceDoc = new Document(r.adaptTo(InputStream.class)); CreatePDFResult result = generatePDF.createPDF2( sourceDoc, extension, //inputFileExtension null, //fileTypeSettings null, //pdfSettings null, //securitySettings settingsDoc, //settingsDoc null //xmpDoc );
Met het bovenstaande codefragment wordt de createPDF API van GeneratePdfServiceClient gestart om een document naar PDF te converteren. U kunt gelijkaardige aanroeping in JSP uitvoeren gebruikend de volgende code. Het belangrijkste verschil is het volgende codegebruik Sling ScriptHelper om tot GeneratePdfServiceClient toegang te hebben.
<%@ page import="com.adobe.livecycle.generatepdf.client.GeneratePdfServiceClient" %> <%@ page import="com.adobe.livecycle.generatepdf.client.CreatePDFResult" %> <%@ page import="com.adobe.idp.Document" %> GeneratePdfServiceClient generatePDF = sling.getService(GeneratePdfServiceClient.class); Document sourceDoc = ... CreatePDFResult result = generatePDF.createPDF2( sourceDoc, extension, //inputFileExtension null, //fileTypeSettings null, //pdfSettings null, //securitySettings settingsDoc, //settingsDoc null //xmpDoc );
Starten via ServiceClientFactory
De klasse ServiceClientFactory is in sommige gevallen vereist. U hebt bijvoorbeeld ServiceClientFactory nodig om processen aan te roepen.
import com.adobe.livecycle.dsc.clientsdk.ServiceClientFactoryProvider;
import com.adobe.idp.dsc.clientsdk.ServiceClientFactory;
@Reference
ServiceClientFactoryProvider scfProvider;
...
ServiceClientFactory scf = scfProvider.getDefaultServiceClientFactory();
...
Ondersteuning voor RunAs
Bijna elke Document Service in LiveCycle vereist authentificatie. U kunt om het even welke volgende opties gebruiken om deze diensten te beginnen zonder expliciete geloofsbrieven in de code te verstrekken:
Whitelist-configuratie
De configuratie van SDK van de Cliënt van LiveCycle bevat het plaatsen over de dienstnamen. Deze configuratie is een lijst van de diensten waarvoor de aanroepingslogica uit de doos beheerderreferentie gebruikt. Bijvoorbeeld, als u de diensten DirectoryManager (deel van het Beheer van de Gebruiker API) aan deze lijst toevoegt, kan om het even welke cliëntcode de dienst en de aanroepingslaag direct gebruiken automatisch op de gevormde geloofsbrieven als deel van het verzoek overgaan dat naar de server van LiveCycle wordt verzonden
RunAsManager
Als deel van de integratie, wordt de nieuwe dienst RunAsManager verstrekt. Het staat u toe programmatically om referentie te controleren die moet worden gebruikt wanneer het maken van vraag aan de server van LiveCycle.
import com.adobe.livecycle.dsc.clientsdk.security.PasswordCredential;
import com.adobe.livecycle.dsc.clientsdk.security.PrivilegedAction;
import com.adobe.livecycle.dsc.clientsdk.security.RunAsManager;
import com.adobe.idp.dsc.registry.component.ComponentRegistry;
@Reference
private RunAsManager runAsManager;
List<Component> components = runAsManager.doPrivileged(new PrivilegedAction<List<Component>>() {
public List<Component> run() {
return componentRegistry.getComponents();
}
});
assertNotNull(components);
Als u verschillende referentie wilt overgaan, kunt u de overbelaste methode gebruiken die een instantie PasswordCredential neemt.
PasswordCredential credential = new PasswordCredential("administrator","password");
List<Component> components = runAsManager.doPrivileged(new PrivilegedAction<List<Component>>() {
public List<Component> run() {
return componentRegistry.getComponents();
}
},credential);
InvocationRequest, eigenschap
Als u een proces roept of direct gebruik maakt van de klasse ServiceClientFactory en een InvocationRequest creeert, kunt u een bezit specificeren om erop te wijzen dat de aanroepingslaag gevormde geloofsbrieven zou moeten gebruiken.
import com.adobe.idp.dsc.InvocationResponse
import com.adobe.idp.dsc.InvocationRequest
import com.adobe.livecycle.dsc.clientsdk.ServiceClientFactoryProvider
import com.adobe.idp.dsc.clientsdk.ServiceClientFactory
import com.adobe.livecycle.dsc.clientsdk.InvocationProperties
ServiceClientFactoryProvider scfp = sling.getService(ServiceClientFactoryProvider.class)
ServiceClientFactory serviceClientFactory = scfp.getDefaultServiceClientFactory()
InvocationRequest ir = serviceClientFactory.createInvocationRequest("sample/LetterSubmissionProcess", "invoke", new HashMap(), true);
//Here we are invoking the request with system user
ir.setProperty(InvocationProperties.INVOKER_TYPE,InvocationProperties.INVOKER_TYPE_SYSTEM)
InvocationResponse response = serviceClientFactory.getServiceClient().invoke(ir);
Lijst met Document Services
Adobe LiveCycle Client SDK API-bundel
De volgende services zijn beschikbaar:
- com.adobe.idp.um.api.AuthenticationManager
- com.adobe.idp.um.api.DirectoryManager
- com.adobe.idp.um.api.AuthorizationManager
- com.adobe.idp.dsc.registry.service.ServiceRegistry
- com.adobe.idp.dsc.registry.component.ComponentRegistry
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-livecycle-client</artifactId>
<version>11.0.0</version>
</dependency>
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-usermanager-client</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle Client SDK-bundel
De volgende services zijn beschikbaar:
- com.adobe.livecycle.dsc.clientsdk.security.RunAsManager
- com.adobe.livecycle.dsc.clientsdk.ServiceClientFactoryProvider
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-livecycle-cq-integration-api</artifactId>
<version>1.1.10</version>
</dependency>
Adobe LiveCycle TaskManager Client-bundel
De volgende services zijn beschikbaar:
- com.adobe.idp.taskmanager.dsc.client.task.TaskManager
- com.adobe.idp.taskmanager.dsc.client.TaskManagerQueryService
- com.adobe.idp.taskmanager.dsc.client.queuemanager.QueueManager
- com.adobe.idp.taskmanager.dsc.client.emailsettings.EmailSettingService
- com.adobe.idp.taskmanager.dsc.client.endpoint.TaskManagerEndpointClient
- com.adobe.idp.taskmanager.dsc.client.userlist.UserlistService
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-taskmanager-client</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle Workflow Client Bundle
De volgende service is beschikbaar:
- com.adobe.idp.workflow.client.WorkflowServiceClient
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-workflow-client-sdk</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle PDF Generator Client-bundel
De volgende service is beschikbaar:
- com.adobe.livecycle.generatepdf.client.GeneratePdfServiceClient
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-generatepdf-client</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle Application Manager-clientbundel
De volgende services zijn beschikbaar:
- com.adobe.idp.applicationmanager.service.ApplicationManager
- com.adobe.livecycle.applicationmanager.client.ApplicationManager
- com.adobe.livecycle.design.service.DesigntimeService
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-applicationmanager-client-sdk</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle Assembler-clientbundel
De volgende service is beschikbaar:
- com.adobe.livecycle.assembler.client.AssemblerServiceClient
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-assembler-client</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle Form Data Integration Client-bundel
De volgende service is beschikbaar:
- com.adobe.livecycle.formdataintegration.client.FormDataIntegrationClient
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-formdataintegration-client</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle Forms Client-bundel
De volgende service is beschikbaar:
- com.adobe.livecycle.formsservice.client.FormsServiceClient
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-forms-client</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle Output Client-bundel
De volgende service is beschikbaar:
- com.adobe.livecycle.output.client.OutputClient
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-output-client</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle Reader Extensions Client-bundel
De volgende service is beschikbaar:
- com.adobe.livecycle.readerextensions.client.ReaderExtensionsServiceClient
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-reader-extensions-client</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle Rights Manager Client-bundel
De volgende services zijn beschikbaar:
- com.adobe.livecycle.rightsmanagement.client.DocumentManager
- com.adobe.livecycle.rightsmanagement.client.EventManager
- com.adobe.livecycle.rightsmanagement.client.ExternalUserManager
- com.adobe.livecycle.rightsmanagement.client.LicenseManager
- com.adobe.livecycle.rightsmanagement.client.WatermarkManager
- com.adobe.livecycle.rightsmanagement.client.PolicyManager
- com.adobe.livecycle.rightsmanagement.client.AbstractPolicyManager
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-rightsmanagement-client</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle Signatures-clientbundel
De volgende service is beschikbaar:
- com.adobe.livecycle.signatures.client.SignatureServiceClientInterface
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-signatures-client</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle Truststore Client bundle
De volgende services zijn beschikbaar:
- com.adobe.truststore.dsc.TrustConfigurationService
- com.adobe.truststore.dsc.CRLService
- com.adobe.truststore.dsc.CredentialService
- com.adobe.truststore.dsc.CertificateService
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-truststore-client</artifactId>
<version>11.0.0</version>
</dependency>
Adobe LiveCycle Repository Client-bundel
De volgende services zijn beschikbaar:
- com.adobe.repository.bindings.ResourceRepository
- com.adobe.repository.bindings.ResourceSynchronizer
Geweven afhankelijkheden
<dependency>
<groupId>com.adobe.livecycle</groupId>
<artifactId>adobe-repository-client</artifactId>
<version>11.0.0</version>
</dependency>