You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@myfaces.apache.org by Guy Bashan <gu...@gmail.com> on 2009/05/27 17:50:51 UTC

[MyFaces][Core] TimeZone problem

Hi all,

I am trying to use f:convertDateTime with String value:
          <h:outputText
value="#{cmp_summary.cmpCampaign.cmpDeliveryLimits.startDate}">
            <f:convertDateTime locale="#{appBean.userLanguageLocale}"
timeZone="#{cmp_summary.cmpCampaign.timeZone}" type="both" />
          </h:outputText>

but I am getting this exception:
java.lang.IllegalArgumentException: Cannot convert Asia/Tokyo of type class
java.lang.String to class java.util.TimeZone
    at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:380)
    at
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
    at
org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
    at
org.apache.myfaces.shared_impl.taglib.UIComponentELTagUtils.evaluateValueExpression(UIComponentELTagUtils.java:378)
    at
org.apache.myfaces.taglib.core.ConvertDateTimeTag.setConverterTimeZone(ConvertDateTimeTag.java:213)
    at
org.apache.myfaces.taglib.core.ConvertDateTimeTag.createConverter(ConvertDateTimeTag.java:137)
    at javax.faces.webapp.ConverterELTag.doStartTag(ConverterELTag.java:62)
    at
org.apache.myfaces.taglib.core.ConvertDateTimeTag.doStartTag(ConvertDateTimeTag.java:125)
    at
org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_f_005fconvertDateTime_005f1(cmp_005fsummary_jsp.java:11871)
    at
org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_h_005foutputText_005f149(cmp_005fsummary_jsp.java:11836)
    at
org.apache.jsp.cmp_005fsummary_jsp._jspService(cmp_005fsummary_jsp.java:892)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
    at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
    at
org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
    at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
    at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
    at
org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:341)
    at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:486)
    at
org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:337)
    at
org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
    at
org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
    at
org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
    at
org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:155)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
    at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
    at
org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
    at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at
org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at
com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:97)
    at
com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:61)
    at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
    at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
    at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
    at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    at java.lang.Thread.run(Thread.java:619)

Is it a bug? When I pass a direct string it all works ok.

Thanks,
Guy.

Re: [MyFaces][Core] TimeZone problem

Posted by Leonardo Uribe <lu...@gmail.com>.
2009/5/28 Guy Bashan <gu...@gmail.com>

> I couldn't find a direct link to the latest build. Is there any?
>

http://people.apache.org/repo/m2-snapshot-repository/org/apache/myfaces


>
> Thanks,
> Guy.
>
>
> On Thu, May 28, 2009 at 10:28 AM, Leonardo Uribe <lu...@gmail.com> wrote:
>
>> Hi
>>
>> Checking the stack trace:
>>
>> IllegalArgumentException: Cannot convert Asia/Tokyo of type class
>> java.lang.String to class java.util.TimeZone
>>     at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:380)
>>     at
>> org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
>>     at
>> org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
>>     at
>> org.apache.myfaces.shared_impl.taglib.UIComponentELTagUtils.evaluateValueExpression(UIComponentELTagUtils.java:378)
>>     at
>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.setConverterTimeZone(ConvertDateTimeTag.java:213)
>>     at
>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.createConverter(ConvertDateTimeTag.java:137)
>>
>>  The problem was solved on
>>
>> http://issues.apache.org/jira/browse/MYFACES-2177
>>
>> The coercion is forced because myfaces-core.tld mention it.
>>
>> regards
>>
>> Leonardo Uribe
>>
>> 2009/5/28 Leonardo Uribe <lu...@gmail.com>
>>
>> Hi
>>>
>>> This sounds reasonable, since String to TimeZone conversion is supported
>>> from tag class. It could be good to file an issue for this one.
>>>
>>> regards
>>>
>>> Leonardo Uribe
>>>
>>> 2009/5/28 Guy Bashan <gu...@gmail.com>
>>>
>>> OK, now I understand the Exception... ;-)
>>>> It will be nice if String will be supported in ValueBinding as well...
>>>>
>>>> Thanks!
>>>> Guy.
>>>>
>>>>
>>>> On Wed, May 27, 2009 at 8:08 PM, Volker Weber <v....@inexso.de>wrote:
>>>>
>>>>> Hi Guy,
>>>>>
>>>>> the valuebinding should return a TimeZone object not a String.
>>>>>
>>>>>
>>>>> Regards,
>>>>>    Volker
>>>>>
>>>>> 2009/5/27 Guy Bashan <gu...@gmail.com>:
>>>>> > Hi all,
>>>>> >
>>>>> > I am trying to use f:convertDateTime with String value:
>>>>> >           <h:outputText
>>>>> > value="#{cmp_summary.cmpCampaign.cmpDeliveryLimits.startDate}">
>>>>> >             <f:convertDateTime locale="#{appBean.userLanguageLocale}"
>>>>> > timeZone="#{cmp_summary.cmpCampaign.timeZone}" type="both" />
>>>>> >           </h:outputText>
>>>>> >
>>>>> > but I am getting this exception:
>>>>> > java.lang.IllegalArgumentException: Cannot convert Asia/Tokyo of type
>>>>> class
>>>>> > java.lang.String to class java.util.TimeZone
>>>>> >     at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:380)
>>>>> >     at
>>>>> >
>>>>> org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
>>>>> >     at
>>>>> >
>>>>> org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
>>>>> >     at
>>>>> >
>>>>> org.apache.myfaces.shared_impl.taglib.UIComponentELTagUtils.evaluateValueExpression(UIComponentELTagUtils.java:378)
>>>>> >     at
>>>>> >
>>>>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.setConverterTimeZone(ConvertDateTimeTag.java:213)
>>>>> >     at
>>>>> >
>>>>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.createConverter(ConvertDateTimeTag.java:137)
>>>>> >     at
>>>>> javax.faces.webapp.ConverterELTag.doStartTag(ConverterELTag.java:62)
>>>>> >     at
>>>>> >
>>>>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.doStartTag(ConvertDateTimeTag.java:125)
>>>>> >     at
>>>>> >
>>>>> org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_f_005fconvertDateTime_005f1(cmp_005fsummary_jsp.java:11871)
>>>>> >     at
>>>>> >
>>>>> org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_h_005foutputText_005f149(cmp_005fsummary_jsp.java:11836)
>>>>> >     at
>>>>> >
>>>>> org.apache.jsp.cmp_005fsummary_jsp._jspService(cmp_005fsummary_jsp.java:892)
>>>>> >     at
>>>>> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>>>>> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>>>> >     at
>>>>> >
>>>>> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
>>>>> >     at
>>>>> >
>>>>> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
>>>>> >     at
>>>>> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
>>>>> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
>>>>> >     at
>>>>> >
>>>>> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:341)
>>>>> >     at
>>>>> >
>>>>> org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:486)
>>>>> >     at
>>>>> >
>>>>> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:337)
>>>>> >     at
>>>>> >
>>>>> org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
>>>>> >     at
>>>>> >
>>>>> org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
>>>>> >     at
>>>>> >
>>>>> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
>>>>> >     at
>>>>> >
>>>>> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
>>>>> >     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:155)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>>> >     at
>>>>> org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
>>>>> >     at
>>>>> org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
>>>>> >     at
>>>>> >
>>>>> org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
>>>>> >     at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>>> >     at
>>>>> >
>>>>> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>>> >     at
>>>>> >
>>>>> com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:97)
>>>>> >     at
>>>>> >
>>>>> com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:61)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>>>>> >     at
>>>>> >
>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
>>>>> >     at
>>>>> >
>>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
>>>>> >     at
>>>>> >
>>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>>>>> >     at
>>>>> >
>>>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>>>>> >     at java.lang.Thread.run(Thread.java:619)
>>>>> >
>>>>> > Is it a bug? When I pass a direct string it all works ok.
>>>>> >
>>>>> > Thanks,
>>>>> > Guy.
>>>>> >
>>>>> >
>>>>> >
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> inexso - information exchange solutions GmbH
>>>>> Bismarckstraße 13      | 26122 Oldenburg
>>>>> Tel.: +49 441 4082 356 |
>>>>> FAX:  +49 441 4082 355 | www.inexso.de
>>>>>
>>>>
>>>>
>>>
>>
>

