2013-01-15 5 views
1

도와주세요.Mojarra의 복합 구성 요소에있는 EL

javax.el.PropertyNotFoundException: /resources/panels/modelsView.xhtml 
#{model.name}: Property 'name' not found on type java.lang.String 

나는 경우 : 내가 그것을 사용하는 경우

<composite:interface> 
    <composite:attribute name="value" default="#{modelsBean.allModels}" 
         type="java.util.List" /> 
</composite:interface> 

<composite:implementation> 
    <ui:repeat value="#{cc.attrs.value}" var="model" > 
     #{model.name} 
    </ui:repeat> 
</composite:implementation> 

, 그럼 내가 다음 오류가 있습니다

은 내가 복합 구성 요소가 인 Mojarra 2.1.16 톰캣 7

를 사용 변경

<ui:repeat value="#{cc.attrs.value}" var="model"> 

~

<ui:repeat value="#{modelsBean.allModels}" var="model"> 

모두 괜찮습니다.

어떻게 수정하나요?

답변

0

default 값으로 값 표현식을 할당 할 수 없습니다. 당신이 볼 수있는 속성 유형이 목록으로 설명, JSF composite component backing bean EL expression as default of required attribute failing, methods not known

+0

을 :하지만 <복합 : 속성 이름 = "값" 기본 = "# {modelsBean.allModels}" 에 대한 자세한 설명은 여기를 참조하십시오 type = "java.util.List"/> 이 목록의 요소에 문제가 있습니다. – AnEi

+0

나는 그것이 중요하지 않다고 생각한다.'default'는 문자열이나 프리미티브 인 값으로 만 작동하는 것처럼 보인다. 자세한 내용은 위 링크의 답변을 참조하십시오. 'default'를 사용하지 말고 컴포넌트를 사용하는 곳의 값을 설정하십시오. '' – fischermatte

+0

답장을 보내 주셔서 감사합니다. – AnEi