[
https://issues.apache.org/jira/browse/WICKET-1888?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12660212#action_12660212
]
Christian Oldiges commented on WICKET-1888:
-------------------------------------------
Well, here is my case (using 1.3.5, but the code didnt change for 1.4, right?).
The structure is: MyPage.MyForm.MyFragment.CustomCheckbox
There is the MyFragment inbetween which is used to for a wizard style form, but
it should not have any influence on this problem.
Additionally I am using the .xml files instead of .properties which again
should not have any impact.
CustomCheckbox does a setRequired(true) in its constructor and is supposed to
provide its own error msg in case the checkbox hasnt been checked by the user.
This is used all over the application and is therefore put into a custom
component (you know DRY ...)
There is a CustomCheckbox.xml file next to the class file in the package
structure. Its contains one entry:
<entry key="Required">CUSTOM CHECKBOX TEXT</entry>
There is a MyPage.xml file next to the class file of the MyPage class.
Now if I dont put an entry for "CustomCheckboxID.Required" into MyPage.xml, the
standard Required from "Application.properties" text will be shown, which means
the "Required" entry in "CustomCheckbox.xml" is ignored, as described in the
original posting.
If I put an entry in MyPage.xml like this:
<entry key="CustomCheckboxID.Required">PAGE TEXT</entry>
The text "PAGE TEXT" is picked up. But in my case the last example:
MyTextField.properties: Required = My Text
does not work. The reason is, that the formComponent's parent is tried first
and it is succesful in picking up the "Required" entry from the
Application.properties file. Thus the formComponent resources are never ever
tried.
BTW; The 2. last example "myTextfield.Required" is not really useful, because
the instance id of the component should never be known by the component itself
during development time. So the "myTextfield." part is not known during
development.
> FormComponents (and subclasses) should be able to provide their own resource
> bundles
> ------------------------------------------------------------------------------------
>
> Key: WICKET-1888
> URL: https://issues.apache.org/jira/browse/WICKET-1888
> Project: Wicket
> Issue Type: Improvement
> Components: wicket
> Affects Versions: 1.3.4
> Reporter: Christian Oldiges
> Priority: Minor
>
> In order to fully support the idea to break down a large application into
> small reusable components it seems necessary that FormComponents provide
> their own resource bundles. We have a project that uses a customized subclass
> of Checkbox that needs to provide customized error messages. The ideal place
> for those error messages would be a resource bundle living next to the
> Checkbox subclass but this is not yet supported. Unfortunately the JavaDoc
> for ComponentStringResourceLoader indicates (see example: input1.properties
> => Required) that support for this already exists.
> A small change to FormComponent$MessageSource.getMessage(String key) could
> add support for this. Instead of using the formComponent.getParent() as the
> base for searching the resource string, simply use the formComponent itself.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.