Re: [MyFaces][Core] TimeZone problem

Posted by Guy Bashan <gu...@gmail.com>.
I couldn't find a direct link to the latest build. Is there any?

Thanks,
Guy.

On Thu, May 28, 2009 at 10:28 AM, Leonardo Uribe <lu...@gmail.com> wrote:

> Hi
>
> Checking the stack trace:
>
> IllegalArgumentException: Cannot convert Asia/Tokyo of type class
> java.lang.String to class java.util.TimeZone
>     at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:380)
>     at
> org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
>     at
> org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
>     at
> org.apache.myfaces.shared_impl.taglib.UIComponentELTagUtils.evaluateValueExpression(UIComponentELTagUtils.java:378)
>     at
> org.apache.myfaces.taglib.core.ConvertDateTimeTag.setConverterTimeZone(ConvertDateTimeTag.java:213)
>     at
> org.apache.myfaces.taglib.core.ConvertDateTimeTag.createConverter(ConvertDateTimeTag.java:137)
>
> The problem was solved on
>
> http://issues.apache.org/jira/browse/MYFACES-2177
>
> The coercion is forced because myfaces-core.tld mention it.
>
> regards
>
> Leonardo Uribe
>
> 2009/5/28 Leonardo Uribe <lu...@gmail.com>
>
> Hi
>>
>> This sounds reasonable, since String to TimeZone conversion is supported
>> from tag class. It could be good to file an issue for this one.
>>
>> regards
>>
>> Leonardo Uribe
>>
>> 2009/5/28 Guy Bashan <gu...@gmail.com>
>>
>> OK, now I understand the Exception... ;-)
>>> It will be nice if String will be supported in ValueBinding as well...
>>>
>>> Thanks!
>>> Guy.
>>>
>>>
>>> On Wed, May 27, 2009 at 8:08 PM, Volker Weber <v....@inexso.de> wrote:
>>>
>>>> Hi Guy,
>>>>
>>>> the valuebinding should return a TimeZone object not a String.
>>>>
>>>>
>>>> Regards,
>>>>    Volker
>>>>
>>>> 2009/5/27 Guy Bashan <gu...@gmail.com>:
>>>> > Hi all,
>>>> >
>>>> > I am trying to use f:convertDateTime with String value:
>>>> >           <h:outputText
>>>> > value="#{cmp_summary.cmpCampaign.cmpDeliveryLimits.startDate}">
>>>> >             <f:convertDateTime locale="#{appBean.userLanguageLocale}"
>>>> > timeZone="#{cmp_summary.cmpCampaign.timeZone}" type="both" />
>>>> >           </h:outputText>
>>>> >
>>>> > but I am getting this exception:
>>>> > java.lang.IllegalArgumentException: Cannot convert Asia/Tokyo of type
>>>> class
>>>> > java.lang.String to class java.util.TimeZone
>>>> >     at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:380)
>>>> >     at
>>>> >
>>>> org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
>>>> >     at
>>>> >
>>>> org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
>>>> >     at
>>>> >
>>>> org.apache.myfaces.shared_impl.taglib.UIComponentELTagUtils.evaluateValueExpression(UIComponentELTagUtils.java:378)
>>>> >     at
>>>> >
>>>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.setConverterTimeZone(ConvertDateTimeTag.java:213)
>>>> >     at
>>>> >
>>>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.createConverter(ConvertDateTimeTag.java:137)
>>>> >     at
>>>> javax.faces.webapp.ConverterELTag.doStartTag(ConverterELTag.java:62)
>>>> >     at
>>>> >
>>>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.doStartTag(ConvertDateTimeTag.java:125)
>>>> >     at
>>>> >
>>>> org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_f_005fconvertDateTime_005f1(cmp_005fsummary_jsp.java:11871)
>>>> >     at
>>>> >
>>>> org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_h_005foutputText_005f149(cmp_005fsummary_jsp.java:11836)
>>>> >     at
>>>> >
>>>> org.apache.jsp.cmp_005fsummary_jsp._jspService(cmp_005fsummary_jsp.java:892)
>>>> >     at
>>>> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>>>> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>>> >     at
>>>> >
>>>> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
>>>> >     at
>>>> >
>>>> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
>>>> >     at
>>>> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
>>>> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
>>>> >     at
>>>> >
>>>> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:341)
>>>> >     at
>>>> >
>>>> org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:486)
>>>> >     at
>>>> >
>>>> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:337)
>>>> >     at
>>>> >
>>>> org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
>>>> >     at
>>>> >
>>>> org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
>>>> >     at
>>>> >
>>>> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
>>>> >     at
>>>> >
>>>> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
>>>> >     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:155)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>> >     at
>>>> org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
>>>> >     at
>>>> org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
>>>> >     at
>>>> >
>>>> org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
>>>> >     at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>> >     at
>>>> >
>>>> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>> >     at
>>>> >
>>>> com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:97)
>>>> >     at
>>>> >
>>>> com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:61)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>>>> >     at
>>>> >
>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>>>> >     at
>>>> >
>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>>>> >     at
>>>> >
>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>>>> >     at
>>>> >
>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
>>>> >     at
>>>> >
>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
>>>> >     at
>>>> >
>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>>>> >     at
>>>> >
>>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>>>> >     at java.lang.Thread.run(Thread.java:619)
>>>> >
>>>> > Is it a bug? When I pass a direct string it all works ok.
>>>> >
>>>> > Thanks,
>>>> > Guy.
>>>> >
>>>> >
>>>> >
>>>>
>>>>
>>>>
>>>> --
>>>> inexso - information exchange solutions GmbH
>>>> Bismarckstraße 13      | 26122 Oldenburg
>>>> Tel.: +49 441 4082 356 |
>>>> FAX:  +49 441 4082 355 | www.inexso.de
>>>>
>>>
>>>
>>
>

