예제를 가정 해 보겠습니다. 다음과 같은 인터페이스가 있습니다 :2 단계 JSP 페이지 렌더링
public interface DataSource<T> {
Future<T> fetch();
}
이 데이터 소스는 비동기 데이터 가져 오기를 수행 할 수 있습니다. 그리고 우리는 JSP에 데이터 소스를 사용하는 태그를 다음 있습니다 :
<html>
<d:fetch from="${orderDS}" var="orders">
<c:foreach in="${orders}" var="order">
<div class="order">
<c:out value="${order.title}" />
</div>
</c:foreach>
</d:fetch>
</html>
그래서, 내가 무엇을 원하는? JSP 렌더링 엔진이 내 커스텀 태그 (이 예제에서는 FetchTag)를 두 번 호출하기를 원한다. 첫 번째 호출에서 FetchTag는 DataSource.fetch() 호출을 수행하고 Future를 객체 필드로 로컬로 저장합니다. 두 번째 호출 FetchTag에서 Future.get() 호출을 수행하면 데이터를 사용할 수있을 때까지 차단됩니다.
그런 일을 할 수있는 방법이 있습니까?
예, 우리는 그것에 대해 생각했습니다. 하지만 js 장애가있는 클라이언트와의 호환성을 저장하려고합니다. 어쩌면이 작업에 더 적합한 다른 템플릿 엔진이있을 수 있습니까? –