JS: Liferay.Service object calls a method which might not have been loaded

Description

The Service object makes a call to A.io.request which might not have been loaded before.

Steps to reproduce:
1) Set session.timeout.warning=0
2) Add the users admin portlet to a regular page (needs additional ADD_TO_PAGE permission).
3) Click Add|Regular Organization
At this point an error is thrown (A.io.request is not a function) and switching the org type won't work.

Activity

Show:

Pani Gui June 3, 2012 at 7:00 PM

PASSED Manual Testing following the steps in the description.

Fixed on:
Tomcat 7.0 + MySQL 5. Portal 6.1.x CE GIT ID: 55ace1f73625b0e225c291a757b9fbec1781f92a.

Pani Gui March 12, 2012 at 11:26 PM
Edited

PASSED Manual Testing following the steps in the description.

Reproduced on:
Tomcat 6.0 + MySQL 5. 6.0.x EE GIT ID: 16458e0884732ac5a12df5c7f16513edb726fdce.
Tomcat 7.0 + MySQL 5. 6.1.x EE GIT ID: f517a924f87837ba50be9ee3680a7a860b060834.
Tomcat 7.0 + MySQL 5. 6.2.x GIT ID: 9e55e714bfb18adc50a726b2f85f9ea52f3aa52e.

Organization type in organization information doesn't work and the created organization doesn't show up.

Fixed on:
Tomcat 6.0 + MySQL 5. 6.0.x EE GIT ID: 51d9d1a48127f014b1978bf7b0b65ea755d7034c.
Tomcat 7.0 + MySQL 5. 6.1.x EE GIT ID: f1ec1510962651d57317b3f74eb841e801e6c279.
Tomcat 7.0 + MySQL 5. 6.2.x GIT ID: 8bc08bc9434a7a98e554722c706c66ca8e578f67.

Switching organization type works and the created organization displays.

Michael Saechang March 8, 2012 at 11:16 AM

Committed on:
6.1.x GIT ID: 942848050fa231dcee9f63da1b20c83bf04c6a37.
6.2.x GIT ID: d48a9841e430c0b1b154e0f4df0970a5ad835641.

Iliyan Peychev March 8, 2012 at 6:01 AM

Hi Daniel,

Synchronous XMLHttpRequest is something really bad - the browser just hands until request finishes. You can imagine what will happen in case of network latency.
So we will have to find all the places where we do synchronous requests and convert them to use callbacks.

Thanks,
Iliyan

Daniel Reuther March 8, 2012 at 3:09 AM

Hey guys,

Thanks a lot for looking into it again, Nate! It's very much appreciated.

Iliyan, even though I think you're right in that we could move this into a module, I'm not sure how a asynchronous-only API is exactly supposed to work here. The current design is to wait for the response when no callback is passed to the ajax function. If you have a concrete concept in mind, I think it'd be better if you were to create the respective ticket.

Thanks,
Daniel

Fixed

Details

Assignee

Reporter

Branch Version/s

6.1.x
6.0.x

Backported to Branch

Committed

Git Pull Request

Components

Priority

Zendesk Support

Created February 29, 2012 at 4:03 AM
Updated June 24, 2023 at 3:52 PM
Resolved June 1, 2012 at 1:16 PM
Loading...