Re: [MyFaces][Core] TimeZone problem

Posted by Leonardo Uribe <lu...@gmail.com>.
Hi

Checking the stack trace:

IllegalArgumentException: Cannot convert Asia/Tokyo of type class
java.lang.String to class java.util.TimeZone
    at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:380)
    at
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
    at
org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
    at
org.apache.myfaces.shared_impl.taglib.UIComponentELTagUtils.evaluateValueExpression(UIComponentELTagUtils.java:378)
    at
org.apache.myfaces.taglib.core.ConvertDateTimeTag.setConverterTimeZone(ConvertDateTimeTag.java:213)
    at
org.apache.myfaces.taglib.core.ConvertDateTimeTag.createConverter(ConvertDateTimeTag.java:137)

The problem was solved on

http://issues.apache.org/jira/browse/MYFACES-2177

The coercion is forced because myfaces-core.tld mention it.

regards

Leonardo Uribe

2009/5/28 Leonardo Uribe <lu...@gmail.com>

> Hi
>
> This sounds reasonable, since String to TimeZone conversion is supported
> from tag class. It could be good to file an issue for this one.
>
> regards
>
> Leonardo Uribe
>
> 2009/5/28 Guy Bashan <gu...@gmail.com>
>
> OK, now I understand the Exception... ;-)
>> It will be nice if String will be supported in ValueBinding as well...
>>
>> Thanks!
>> Guy.
>>
>>
>> On Wed, May 27, 2009 at 8:08 PM, Volker Weber <v....@inexso.de> wrote:
>>
>>> Hi Guy,
>>>
>>> the valuebinding should return a TimeZone object not a String.
>>>
>>>
>>> Regards,
>>>    Volker
>>>
>>> 2009/5/27 Guy Bashan <gu...@gmail.com>:
>>> > Hi all,
>>> >
>>> > I am trying to use f:convertDateTime with String value:
>>> >           <h:outputText
>>> > value="#{cmp_summary.cmpCampaign.cmpDeliveryLimits.startDate}">
>>> >             <f:convertDateTime locale="#{appBean.userLanguageLocale}"
>>> > timeZone="#{cmp_summary.cmpCampaign.timeZone}" type="both" />
>>> >           </h:outputText>
>>> >
>>> > but I am getting this exception:
>>> > java.lang.IllegalArgumentException: Cannot convert Asia/Tokyo of type
>>> class
>>> > java.lang.String to class java.util.TimeZone
>>> >     at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:380)
>>> >     at
>>> >
>>> org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
>>> >     at
>>> >
>>> org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
>>> >     at
>>> >
>>> org.apache.myfaces.shared_impl.taglib.UIComponentELTagUtils.evaluateValueExpression(UIComponentELTagUtils.java:378)
>>> >     at
>>> >
>>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.setConverterTimeZone(ConvertDateTimeTag.java:213)
>>> >     at
>>> >
>>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.createConverter(ConvertDateTimeTag.java:137)
>>> >     at
>>> javax.faces.webapp.ConverterELTag.doStartTag(ConverterELTag.java:62)
>>> >     at
>>> >
>>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.doStartTag(ConvertDateTimeTag.java:125)
>>> >     at
>>> >
>>> org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_f_005fconvertDateTime_005f1(cmp_005fsummary_jsp.java:11871)
>>> >     at
>>> >
>>> org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_h_005foutputText_005f149(cmp_005fsummary_jsp.java:11836)
>>> >     at
>>> >
>>> org.apache.jsp.cmp_005fsummary_jsp._jspService(cmp_005fsummary_jsp.java:892)
>>> >     at
>>> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>>> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>> >     at
>>> >
>>> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
>>> >     at
>>> >
>>> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
>>> >     at
>>> org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
>>> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
>>> >     at
>>> >
>>> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:341)
>>> >     at
>>> >
>>> org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:486)
>>> >     at
>>> >
>>> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:337)
>>> >     at
>>> >
>>> org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
>>> >     at
>>> >
>>> org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
>>> >     at
>>> >
>>> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
>>> >     at
>>> >
>>> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
>>> >     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:155)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>> >     at
>>> org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
>>> >     at
>>> org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
>>> >     at
>>> >
>>> org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
>>> >     at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>> >     at
>>> >
>>> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>> >     at
>>> >
>>> com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:97)
>>> >     at
>>> >
>>> com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:61)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>>> >     at
>>> >
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>> >     at
>>> >
>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>>> >     at
>>> >
>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>>> >     at
>>> >
>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
>>> >     at
>>> >
>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>>> >     at
>>> >
>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>>> >     at
>>> >
>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>>> >     at
>>> >
>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
>>> >     at
>>> >
>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
>>> >     at
>>> >
>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>>> >     at
>>> > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>>> >     at java.lang.Thread.run(Thread.java:619)
>>> >
>>> > Is it a bug? When I pass a direct string it all works ok.
>>> >
>>> > Thanks,
>>> > Guy.
>>> >
>>> >
>>> >
>>>
>>>
>>>
>>> --
>>> inexso - information exchange solutions GmbH
>>> Bismarckstraße 13      | 26122 Oldenburg
>>> Tel.: +49 441 4082 356 |
>>> FAX:  +49 441 4082 355 | www.inexso.de
>>>
>>
>>
>

