Java API를 사용하여 클라이언트에서 양식 렌더링

Forms API(Java)를 사용하여 클라이언트에서 양식을 렌더링합니다.

  1. 프로젝트 파일 포함

    Java 프로젝트의 클래스 경로에 adobe-forms-client.jar과 같은 클라이언트 JAR 파일을 포함합니다.

  2. Forms 클라이언트 API 개체 만들기

    • 연결 속성을 포함하는 ServiceClientFactory 개체를 만듭니다.
    • 생성자를 사용하고 ServiceClientFactory 개체를 전달하여 FormsServiceClient 개체를 만듭니다.
  3. 클라이언트 렌더링 런타임 옵션 설정

    • 해당 생성자를 사용하여 PDFFormRenderSpec 개체를 만듭니다.
    • PDFFormRenderSpec 개체의 setRenderAtClient 메서드를 호출하고 열거형 값 RenderAtClient.Yes을(를) 전달하여 RenderAtClient 런타임 옵션을 설정하십시오.
  4. 클라이언트에서 양식 렌더링

    FormsServiceClient 개체의 renderPDFForm 메서드를 호출하고 다음 값을 전달하십시오.

    • 파일 이름 확장명을 포함하여 양식 디자인 이름을 지정하는 문자열 값입니다. AEM Forms 응용 프로그램의 일부인 양식 디자인을 참조하는 경우 Applications/FormsApplication/1.0/FormsFolder/Loan.xdp과 같은 전체 경로를 지정해야 합니다.
    • 양식과 병합할 데이터가 포함된 com.adobe.idp.Document 개체입니다. 데이터를 병합하지 않으려면 빈 com.adobe.idp.Document 개체를 전달하십시오.
    • 클라이언트에서 양식을 렌더링하는 데 필요한 런타임 옵션을 저장하는 PDFFormRenderSpec 개체입니다.
    • 양식을 렌더링하는 데 Forms 서비스에 필요한 URI 값을 포함하는 URLSpec 개체입니다.
    • 첨부 파일을 저장하는 java.util.HashMap 개체입니다. 선택적 매개 변수이며, 양식에 파일을 첨부하지 않으려면 null을(를) 지정할 수 있습니다.

    renderPDFForm 메서드는 클라이언트 웹 브라우저에 작성해야 하는 양식 데이터 스트림이 포함된 FormsResult 개체를 반환합니다.

  5. 클라이언트 웹 브라우저에 양식 데이터 스트림 작성

    • FormsResult 개체 's getOutputContent 메서드를 호출하여 com.adobe.idp.Document 개체를 만듭니다.
    • 해당 getContentType 메서드를 호출하여 com.adobe.idp.Document 개체의 콘텐츠 형식을 가져옵니다.
    • setContentType 메서드를 호출하고 com.adobe.idp.Document 개체의 콘텐츠 형식을 전달하여 javax.servlet.http.HttpServletResponse 개체의 콘텐츠 형식을 설정하십시오.
    • javax.servlet.http.HttpServletResponse 개체의 getOutputStream 메서드를 호출하여 양식 데이터 스트림을 클라이언트 웹 브라우저에 쓰는 데 사용되는 javax.servlet.ServletOutputStream 개체를 만듭니다.
    • com.adobe.idp.Document 개체의 getInputStream 메서드를 호출하여 java.io.InputStream 개체를 만듭니다.
    • InputStream 개체의 read 메서드를 호출하고 바이트 배열을 인수로 전달하여 바이트 배열을 만들고 양식 데이터 스트림으로 채웁니다.
    • javax.servlet.ServletOutputStream 개체의 write 메서드를 호출하여 양식 데이터 스트림을 클라이언트 웹 브라우저로 보냅니다. 바이트 배열을 write 메서드에 전달합니다.

웹 서비스 API를 사용하여 클라이언트에서 양식 렌더링

