[JBoss JIRA] Created: (RF-6456) SuggestionAction called twice during request if usingSuggestObjects = true
by Gerrit Brehmer (JIRA)
SuggestionAction called twice during request if usingSuggestObjects = true
--------------------------------------------------------------------------
Key: RF-6456
URL: https://jira.jboss.org/jira/browse/RF-6456
Project: RichFaces
Issue Type: Bug
Affects Versions: 3.3.0
Reporter: Gerrit Brehmer
SuggestionAction is called twice, if usingSuggestObjects is activated. I looked into the sourcecode and found the two calls:
# Action with value from request/input field (method setupValue - setValue(suggestingAction.invoke(context.getELContext(), new Object[]{submittedValue}));)
# Action with "null" as string (method getRequestValuesData - setValue(suggestingAction.invoke(context.getELContext(), new Object[]{requestedValue}));)
(SourceCode from UiSuggestionAction.java Tag 3.3.0)
Is the second call really necessary? Because we call an expensive backend method (200ms - 7000ms for address suggest) this makes a noticable delay for the user
Our workaround is to return an empty list for the second call, which doesn't change the behaviour
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 10 months
[JBoss JIRA] Created: (RF-8056) DragIndicator is shown below modal panel
by Nick Belaevski (JIRA)
DragIndicator is shown below modal panel
----------------------------------------
Key: RF-8056
URL: https://jira.jboss.org/jira/browse/RF-8056
Project: RichFaces
Issue Type: Bug
Components: component-drag/drop
Affects Versions: 3.3.2.SR1
Reporter: Nick Belaevski
Try the following code. Open modalPanel and try to drag any framework item - drag indicator is shown when cursor is out of panel and it's below it.
<rich:modalPanel id="mp" minHeight="200" minWidth="450"
height="400" width="600" zindex="2000">
<f:facet name="header">
<h:outputText value="Modal Panel Title" />
</f:facet>
<f:facet name="controls">
</f:facet>
<rich:dragIndicator id="indicator" />
<h:form id="form">
<h:panelGrid columnClasses="panelc" columns="4" width="100%">
<rich:panel style="width:133px">
<f:facet name="header">
<h:outputText value="Source List" />
</f:facet>
<h:dataTable id="src" columns="1" value="#{dndBean.frameworks}"
var="fm" footerClass="footerClass">
<h:column>
<a4j:outputPanel style="width:100px;border:1px solid gray;padding:2px"
layout="block">
<rich:dragSupport dragIndicator="indicator"
dragType="#{fm.family}" dragValue="#{fm}">
<rich:dndParam name="label" value="#{fm.name}" />
</rich:dragSupport>
<h:outputText value="#{fm.name}"></h:outputText>
</a4j:outputPanel>
</h:column>
<f:facet name="footer">
<a4j:commandButton action="#{dndBean.reset}" value="Start Over" reRender="src,phptable,cftable,dnettable"/>
</f:facet>
</h:dataTable>
</rich:panel>
<rich:panel styleClass="dropTargetPanel">
<f:facet name="header">
<h:outputText value="PHP Frameworks" />
</f:facet>
<rich:dropSupport id="php" acceptedTypes="PHP" dropValue="PHP"
dropListener="#{eventBean.processDrop}" reRender="phptable, src">
</rich:dropSupport>
<h:dataTable id="phptable" columns="1" value="#{dndBean.containerPHP}" var="fm">
<h:column>
<h:outputText value="#{fm.name}"></h:outputText>
</h:column>
</h:dataTable>
</rich:panel>
<rich:panel styleClass="dropTargetPanel">
<f:facet name="header">
<h:outputText value=".NET Frameworks" />
</f:facet>
<rich:dropSupport id="dnet" acceptedTypes="DNET" dropValue="DNET"
dropListener="#{eventBean.processDrop}" reRender="dnettable, src">
</rich:dropSupport>
<h:dataTable id="dnettable" columns="1" value="#{dndBean.containerDNET}" var="fm">
<h:column>
<h:outputText value="#{fm.name}"></h:outputText>
</h:column>
</h:dataTable>
</rich:panel>
<rich:panel styleClass="dropTargetPanel">
<f:facet name="header">
<h:outputText value="ColdFusion Frameworks" />
</f:facet>
<rich:dropSupport id="cf" acceptedTypes="CF" dropValue="CF"
dropListener="#{eventBean.processDrop}" reRender="cftable, src">
</rich:dropSupport>
<h:dataTable id="cftable" columns="1" value="#{dndBean.containerCF}" var="fm">
<h:column>
<h:outputText value="#{fm.name}"></h:outputText>
</h:column>
</h:dataTable>
</rich:panel>
</h:panelGrid>
</h:form>
<p>Any JSF content might be inside the panel. In case of using
Facelets or JSF 1.2, it might be any mixed content.</p>
<p>The RichFaces modal panel is good with <a4j:include> to create
a wizard like behavior.</p>
<p>The model panel is open and closed from the javascript function
on <i>Richfaces</i> object. The following code
<a href="#" onclick="#{rich:component('mp')}.hide()">hide this panel</a>:
<f:verbatim>#</f:verbatim>{rich:component('mp')}.hide()</p>
</rich:modalPanel>
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 10 months
[JBoss JIRA] Created: (RF-7922) RenderPhaseDataScrollerVisitor does not work with Tomahawk AliasBean Component
by Mirko Sertic (JIRA)
RenderPhaseDataScrollerVisitor does not work with Tomahawk AliasBean Component
------------------------------------------------------------------------------
Key: RF-7922
URL: https://jira.jboss.org/jira/browse/RF-7922
Project: RichFaces
Issue Type: Bug
Components: component-tables
Affects Versions: 3.3.1
Reporter: Mirko Sertic
The default RenderPhaseDataScrollerVisitor does not work with the Tomahawk AliasBean Component.
Basically, it is invoked by a PhaseListener. It recomputes the model size of the bound UIData and does some other stuff. And here starts the problem. When i use a t:aliasBean to define the datamodel for the UIData, it does not work, as the aliasBean component sets and unsets the alias during its lifecycle processing.
Now, the RenderPhaseDataScrollerVisitor is invoked before the aliasBean can do its job. An empty DataModel is created and put to the modelmap. Later, aliasBean does it work, and the UIData tries to render. Instead of asking again for the datamodel, it uses the empty model from the modelmap, and thus the table is empty.
I know that it is somehow difficult to support every component, but at least it should be supported to disable the RenderPhaseDataScrollerVisitor in some way, or provide my own implementation for it
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 10 months