Re: [MyFaces][Core] TimeZone problem

Posted by Leonardo Uribe <lu...@gmail.com>.
Hi

This sounds reasonable, since String to TimeZone conversion is supported
from tag class. It could be good to file an issue for this one.

regards

Leonardo Uribe

2009/5/28 Guy Bashan <gu...@gmail.com>

> OK, now I understand the Exception... ;-)
> It will be nice if String will be supported in ValueBinding as well...
>
> Thanks!
> Guy.
>
>
> On Wed, May 27, 2009 at 8:08 PM, Volker Weber <v....@inexso.de> wrote:
>
>> Hi Guy,
>>
>> the valuebinding should return a TimeZone object not a String.
>>
>>
>> Regards,
>>    Volker
>>
>> 2009/5/27 Guy Bashan <gu...@gmail.com>:
>> > Hi all,
>> >
>> > I am trying to use f:convertDateTime with String value:
>> >           <h:outputText
>> > value="#{cmp_summary.cmpCampaign.cmpDeliveryLimits.startDate}">
>> >             <f:convertDateTime locale="#{appBean.userLanguageLocale}"
>> > timeZone="#{cmp_summary.cmpCampaign.timeZone}" type="both" />
>> >           </h:outputText>
>> >
>> > but I am getting this exception:
>> > java.lang.IllegalArgumentException: Cannot convert Asia/Tokyo of type
>> class
>> > java.lang.String to class java.util.TimeZone
>> >     at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:380)
>> >     at
>> > org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
>> >     at
>> >
>> org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
>> >     at
>> >
>> org.apache.myfaces.shared_impl.taglib.UIComponentELTagUtils.evaluateValueExpression(UIComponentELTagUtils.java:378)
>> >     at
>> >
>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.setConverterTimeZone(ConvertDateTimeTag.java:213)
>> >     at
>> >
>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.createConverter(ConvertDateTimeTag.java:137)
>> >     at
>> javax.faces.webapp.ConverterELTag.doStartTag(ConverterELTag.java:62)
>> >     at
>> >
>> org.apache.myfaces.taglib.core.ConvertDateTimeTag.doStartTag(ConvertDateTimeTag.java:125)
>> >     at
>> >
>> org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_f_005fconvertDateTime_005f1(cmp_005fsummary_jsp.java:11871)
>> >     at
>> >
>> org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_h_005foutputText_005f149(cmp_005fsummary_jsp.java:11836)
>> >     at
>> >
>> org.apache.jsp.cmp_005fsummary_jsp._jspService(cmp_005fsummary_jsp.java:892)
>> >     at
>> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>> >     at
>> >
>> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
>> >     at
>> > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
>> >     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
>> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
>> >     at
>> >
>> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:341)
>> >     at
>> >
>> org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:486)
>> >     at
>> >
>> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:337)
>> >     at
>> >
>> org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
>> >     at
>> >
>> org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
>> >     at
>> >
>> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
>> >     at
>> >
>> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
>> >     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:155)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>> >     at
>> org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
>> >     at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
>> >     at
>> >
>> org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
>> >     at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>> >     at
>> >
>> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>> >     at
>> >
>> com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:97)
>> >     at
>> >
>> com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:61)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>> >     at
>> >
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>> >     at
>> >
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>> >     at
>> >
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>> >     at
>> >
>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
>> >     at
>> >
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>> >     at
>> >
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>> >     at
>> >
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>> >     at
>> >
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
>> >     at
>> >
>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
>> >     at
>> >
>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>> >     at
>> > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>> >     at java.lang.Thread.run(Thread.java:619)
>> >
>> > Is it a bug? When I pass a direct string it all works ok.
>> >
>> > Thanks,
>> > Guy.
>> >
>> >
>> >
>>
>>
>>
>> --
>> inexso - information exchange solutions GmbH
>> Bismarckstraße 13      | 26122 Oldenburg
>> Tel.: +49 441 4082 356 |
>> FAX:  +49 441 4082 355 | www.inexso.de
>>
>
>

