]
Michal Petrov updated RF-12132:
-------------------------------
Fix Version/s: 4.5.0.Alpha3
5.0.0.Alpha4
Richfaces queue not cleared after js error in oncomplete attribute
------------------------------------------------------------------
Key: RF-12132
URL:
https://issues.jboss.org/browse/RF-12132
Project: RichFaces
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: component-a4j-core
Affects Versions: 4.2.0.Final, 4.3.7
Environment: Myfaces 2.1.6
Tomcat 6.0.35
Reporter: Michael Heinen
Assignee: Michal Petrov
Labels: gss
Fix For: 4.3.8, 4.5.0.Alpha3, 5.0.0.Alpha4
Richfaces queue not cleared after js-error in oncomplete attribute
Submit a <a4j:commandButton> with oncomplete="myNotExistingFuncrtion();"
The ajax response arrives but the queue is not cleaned up after this due to the
javascript error
Starting from now no further ajax requests are possible because richfaces waits for
previous submit results.
Sample from the richfaces log:
{code}
debug[17:10:10.587]: New request added to queue. Queue requestGroupingId changed to
j_id_5:j_id_b
debug[17:10:10.615]: Queue will wait 0ms before submit
debug[17:10:10.644]: richfaces.queue: will submit request NOW
info [17:10:10.671]: Received 'begin' event from <input id=j_id_5:j_id_b
...>
info [17:10:10.707]: Received 'beforedomupdate' event from <input
id=j_id_5:j_id_b ...>
debug[17:10:10.729]: Server returned responseText: <?xml version="1.0"
encoding="utf-8"?><partial-response><changes><update
id="j_id_5:details"><![CDATA[<span id="j_id_5:details">
Content List: []</span>]]></update><update
id="javax.faces.ViewState"><![CDATA[Ks5ELN5RlWC9cOr14o5TwKjJIsvsN15m6RRwvmJhzzDPVRu0CANZgn6X/WbW2yDmQr2WO23dULmn
wieWEZBuLjpr9cB6Sh1pkPwozKCTGwOuq4ArOM3fSIO8zbDCP7orMXRzfA==
]]></update><extension
id="org.richfaces.extension"><complete>myNotExistingFuncrtion();;</complete></extension></changes></partial-response>
info [17:10:10.758]: Listing content of response changes element:
Element update for id=j_id_5:details
<update id="j_id_5:details"><![CDATA[<span
id="j_id_5:details"> Content List: []</span>]]></update>
Element update for id=javax.faces.ViewState
<update
id="javax.faces.ViewState"><![CDATA[Ks5ELN5RlWC9cOr14o5TwKjJIsvsN15m6RRwvmJhzzDPVRu0CANZgn6X/WbW2yDmQr2WO23dULmn
wieWEZBuLjpr9cB6Sh1pkPwozKCTGwOuq4ArOM3fSIO8zbDCP7orMXRzfA== ]]></update>
Element extension for id=org.richfaces.extension
<extension
id="org.richfaces.extension"><complete>myNotExistingFuncrtion();;</complete></extension>
debug[17:10:19.143]: New request added to queue. Queue requestGroupingId changed to
j_id_5:j_id_a
debug[17:10:19.171]: Queue will wait 0ms before submit
debug[17:10:19.201]: richfaces.queue: Waiting for previous submit results
{code}
A request without javascript error ends with:
{code}
debug[17:20:22.033]: richfaces.queue: ajax submit successfull
debug[17:20:22.075]: richfaces.queue: Nothing to submit
info [17:20:22.117]: Received 'success' event from <input id=j_id_5:j_id_b
...>
info [17:20:22.155]: Received 'complete' event from <input id=j_id_5:j_id_b
...>
{code}
I expect that the queue is cleaned up independent of javascript errors during
oncomplete.
Otherwise applications are not useable anymore.