Only date is returned wihen both dateStyle and timeStyle are set without 
specifying type
----------------------------------------------------------------------------------------

                 Key: MYFACES-1845
                 URL: https://issues.apache.org/jira/browse/MYFACES-1845
             Project: MyFaces Core
          Issue Type: Bug
    Affects Versions: 1.2.2
         Environment: MyFaces 1.2.2
            Reporter: Michael Concini


Given the following snippet, MyFaces should be rendering both the date and time 
but only renders the date.

<h:outputText value="#{MyBean.someTime}">
        <f:convertDateTime dateStyle="full" timeStyle="full" />
</h:outputText>

According to the spec, if type is not specified:
■ if dateStyle is set and timeStyle is not, type defaults to date
■ if timeStyle is set and dateStyle is not, type defaults to time
■ if both dateStyle and timeStyle are set, type defaults to both

The 1.2.2 implemtation always returns date.  I believe the problem is in the 
getType method of javax.faces.convert.DateTimeConverter.

Currently, anytime _type is null, its returning TYPE_DATE.  
        return _type != null ? _type : TYPE_DATE;

What might better comply with the spec would be to do something like this:
        if(_type == null){
                if(_dateStyle != null && _timeStyle != null){
                        return TYPE_BOTH;
                }else if(_timeStyle != null){
                        return TYPE_TIME;
                }else {
                        return TYPE_DATE;
                }               
        }
        return _type;

I've tested this code locally and it does fix the above behavior.  

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to