DocumentatieAEMTutorials voor AEMTutorials voor AEM Forms

Gegevens ophalen uit Azure-opslag

Laatst bijgewerkt: 5 mei 2025
  • Van toepassing op:
  • Experience Manager 6.5
  • Onderwerpen:
  • Adaptieve formulieren

Gemaakt voor:

  • Beginner
  • Ontwikkelaar

In dit artikel wordt uitgelegd hoe u een adaptief formulier kunt vullen met de gegevens die in Azure-opslag zijn opgeslagen.
Aangenomen wordt dat u de adaptieve formuliergegevens in Azure-opslag hebt opgeslagen en nu uw adaptieve formulier met die gegevens wilt vooraf invullen.

OPMERKING
De code in dit artikel werkt niet met op kerncomponenten gebaseerde adaptieve formulieren. het gelijkwaardige artikel voor kern op component gebaseerde adaptieve vorm is hier beschikbaar

GET-aanvraag maken

De volgende stap bestaat uit het schrijven van de code om de gegevens van de Azure Storage op te halen met behulp van de blobID. De volgende code is geschreven om de gegevens op te halen. De url werd geconstrueerd gebruikend de waarden sasToken en storageURI van de configuratie OSGi en blobID die tot de functie getBlobData wordt overgegaan

 @Override
public String getBlobData(String blobID) {
    String sasToken = azurePortalConfigurationService.getSASToken();
    String storageURI = azurePortalConfigurationService.getStorageURI();
    log.debug("The SAS Token is " + sasToken);
    log.debug("The Storage URL is " + storageURI);
    String httpGetURL = storageURI + blobID;
    httpGetURL = httpGetURL + sasToken;
    HttpGet httpGet = new HttpGet(httpGetURL);

    org.apache.http.impl.client.CloseableHttpClient httpClient = HttpClientBuilder.create().build();
    CloseableHttpResponse httpResponse = null;
    try {
        httpResponse = httpClient.execute(httpGet);
        HttpEntity httpEntity = httpResponse.getEntity();
        String blobData = EntityUtils.toString(httpEntity);
        log.debug("The blob data I got was " + blobData);
        return blobData;

    } catch (ClientProtocolException e) {

        log.debug("Got Client Protocol Exception " + e.getMessage());
    } catch (IOException e) {

        log.debug("Got IOEXception " + e.getMessage());
    }

    return null;
}

Wanneer een adaptief formulier wordt weergegeven met een hulplijnparameter in de URL, haalt de aangepaste pagina-component die aan de sjabloon is gekoppeld het adaptieve formulier op en vult deze met de gegevens van Azure-opslag.
Hier volgt de code in de jsp van de pagina-component die aan de sjabloon is gekoppeld

com.aemforms.saveandfetchfromazure.StoreAndFetchDataFromAzureStorage azureStorage = sling.getService(com.aemforms.saveandfetchfromazure.StoreAndFetchDataFromAzureStorage.class);


String guid = request.getParameter("guid");

if(guid!=null&&!guid.isEmpty())
{
    String dataXml = azureStorage.getBlobData(guid);
    slingRequest.setAttribute("data",dataXml);

}

De oplossing testen

  • De aangepaste OSGi-bundel implementeren

  • Het aangepaste aangepaste formuliersjabloon en de paginacomponent die aan de sjabloon zijn gekoppeld importeren

  • Het adaptieve voorbeeldformulier importeren

  • specificeer de aangewezen waarden in de Azure PortalConfiguratie gebruikend de OSGi configuratieconsole.

  • Voorproef en voorlegt de vorm BankAccount

  • Controleer of de gegevens zijn opgeslagen in de Azure-opslagcontainer van uw keuze. Kopieer de blob-id.

  • Voorproef de vorm BankAccounten specificeer identiteitskaart van de Blob als begeleide parameter in URL voor de vorm die met de gegevens van Azure opslag moet worden vooraf bevolkt

recommendation-more-help
8de24117-1378-413c-a581-01e660b7163e