Forms API(웹 서비스)를 사용하여 클라이언트에서 양식을 렌더링합니다.

  1. 프로젝트 파일 포함

    • Forms 서비스 WSDL을 사용하는 Java 프록시 클래스를 만듭니다.
    • 클래스 경로에 Java 프록시 클래스를 포함합니다.
  2. Forms 클라이언트 API 개체 만들기

    FormsService 개체를 만들고 인증 값을 설정하십시오.

  3. 클라이언트 렌더링 런타임 옵션 설정

    • 해당 생성자를 사용하여 PDFFormRenderSpec 개체를 만듭니다.
    • PDFFormRenderSpec 개체의 setRenderAtClient 메서드를 호출하고 문자열 값 RenderAtClient.Yes을(를) 전달하여 RenderAtClient 런타임 옵션을 설정하십시오.
  4. 클라이언트에서 양식 렌더링

    FormsService 개체의 renderPDFForm 메서드를 호출하고 다음 값을 전달하십시오.

    • 파일 이름 확장명을 포함하여 양식 디자인 이름을 지정하는 문자열 값입니다. Forms 응용 프로그램의 일부인 양식 디자인을 참조하는 경우 Applications/FormsApplication/1.0/FormsFolder/Loan.xdp과 같은 전체 경로를 지정해야 합니다.
    • 양식과 병합할 데이터가 포함된 BLOB 개체입니다. 데이터를 병합하지 않으려면 null을(를) 전달하십시오. 유동성 레이아웃으로 Forms 미리 채우기를 참조하십시오.
    • 클라이언트에서 양식을 렌더링하는 데 필요한 런타임 옵션을 저장하는 PDFFormRenderSpec 개체입니다.
    • Forms 서비스에 필요한 URI 값을 포함하는 URLSpec 개체입니다.
    • 첨부 파일을 저장하는 java.util.HashMap 개체입니다. 선택적 매개 변수이며, 양식에 파일을 첨부하지 않으려면 null을(를) 지정할 수 있습니다.
    • 메서드로 채워진 빈 com.adobe.idp.services.holders.BLOBHolder 개체입니다. 이 매개 변수는 렌더링된 PDF 양식을 저장하는 데 사용됩니다.
    • 메서드로 채워진 빈 javax.xml.rpc.holders.LongHolder 개체입니다. (이 인수는 양식의 페이지 수를 저장합니다.)
    • 메서드로 채워진 빈 javax.xml.rpc.holders.StringHolder 개체입니다. (이 인수는 로케일 값을 저장합니다.)
    • 이 작업의 결과를 포함할 빈 com.adobe.idp.services.holders.FormsResultHolder 개체입니다.

    renderPDFForm 메서드는 마지막 인수 값으로 전달된 com.adobe.idp.services.holders.FormsResultHolder 개체를 클라이언트 웹 브라우저에 작성해야 하는 양식 데이터 스트림으로 채웁니다.

  5. 클라이언트 웹 브라우저에 양식 데이터 스트림 작성

    • com.adobe.idp.services.holders.FormsResultHolder 개체의 value 데이터 멤버의 값을 가져와서 FormResult 개체를 만듭니다.
    • FormsResult 개체의 getOutputContent 메서드를 호출하여 양식 데이터를 포함하는 BLOB 개체를 만듭니다.
    • 해당 getContentType 메서드를 호출하여 BLOB 개체의 콘텐츠 형식을 가져옵니다.
    • setContentType 메서드를 호출하고 BLOB 개체의 콘텐츠 형식을 전달하여 javax.servlet.http.HttpServletResponse 개체의 콘텐츠 형식을 설정하십시오.
    • javax.servlet.http.HttpServletResponse 개체의 getOutputStream 메서드를 호출하여 양식 데이터 스트림을 클라이언트 웹 브라우저에 쓰는 데 사용되는 javax.servlet.ServletOutputStream 개체를 만듭니다.
    • 바이트 배열을 만들고 BLOB 개체의 getBinaryData 메서드를 호출하여 바이트 배열을 채웁니다. 이 작업은 FormsResult 개체의 콘텐츠를 바이트 배열에 할당합니다.
    • javax.servlet.http.HttpServletResponse 개체의 write 메서드를 호출하여 양식 데이터 스트림을 클라이언트 웹 브라우저로 보냅니다. 바이트 배열을 write 메서드에 전달합니다.
recommendation-more-help