Re: [MyFaces][Core] TimeZone problem

Posted by Guy Bashan <gu...@gmail.com>.
OK, now I understand the Exception... ;-)
It will be nice if String will be supported in ValueBinding as well...

Thanks!
Guy.

On Wed, May 27, 2009 at 8:08 PM, Volker Weber <v....@inexso.de> wrote:

> Hi Guy,
>
> the valuebinding should return a TimeZone object not a String.
>
>
> Regards,
>    Volker
>
> 2009/5/27 Guy Bashan <gu...@gmail.com>:
> > Hi all,
> >
> > I am trying to use f:convertDateTime with String value:
> >           <h:outputText
> > value="#{cmp_summary.cmpCampaign.cmpDeliveryLimits.startDate}">
> >             <f:convertDateTime locale="#{appBean.userLanguageLocale}"
> > timeZone="#{cmp_summary.cmpCampaign.timeZone}" type="both" />
> >           </h:outputText>
> >
> > but I am getting this exception:
> > java.lang.IllegalArgumentException: Cannot convert Asia/Tokyo of type
> class
> > java.lang.String to class java.util.TimeZone
> >     at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:380)
> >     at
> > org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
> >     at
> >
> org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
> >     at
> >
> org.apache.myfaces.shared_impl.taglib.UIComponentELTagUtils.evaluateValueExpression(UIComponentELTagUtils.java:378)
> >     at
> >
> org.apache.myfaces.taglib.core.ConvertDateTimeTag.setConverterTimeZone(ConvertDateTimeTag.java:213)
> >     at
> >
> org.apache.myfaces.taglib.core.ConvertDateTimeTag.createConverter(ConvertDateTimeTag.java:137)
> >     at
> javax.faces.webapp.ConverterELTag.doStartTag(ConverterELTag.java:62)
> >     at
> >
> org.apache.myfaces.taglib.core.ConvertDateTimeTag.doStartTag(ConvertDateTimeTag.java:125)
> >     at
> >
> org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_f_005fconvertDateTime_005f1(cmp_005fsummary_jsp.java:11871)
> >     at
> >
> org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_h_005foutputText_005f149(cmp_005fsummary_jsp.java:11836)
> >     at
> >
> org.apache.jsp.cmp_005fsummary_jsp._jspService(cmp_005fsummary_jsp.java:892)
> >     at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> >     at
> >
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
> >     at
> > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
> >     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
> >     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> >     at
> >
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
> >     at
> >
> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
> >     at
> >
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
> >     at
> >
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
> >     at
> >
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:341)
> >     at
> >
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:486)
> >     at
> >
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:337)
> >     at
> >
> org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
> >     at
> >
> org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
> >     at
> >
> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
> >     at
> > org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
> >     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:155)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> >     at
> org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
> >     at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
> >     at
> >
> org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
> >     at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> >     at
> >
> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> >     at
> >
> com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:97)
> >     at
> >
> com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:61)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
> >     at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> >     at
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
> >     at
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
> >     at
> >
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
> >     at
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
> >     at
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> >     at
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> >     at
> >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
> >     at
> >
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
> >     at
> >
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
> >     at
> > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
> >     at java.lang.Thread.run(Thread.java:619)
> >
> > Is it a bug? When I pass a direct string it all works ok.
> >
> > Thanks,
> > Guy.
> >
> >
> >
>
>
>
> --
> inexso - information exchange solutions GmbH
> Bismarckstraße 13      | 26122 Oldenburg
> Tel.: +49 441 4082 356 |
> FAX:  +49 441 4082 355 | www.inexso.de
>

Re: [MyFaces][Core] TimeZone problem

Posted by Volker Weber <v....@inexso.de>.
Hi Guy,

the valuebinding should return a TimeZone object not a String.


Regards,
    Volker

