libs/foundation/global.jsp
을 내 jsp 맨 위에 포함하면 <cq:defineObjects />
이 호출되어 스크립틀릿에서 사용할 수있는 slingRequest 또는 currentNode 변수를 인스턴스화합니다. 그러나, 나는 콩을 만드는 등CQ 5.6의 빈에서 slingRequest 가져 오기
<jsp:useBean id="myBean" class="com.foo.bar.MyBean" />
<jsp:setProperty name="myBean" property="request" value="<%= slingRequest %>" />
처럼 내 콩에서 나는 빈을 인스턴스화하고 현재에 대한 참조를 전달하고있어
다음public SlingHttpServletRequest getRequest() {
return resource;
}
public void setRequest(SlingHttpServletRequest request) {
this.resource = resource;
}
게터/세터에게이를 포함하고있다 의뢰.
내 질문에이 매개 변수를 전달하지 않아도되는 이유는 무엇입니까? 일종의 정적 컨텍스트를 통해 현재 요청에 대한 참조를 가져 와서 생성자에서 bean 속성을 설정할 수있는 방법이 있습니까?
jsp : useBean을 사용하는 경우 Bean 내에서 모든 인스턴스에 액세스 할 수있는 PageContext에 액세스 할 수 있는지 확실하지 않습니다. 요청과 같은 속성을 삽입하는 빈에 대한 사용자 정의 태그가 있습니다. 슬링 모델, 슬라이스, NEBA ... – Thomas