HTML5 forms 서비스 프록시 html-forms-service-proxy
HTML5 forms 서비스 프록시는 제출 서비스에 대한 프록시를 등록하는 구성입니다. 서비스 프록시를 구성하려면 요청 매개 변수 submissionServiceProxy 을(를) 통해 제출 서비스의 URL을 지정하십시오.
서비스 프록시의 이점 benefits-of-service-proxy-br
서비스 프록시는 다음을 제거합니다.
- HTML 5 forms 워크플로우를 사용하려면 HTML 5 forms 사용자에 대한 제출 서비스 "/content/xfaforms/submission/default"를 열어야 합니다. 의도하지 않은 대상에 AEM 서버를 더 많이 노출합니다.
- 서비스 URL이 양식의 런타임 모델에 포함되어 있습니다. 서비스 URL 경로를 변경할 수 없습니다.
- 제출은 2단계 프로세스입니다. 양식 데이터를 제출하려면 서버에 대한 여정이 두 개 이상 필요합니다. 따라서 서버의 로드가 증가합니다.
- HTML 5 Forms는 PDF 요청 대신 POST 요청에 데이터를 보냅니다. PDF 및 HTML 5 양식과 관련된 워크플로우의 경우 제출을 처리하는 두 가지 다른 방법이 필요합니다.
토폴로지 topologies-br
HTML5 양식은 다음 토폴로지를 사용하여 AEM 서버에 연결할 수 있습니다.
- AEM Server 또는 HTML 5 Forms가 POST을 통해 서버에 데이터를 전송하는 토폴로지입니다.
- 프록시 서버가 서버에 POST 데이터를 전송하는 토폴로지입니다.
HTML5 forms 서비스 프록시 토폴로지
HTML5 양식은 AEM 서버에 연결하여 서버측 스크립트, 웹 서비스 및 제출을 실행합니다. HTML5 Forms의 XFA 런타임은 다양한 매개 변수와 함께 "/bin/xfaforms/submitaction" 끝점의 Ajax 호출을 사용하여 AEM 서버에 연결합니다. HTML5 forms는 AEM 서버를 연결하여 다음 작업을 수행합니다.
서버측 스크립트 및 웹 서비스 실행 execute-server-sided-scripts-and-web-services
서버에서 실행되도록 표시된 스크립트를 서버측 스크립트라고 합니다. 다음 표에는 서버측 스크립트 및 웹 서비스에 사용되는 모든 매개 변수가 나열되어 있습니다.
데이터 제출 submit-data
제출 단추를 클릭하면 HTML5 양식에서 서버로 데이터를 보냅니다. 다음 표에는 HTML5 양식에서 서버로 보내는 모든 매개 변수가 나열되어 있습니다.
제출 프록시는 어떻게 작동합니까? how-nbsp-the-nbsp-submit-proxy-works
제출 서비스 프록시는 제출 URL이 요청 매개 변수에 없는 경우 전달 역할을 합니다. 패스스루 역할을 합니다. 이 메서드는 /bin/xfaforms/submitaction 끝점에 요청을 보내고 XFA 런타임에 응답을 보냅니다.
제출 서비스 프록시는 제출 URL이 요청 매개 변수에 있는 경우 토폴로지를 선택합니다.
-
AEM 서버가 데이터를 게시하는 경우 프록시 서비스는 통과 역할을 합니다. 이 메서드는 /bin/xfaforms/submitaction 끝점에 요청을 보내고 XFA 런타임에 응답을 보냅니다.
-
프록시가 데이터를 게시하는 경우 프록시 서비스는 submitUrl을 제외한 모든 매개 변수를 /bin/xfaforms/submitaction 끝점으로 전달하고 응답 스트림에서 xml 바이트를 받습니다. 그런 다음 프록시 서비스는 데이터 xml 바이트를 submitUrl에 게시하여 처리합니다.
-
서버에 데이터(POST 요청)를 보내기 전에 HTML 5 양식에서 서버의 연결 및 가용성을 확인합니다. 연결 및 가용성을 확인하기 위해 HTML 양식은 서버에 빈 head 요청을 보냅니다. 서버를 사용할 수 있는 경우 HTML 5 양식은 서버에 데이터(POST 요청)를 보냅니다. 서버를 사용할 수 없는 경우 서버에 연결할 수 없습니다. 오류 메시지가 표시됩니다. 사전 감지는 사용자가 양식을 다시 채우는 번거로움을 방지합니다. 프록시 서블릿은 head 요청을 처리하고 예외를 throw하지 않습니다.