2009/5/27 Guy Bashan <gu...@gmail.com>:
> Hi all,
>
> I am trying to use f:convertDateTime with String value:
>           <h:outputText
> value="#{cmp_summary.cmpCampaign.cmpDeliveryLimits.startDate}">
>             <f:convertDateTime locale="#{appBean.userLanguageLocale}"
> timeZone="#{cmp_summary.cmpCampaign.timeZone}" type="both" />
>           </h:outputText>
>
> but I am getting this exception:
> java.lang.IllegalArgumentException: Cannot convert Asia/Tokyo of type class
> java.lang.String to class java.util.TimeZone
>     at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:380)
>     at
> org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
>     at
> org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
>     at
> org.apache.myfaces.shared_impl.taglib.UIComponentELTagUtils.evaluateValueExpression(UIComponentELTagUtils.java:378)
>     at
> org.apache.myfaces.taglib.core.ConvertDateTimeTag.setConverterTimeZone(ConvertDateTimeTag.java:213)
>     at
> org.apache.myfaces.taglib.core.ConvertDateTimeTag.createConverter(ConvertDateTimeTag.java:137)
>     at javax.faces.webapp.ConverterELTag.doStartTag(ConverterELTag.java:62)
>     at
> org.apache.myfaces.taglib.core.ConvertDateTimeTag.doStartTag(ConvertDateTimeTag.java:125)
>     at
> org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_f_005fconvertDateTime_005f1(cmp_005fsummary_jsp.java:11871)
>     at
> org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_h_005foutputText_005f149(cmp_005fsummary_jsp.java:11836)
>     at
> org.apache.jsp.cmp_005fsummary_jsp._jspService(cmp_005fsummary_jsp.java:892)
>     at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>     at
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
>     at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
>     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>     at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>     at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>     at
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
>     at
> org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
>     at
> org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
>     at
> org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
>     at
> org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:341)
>     at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:486)
>     at
> org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:337)
>     at
> org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
>     at
> org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
>     at
> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
>     at
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
>     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:155)
>     at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>     at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>     at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
>     at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
>     at
> org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
>     at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
>     at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>     at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>     at
> org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
>     at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>     at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>     at
> com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:97)
>     at
> com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:61)
>     at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>     at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>     at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>     at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>     at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
>     at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>     at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
>     at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>     at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
>     at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
>     at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
>     at
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>     at java.lang.Thread.run(Thread.java:619)
>
> Is it a bug? When I pass a direct string it all works ok.
>
> Thanks,
> Guy.
>
>
>



-- 
inexso - information exchange solutions GmbH
Bismarckstraße 13      | 26122 Oldenburg
Tel.: +49 441 4082 356 |
FAX:  +49 441 4082 355 | www.inexso.de

RE: MyFaces i18n with Russian problems

Posted by "Konovalov, Oleg " <ol...@citi.com>.
It's Windows XP.

I have put encoding setting (for response) in all JSP pages:

<%@ page pageEncoding="UTF-8" %>

<meta http-equiv="content-type" content="text/html; charset=utf-8">

That made all russian text show correctly in the GUI.

However, when I try to get that attribute from Managed Bean, it returns "?????"
I tried to set request  encoding setting in MB constructor, but that didn't help.

HttpServletRequest req = (HttpServletRequest)FacesContext.getCurrentInstance().getExternalContext().getRequest();

req.setCharacterEncoding("UTF-8");

Someone suggested to do that call in the Filter, but I am not sure how/where I do that.



My app doesn't have server.xml.  And it is deployed on WL domain, not inside the server.

I would try to avoid changing server setting, our support would hate that.



Thank you,

Oleg.



________________________________
From: Mike Quentel [mailto:mquentel@4dm-inc.com]
Sent: Tuesday, June 02, 2009 2:57 PM
To: 'MyFaces Discussion'
Subject: RE: MyFaces i18n with Russian problems

Given the OS and web container, the encoding settings for both will need to be set to support Cyrillic character sets; also, if necessary, install character sets (for the OS) for the language in question.

For example, in Tomcat, server.xml, Connector tag needs URIEncoding set to UTF-8:

 <Connector port="8080" maxHttpHeaderSize="8192"
               maxThreads="600" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="10000" disableUploadTimeout="true" URIEncoding="UTF-8" />

Oddly, JAVA_OPTS might need -Dfile.encoding=ISO-8859-1
rather than UTF-8.

For logging, use UTF-8 encoding.

log4j.appender.MyAppender.Encoding=UTF-8

What OS is this running on?

Mike Quentel

From: K, Oleg
Sent: 2 June 2009 13:27
To: 'MyFaces Discussion'
Subject: RE: MyFaces i18n with Russian problems

Weblogic 9.2 Express.


________________________________
From: A G
Sent: Tuesday, June 02, 2009 12:04 PM
To: MyFaces Discussion
Subject: Re: MyFaces i18n with Russian problems
Hi Oleg,

please provide the name/version of webcontainer which you use.
2009/5/27 K, Oleg
Hi,

I am new to JSF, trying to build prototype i18n JSF app with MyFaces 1.1.5
Mostly care about IE6/7, do not officially support other browsers.

I do have resource bundles, it is localized and internationalized.
So user is supposed to work in either English or Russian (and Spanish).

It all works except few issues:
1) When user enters something in Russian in inputText field on the first page,
trying to pass it to the next page via managed bean.
But instead of showing it in Russian, it shows some garbled text in outputText or outputLabel: Îëåã
FF3 & Chrome show it as: &#1054;&#1083;&#1077;&#1075; [&#xxxx, where xxxx us a 4 digits]
It does pick up labels from correct bundle on the next page, so locale is changed correctly.

Actually, when I switch locale on the same first page, getting the same problem (after it's refreshed).
Seems to work OK with Spanish.

Is that incorrect Cyrillic encoding, JSF encoding or broken Unicode or locale?
How can we fix that ?


Less important issues:
2) When we switch locale (correct values in bundles), on the screen it can not change currencyCode, currencySymbol, TimeZone,
it always shows the first one it picked, although dateTime and Number formatting changes correctly;

