2010-07-11 1 views
0

개찰구 입력 양식을 가지고 놀고 있습니다. 나는 enumDropDownMenu A를 넣어 시도 :개찰구 리소스 문자열을 찾을 수 없습니까?

public enum Choice { ONE, TWO, THREE } 

    cz.oz.wicket.pages.form.FormPage.java 
    -------------- 
    .add(new DropDownChoice("choice", 
    Arrays.asList(Choice.values()), new EnumChoiceRenderer()) 
    ) 

을하고 등록 정보 파일을 추가 :

cz.oz.wicket.pages.form.FormPage.properties 
-------------- 
Choice.ONE = Jedna 
Choice.TWO = Dvě 
Choice.THREE = Tři 

내가 읽은에 따르면, 그것은 작동합니다.
는하지만 얻을 :

잘못 무엇
java.util.MissingResourceException: Unable to find property: 'Choice.ONE' 

at org.apache.wicket.Localizer.getString(Localizer.java:344) 
at org.apache.wicket.Localizer.getString(Localizer.java:100) 
at org.apache.wicket.markup.html.form.EnumChoiceRenderer.getDisplayValue(EnumChoiceRenderer.java:82) 
at org.apache.wicket.markup.html.form.EnumChoiceRenderer.getDisplayValue(EnumChoiceRenderer.java:39) 
at org.apache.wicket.markup.html.form.AbstractChoice.appendOptionHtml(AbstractChoice.java:384) 
at org.apache.wicket.markup.html.form.AbstractChoice.onComponentTagBody(AbstractChoice.java:361) 
at org.apache.wicket.Component.renderComponent(Component.java:2619) 
... 

?

감사합니다,
온 드라

답변

1

EnumChoiceRenderer 어디 속성 파일을보고 알 수 없습니다. 감사합니다 :) 을 Btw는 - -하지 DropDownChoice 년대를하지 왜 잘있어

cz.oz.wicket.pages.form.FormPage.java 
    -------------- 
    .add(new DropDownChoice("choice", 
    Arrays.asList(Choice.values()), new EnumChoiceRenderer(this)) 
    ) 
+0

:

당신은 렌더러에 대한 생성자 매개 변수로 페이지를 추가하여 속성 파일이 페이지에 연결되어 있는지를 알 수 있습니다 생성자가 인수없이 구성되면 자체 생성자를 구성 원 참조로 설정합니다. 나는 그것이 아무 것도 해를 끼치 지 않을 것이라고 생각한다. 나는 RFE를 제출하는 것 같은 기분이 든다. WDYT? –

+0

그러나 그때 그것은 개찰구 라이브러리에서 찾아야 할 DropDownChoice와 관련된 속성 파일을 찾고있을 것입니다. 특정 열거 형과 관련된 속성을 예상 할 수있는 방법이 없습니다. 이 열거 형에 대해 특별히 DropDownChoice의 하위 클래스를 정의하고 하위 클래스가 리소스를 소유하게 만들 수 있습니다. 이렇게하면 이러한 것들을 함께 깔끔하게 연결할 수 있습니다. –

+0

좋은 지적! 나는 여전히 Wicket의 교묘하게 사용되는 Java 기능에 익숙해 져있다. 감사. –