partialTriggers doesn't take a space separated list of Strings
--------------------------------------------------------------

                 Key: TRINIDAD-1654
                 URL: https://issues.apache.org/jira/browse/TRINIDAD-1654
             Project: MyFaces Trinidad
          Issue Type: Bug
          Components: Components, Facelets
    Affects Versions:  1.2.12-core
         Environment: Facelets 1.1.14, Trinidad 1.2.12, Glassfish v2.1
            Reporter: Bart Kummel


When using Facelets, the partiaTriggers attribute doesn't accept any String 
value, it only accepts an array of Strings. While this is fine in Java code, it 
should be possible to use a space-separated list directly in a Facelets page 
definition, like this:
<tr:inputText partialTriggers="comp1 comp2"/>
However, the above example will give the following stack trace, even if only 
one component is referenced (partialTriggers="comp1"):

java.lang.IllegalArgumentException: Cannot convert comp1 of type class 
java.lang.String to class [Ljava.lang.String;
        at 
com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:76)
        at 
org.apache.myfaces.trinidad.bean.FacesBeanImpl.getProperty(FacesBeanImpl.java:68)
        at org.apache.myfaces.trinidad.bean.util.ValueMap.get(ValueMap.java:66)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.decode(UIXComponentBase.java:693)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.processDecodes(UIXComponentBase.java:802)
        at 
org.apache.myfaces.trinidad.component.UIXEditableValue.processDecodes(UIXEditableValue.java:236)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.decodeChildrenImpl(UIXComponentBase.java:988)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.decodeChildren(UIXComponentBase.java:974)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.processDecodes(UIXComponentBase.java:799)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.decodeChildrenImpl(UIXComponentBase.java:988)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.decodeChildren(UIXComponentBase.java:974)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.processDecodes(UIXComponentBase.java:799)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.decodeChildrenImpl(UIXComponentBase.java:988)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.decodeChildren(UIXComponentBase.java:974)
        at 
org.apache.myfaces.trinidad.component.UIXForm.processDecodes(UIXForm.java:75)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.decodeChildrenImpl(UIXComponentBase.java:988)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.decodeChildren(UIXComponentBase.java:974)
        at 
org.apache.myfaces.trinidad.component.UIXComponentBase.processDecodes(UIXComponentBase.java:799)
        at 
javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:705)
        at javax.faces.component.UIViewRoot.access$001(UIViewRoot.java:62)
        at javax.faces.component.UIViewRoot$1.process(UIViewRoot.java:121)
        at javax.faces.component.UIViewRoot.process(UIViewRoot.java:260)
        at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:117)
        at 
org.apache.myfaces.lifecycle.ApplyRequestValuesExecutor.execute(ApplyRequestValuesExecutor.java:32)
        at 
org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
        at 
org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:151)
        at 
org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:427)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:333)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
        at 
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
        at 
org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
        at 
org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:313)
        at 
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:287)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:218)
        at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
        at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
        at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
        at 
com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:222)
        at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
        at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:166)
        at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
        at 
org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
        at 
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
        at 
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
        at 
org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:288)
        at 
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:647)
        at 
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:579)
        at 
com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:831)
        at 
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
        at 
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
        at 
com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
        at 
com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
        at 
com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
Caused by: java.lang.IllegalArgumentException: Cannot convert comp1 of type 
class java.lang.String to class [Ljava.lang.String;
        at com.sun.el.lang.ELSupport.coerceToType(ELSupport.java:381)
        at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:209)
        at 
com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
        ... 60 more

Note that this issue is a duplicate of TRINIDAD-1417, but that one was not 
clear and Matthais advised to create a new issue. Hope the description is more 
clear now.
 

-- 
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