3) In IE6 "alt" tag attribute produces garbled characters in Russian (black vertical squares), looks like IE6 bug; FF3 & Chrome work fine.

Please help !

TIA,
Oleg.


RE: MyFaces i18n with Russian problems

Posted by Mike Quentel <mq...@4dm-inc.com>.
Given the OS and web container, the encoding settings for both will need to
be set to support Cyrillic character sets; also, if necessary, install
character sets (for the OS) for the language in question.

 

For example, in Tomcat, server.xml, Connector tag needs URIEncoding set to
UTF-8: 

 

 <Connector port="8080" maxHttpHeaderSize="8192"

               maxThreads="600" minSpareThreads="25" maxSpareThreads="75"

               enableLookups="false" redirectPort="8443" acceptCount="100"

               connectionTimeout="10000" disableUploadTimeout="true"
URIEncoding="UTF-8" />

 

Oddly, JAVA_OPTS might need -Dfile.encoding=ISO-8859-1 

rather than UTF-8.

 

For logging, use UTF-8 encoding.

 

log4j.appender.MyAppender.Encoding=UTF-8

 

What OS is this running on?

 

Mike Quentel

 

From: K, Oleg 
Sent: 2 June 2009 13:27
To: 'MyFaces Discussion'
Subject: RE: MyFaces i18n with Russian problems

 

Weblogic 9.2 Express.

 

 

  _____  

From: A G 
Sent: Tuesday, June 02, 2009 12:04 PM
To: MyFaces Discussion
Subject: Re: MyFaces i18n with Russian problems

Hi Oleg,

please provide the name/version of webcontainer which you use.

2009/5/27 K, Oleg 

Hi,

 

I am new to JSF, trying to build prototype i18n JSF app with MyFaces 1.1.5
Mostly care about IE6/7, do not officially support other browsers.

 

I do have resource bundles, it is localized and internationalized.
So user is supposed to work in either English or Russian (and Spanish).

 

It all works except few issues:
1) When user enters something in Russian in inputText field on the first
page, 
trying to pass it to the next page via managed bean.
But instead of showing it in Russian, it shows some garbled text in
outputText or outputLabel: Îëåã
FF3 & Chrome show it as: &#1054;&#1083;&#1077;&#1075; [&#xxxx, where xxxx us
a 4 digits]
It does pick up labels from correct bundle on the next page, so locale is
changed correctly.


Actually, when I switch locale on the same first page, getting the same
problem (after it's refreshed).
Seems to work OK with Spanish.

 

Is that incorrect Cyrillic encoding, JSF encoding or broken Unicode or
locale? 
How can we fix that ?

 


Less important issues:
2) When we switch locale (correct values in bundles), on the screen it can
not change currencyCode, currencySymbol, TimeZone,
it always shows the first one it picked, although dateTime and Number
formatting changes correctly;

 

3) In IE6 "alt" tag attribute produces garbled characters in Russian (black
vertical squares), looks like IE6 bug; FF3 & Chrome work fine.

 

Please help !

 

TIA,
Oleg.

 


RE: MyFaces i18n with Russian problems

Posted by "Konovalov, Oleg " <ol...@citi.com>.
Weblogic 9.2 Express.


________________________________
From: Anton Gavazuk [mailto:antongavazuk@gmail.com]
Sent: Tuesday, June 02, 2009 12:04 PM
To: MyFaces Discussion
Subject: Re: MyFaces i18n with Russian problems

Hi Oleg,

please provide the name/version of webcontainer which you use.

2009/5/27 Konovalov, Oleg <ol...@citi.com>>
Hi,

I am new to JSF, trying to build prototype i18n JSF app with MyFaces 1.1.5
Mostly care about IE6/7, do not officially support other browsers.

I do have resource bundles, it is localized and internationalized.
So user is supposed to work in either English or Russian (and Spanish).

It all works except few issues:
1) When user enters something in Russian in inputText field on the first page,
trying to pass it to the next page via managed bean.
But instead of showing it in Russian, it shows some garbled text in outputText or outputLabel: Îëåã
FF3 & Chrome show it as: &#1054;&#1083;&#1077;&#1075; [&#xxxx, where xxxx us a 4 digits]
It does pick up labels from correct bundle on the next page, so locale is changed correctly.

Actually, when I switch locale on the same first page, getting the same problem (after it's refreshed).
Seems to work OK with Spanish.

Is that incorrect Cyrillic encoding, JSF encoding or broken Unicode or locale?
How can we fix that ?


Less important issues:
2) When we switch locale (correct values in bundles), on the screen it can not change currencyCode, currencySymbol, TimeZone,
it always shows the first one it picked, although dateTime and Number formatting changes correctly;

3) In IE6 "alt" tag attribute produces garbled characters in Russian (black vertical squares), looks like IE6 bug; FF3 & Chrome work fine.

Please help !

TIA,
Oleg.


Re: MyFaces i18n with Russian problems

Posted by Anton Gavazuk <an...@gmail.com>.
Hi Oleg,

please provide the name/version of webcontainer which you use.

2009/5/27 Konovalov, Oleg <ol...@citi.com>

