2013-06-17 2 views
0

내 JSP에서 일부 Scriptlet을 제거하려고하는데 거의 동일한 동일한 코드가 있지만 내 모델 클래스가 오류를 발생시킵니다. 가장 큰 차이점은 본질적으로 노드에서 Node.getNodes()를 호출하고 Iterable 인스턴스를 반환하는 JcrUtils.getChildNodes() 명령입니다. 나는이에 시간 동안 내 머리를 건 드리는 봤는데 그것을 알아낼 수 없습니다Java - 루프를 사용하여 모델 클래스에 스크립트를 보냅니다.

JSP :

final String HEADER = "header" 
final Node headerNode = currentNode.hasNode(HEADER) 

NodeIterator childLinks = headerNode.getNodes(); 

while (childLinks.hasNext()) { 
    Node link = (Node) childLinks.next(); 
    headerNode = link.getProperty("headerTitle"); 
    //do something with more child node properties 
} 

모델 클래스 :

final String HEADER = "header" 
final Node headerNode = currentNode.hasNode(HEADER) 

def headerNodeTitle = JcrUtils.getChildNodes(headerNode).find{ it.hasProperty("headerTitle") } 
selectHeaderLabel = topicNode.getProperty("headerTitle").getString(); 

ERROR

No signature of method: static org.apache.jackrabbit.commons.JcrUtils.getChildNodes() is applicable for argument types: (java.lang.String) values: [true] 

답변

1

오류 메시지를 기반으로 JcrUtils.getChildNodes(...)String 형식 매개 변수를 필요로합니다. 이 코드와 Node 유형의 객체를 전달하는 코드 JcrUtils.getChildNodes(headerNode)을 검토하십시오.

관련 문제