Desenvolvimento com serviços de saída e Forms no AEM Forms developing-with-output-and-forms-services-in-aem-forms

Saiba mais sobre como desenvolver com a API de serviço de saída e Forms no AEM Forms.

Neste artigo, analisaremos o seguinte

  • Serviço de saída - Normalmente, esse serviço é usado para mesclar dados xml com modelo xdp ou pdf para gerar pdf nivelado.
  • FormsService - Este é um serviço muito versátil que permite renderizar o xdp como pdf e exportar/importar dados de e para o arquivo PDF.

O trecho de código a seguir exporta dados do arquivo PDF

javax.servlet.http.Part pdfPart = request.getPart("pdffile");
String filePath = request.getParameter("saveLocation");
java.io.InputStream pdfIS = pdfPart.getInputStream();
com.adobe.aemfd.docmanager.Document pdfDocument = new com.adobe.aemfd.docmanager.Document(pdfIS);
com.adobe.fd.forms.api.FormsService formsservice = sling.getService(com.adobe.fd.forms.api.FormsService.class);
com.adobe.aemfd.docmanager.Document xmlDocument = formsservice.exportData(pdfDocument,com.adobe.fd.forms.api.DataFormat.Auto);

A Linha 1 extrai o arquivo PDF da solicitação

A Linha 2 extrai o saveLocation da solicitação

A linha 5 obtém o FormsService

O Line 6 exporta o xmlData do Arquivo PDF

Para testar o pacote de exemplo em seu sistema

Baixe e instale o pacote usando o gerenciador de pacotes AEM

incluir na lista de permissões Depois de instalar o pacote, você terá que copiar os seguintes URLs no Filtro CSRF do Adobe Granite.

  1. Siga as etapas mencionadas abaixo para incluir na lista de permissões os caminhos mencionados acima.
  2. Logon no configMgr
  3. Pesquisar por filtro CSRF do Adobe Granite
  4. Adicione os 3 caminhos a seguir nas seções excluídas e salve
  5. /content/AemFormsSamples/mergedata
  6. /content/AemFormsSamples/exportdata
  7. /content/AemFormsSamples/outputservice
  8. /content/AemFormsSamples/renderxdp
  9. Procure por "Sling Referrer Filter"
  10. Marque a caixa de seleção "Permitir vazio". (Essa configuração deve ser somente para fins de teste)

Teste das amostras

Há várias maneiras de testar o código de amostra. O mais rápido e fácil é usar o aplicativo Postman. O Postman permite que você faça solicitações do POST ao seu servidor.

  • Instale o aplicativo Postman no sistema.
  • Inicie o aplicativo e insira o URL apropriado
  • Verifique se selecionou "POST" na lista suspensa
  • Certifique-se de especificar "Autorização" como "Autenticação básica". Especifique o nome de usuário e a senha do Servidor AEM
  • Especifique os parâmetros da solicitação na guia do corpo
  • Clique no botão Enviar

O pacote contém 4 amostras. Os parágrafos a seguir explicam quando usar o serviço de saída ou o Forms Service, o url do serviço, os parâmetros de entrada que cada serviço espera

Utilização do OutputService para mesclar dados com o modelo xdp

  • Usar o Serviço de saída para mesclar dados com um documento xdp ou pdf para gerar um PDF nivelado

  • POST URL: http://localhost:4502/content/AemFormsSamples/outputservice.html

  • Solicitar Parâmetros -

    • xdp_or_pdf_file : o arquivo xdp ou pdf com o qual você deseja mesclar dados
    • xmlfile: o arquivo de dados xml que é mesclado com xdp_or_pdf_file
    • saveLocation: o local onde salvar o documento renderizado no sistema de arquivos. Por exemplo c:\documents\sample.pdf

Uso da API FormsService

Importar dados

  • Usar FormsService importData para importar dados no arquivo PDF

  • POST URL - http://localhost:4502/content/AemFormsSamples/mergedata.html

  • Solicitar Parâmetros:

    • pdffile : o arquivo pdf com o qual você deseja mesclar dados
    • xmlfile: o arquivo de dados xml que é mesclado com o arquivo pdf
    • saveLocation: o local onde salvar o documento renderizado no sistema de arquivos. Por exemplo, c:\\outputsample.pdf.

Exportar dados

  • Usar a API FormsService exportData para exportar dados do Arquivo PDF

  • POST URL - http://localhost:4502/content/AemFormsSamples/exportdata.html

  • Solicitar Parâmetros:

    • pdffile : o arquivo pdf do qual você deseja exportar dados
    • saveLocation: o local para salvar os dados exportados no sistema de arquivos. Por exemplo c:\documentos\dados_exportados.xml

Renderizar XDP

  • Renderizar modelo XDP como pdf estático/dinâmico
  • Use a API renderPDFForm do FormsService para renderizar o modelo xdp como PDF
  • POST URL - http://localhost:4502/content/AemFormsSamples/renderxdp?xdpName=f1040.xdp
  • Parâmetro de solicitação:
    • xdpName: Nome do arquivo xdp a ser renderizado como pdf

Você poderia importar essa coleção do carteiro para testar a API

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