[ 
https://issues.apache.org/jira/browse/TRINIDAD-2076?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yee-Wah Lee updated TRINIDAD-2076:
----------------------------------

    Status: Patch Available  (was: Open)

> Facelets: LocaleTagPropertyRule does not match jspx implementation 
> -------------------------------------------------------------------
>
>                 Key: TRINIDAD-2076
>                 URL: https://issues.apache.org/jira/browse/TRINIDAD-2076
>             Project: MyFaces Trinidad
>          Issue Type: Bug
>          Components: Facelets
>    Affects Versions: 2.0.0-beta-2
>            Reporter: Yee-Wah Lee
>            Priority: Minor
>         Attachments: trunk_2076_LocaleTagPropertyRule.diff
>
>
> 1. Create a facelets page with a converter (e.g. numberConverter, 
> dateTimeConverter) which has its locale attribute set to a language-country. 
>   <tr:inputText label="ConvNumLocale:" id="it1">
>                 <tr:convertNumber type="currency" locale="pt-BR"/>
>             </tr:inputText>
> 2. Run the app, see the server log error.
> <XhtmlUtils> <addLib> Could not find scriptlet: LocaleInfo_pt-br
> 3. The component does not function because the Locale js file was not loaded. 
> This is because LocaleTagPropertyRule creates a Locale thus in 
> applyMetadata() :
>     Locale loc = new Locale(_attribute.getValue(ctx));
> which creates a Locale object with language="pt-br". However, the page is 
> actually requesting a Locale with language=pt, country=br.   Subsequently, it 
> is unable to find the LocaleInfo scriptlet for the locale with language pt-br.
> In the jspx case, there is a helper method TagUtils#getLocale() which takes 
> the string and create the Locale based on it. This correctly creates the 
> Locale, and the request for LocaleInfo scriptlet succeeds.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to