PPR doesn't complete in IE 7 when command component originates action, becomes
disabled, and is a partial target
----------------------------------------------------------------------------------------------------------------
Key: TRINIDAD-1035
URL: https://issues.apache.org/jira/browse/TRINIDAD-1035
Project: MyFaces Trinidad
Issue Type: Bug
Components: Components
Affects Versions: 1.0.7-core
Environment: IE 7
Reporter: Shawn Bertrand
Fix For: 1.0.8-core
This problem only occurs in IE 7 - Firefox 2.x is fine.
With partialSubmit=true on a command link or button, and when that link or
button is added as a partial target and becomes disabled during that
component's actionListener method, the link or button does become disabled
but PPR doesn't complete on any components listening to PPR events from the
link or button. The PPR fragments received by the client contain the correctly
updated and pertinent components, but the client doesn't process them.
This is reproducible in the PPR Demos page (pprDemos.jspx) with a few
modifications. With the changes below, the "Do a partial submit" link and
"partial Submit" buttons will become disabled as expected, but the time won't
be updated on the client - even though the PPR response contains the updated
fragment.
pprDemos.jspx:
=============
1. Change the "pSubLink" and "pSubButton" to:
<tr:commandLink id="pSub_link"
disabled="#{partialDemoUtil.btnDisabled}"
partialSubmit="true"
text="Do a partial Submit."
actionListener="#{partialDemoUtil.action}"/>
<tr:spacer height="6"/>
<tr:commandButton id="pSub_button"
disabled="#{partialDemoUtil.btnDisabled}"
partialSubmit="true"
text="partialSubmit Button"
actionListener="#{partialDemoUtil.action}"/>
PartialDemoUtilBean.java:
=====================
1. BtnDisabled binding methods:
private boolean _disabled = false;
public boolean getBtnDisabled()
{
return _disabled;
}
public void setBtnDisabled(boolean state)
{
_disabled = state;
}
2. Change the action(...) method to:
public void action(ActionEvent action)
{
// Just update the string which says when the last update was.
_status.setLinkUpdate();
setBtnDisabled(!_disabled);
RequestContext.getCurrentInstance().addPartialTarget(action.getComponent());
}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.