>  Hi,
>
> I am new to JSF, trying to build prototype i18n JSF app with MyFaces 1.1.5
> Mostly care about IE6/7, do not officially support other browsers.
>
> I do have resource bundles, it is localized and internationalized.
> So user is supposed to work in either English or Russian (and Spanish).
>
> It all works except few issues:
> 1) When user enters something in Russian in inputText field on the first
> page,
> trying to pass it to the next page via managed bean.
> But instead of showing it in Russian, it shows some garbled text in
> outputText or outputLabel: Îëåã
> FF3 & Chrome show it as: &#1054;&#1083;&#1077;&#1075; [&#xxxx, where xxxx
> us a 4 digits]
> It does pick up labels from correct bundle on the next page, so locale is
> changed correctly.
>
> Actually, when I switch locale on the same first page, getting the same
> problem (after it's refreshed).
> Seems to work OK with Spanish.
>
> Is that incorrect Cyrillic encoding, JSF encoding or broken Unicode or
> locale?
> How can we fix that ?
>
>
> Less important issues:
> 2) When we switch locale (correct values in bundles), on the screen it can
> not change currencyCode, currencySymbol, TimeZone,
> it always shows the first one it picked, although dateTime and Number
> formatting changes correctly;
>
> 3) In IE6 "alt" tag attribute produces garbled characters in Russian (black
> vertical squares), looks like IE6 bug; FF3 & Chrome work fine.
>
> Please help !
>
> TIA,
> Oleg.
>

MyFaces i18n with Russian problems

Posted by "Konovalov, Oleg " <ol...@citi.com>.
Hi,

I am new to JSF, trying to build prototype i18n JSF app with MyFaces 1.1.5
Mostly care about IE6/7, do not officially support other browsers.

I do have resource bundles, it is localized and internationalized.
So user is supposed to work in either English or Russian (and Spanish).

It all works except few issues:
1) When user enters something in Russian in inputText field on the first page,
trying to pass it to the next page via managed bean.
But instead of showing it in Russian, it shows some garbled text in outputText or outputLabel: Îëåã
FF3 & Chrome show it as: &#1054;&#1083;&#1077;&#1075; [&#xxxx, where xxxx us a 4 digits]
It does pick up labels from correct bundle on the next page, so locale is changed correctly.

Actually, when I switch locale on the same first page, getting the same problem (after it's refreshed).
Seems to work OK with Spanish.

Is that incorrect Cyrillic encoding, JSF encoding or broken Unicode or locale?
How can we fix that ?


Less important issues:
2) When we switch locale (correct values in bundles), on the screen it can not change currencyCode, currencySymbol, TimeZone,
it always shows the first one it picked, although dateTime and Number formatting changes correctly;

3) In IE6 "alt" tag attribute produces garbled characters in Russian (black vertical squares), looks like IE6 bug; FF3 & Chrome work fine.

Please help !

TIA,
Oleg.

RE: [MyFaces][Core] TimeZone problem

Posted by "Konovalov, Oleg " <ol...@citi.com>.
Hi,

Sorry, I am not sure what might be wrong in that code.


On my side, I have noticed that TimeZone, CurrencyCode and CurrencySymbol
remain the same when you change locale (DateTime and Number converter formatting does change correctly).
Is that a bug ?
I am using MyFaces 1.1.5   Happens in all browsers.

Thank you,
Oleg.


________________________________
From: Guy Bashan [mailto:guy.bashan@gmail.com]
Sent: Wednesday, May 27, 2009 11:51 AM
To: MyFaces Discussion
Subject: [MyFaces][Core] TimeZone problem

Hi all,

I am trying to use f:convertDateTime with String value:
          <h:outputText value="#{cmp_summary.cmpCampaign.cmpDeliveryLimits.startDate}">
            <f:convertDateTime locale="#{appBean.userLanguageLocale}" timeZone="#{cmp_summary.cmpCampaign.timeZone}" type="both" />
          </h:outputText>

but I am getting this exception:
java.lang.IllegalArgumentException: Cannot convert Asia/Tokyo of type class java.lang.String to class java.util.TimeZone
    at org.apache.el.lang.ELSupport.coerceToType(ELSupport.java:380)
    at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:188)
    at org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)
    at org.apache.myfaces.shared_impl.taglib.UIComponentELTagUtils.evaluateValueExpression(UIComponentELTagUtils.java:378)
    at org.apache.myfaces.taglib.core.ConvertDateTimeTag.setConverterTimeZone(ConvertDateTimeTag.java:213)
    at org.apache.myfaces.taglib.core.ConvertDateTimeTag.createConverter(ConvertDateTimeTag.java:137)
    at javax.faces.webapp.ConverterELTag.doStartTag(ConverterELTag.java:62)
    at org.apache.myfaces.taglib.core.ConvertDateTimeTag.doStartTag(ConvertDateTimeTag.java:125)
    at org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_f_005fconvertDateTime_005f1(cmp_005fsummary_jsp.java:11871)
    at org.apache.jsp.cmp_005fsummary_jsp._jspx_meth_h_005foutputText_005f149(cmp_005fsummary_jsp.java:11836)
    at org.apache.jsp.cmp_005fsummary_jsp._jspService(cmp_005fsummary_jsp.java:892)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
    at org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:341)
    at org.apache.myfaces.application.jsp.JspViewHandlerImpl.buildView(JspViewHandlerImpl.java:486)
    at org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:337)
    at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
    at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
    at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
    at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:140)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:155)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
    at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
    at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
    at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at com.todacell.ui.view.filter.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:97)
    at com.todacell.ui.view.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:61)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    at java.lang.Thread.run(Thread.java:619)

Is it a bug? When I pass a direct string it all works ok.

Thanks,
Guy.