Moodle

HttpRequest 404 Error Handling

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 1.8.4
  • Fix Version/s: 1.8.6, 1.9.1
  • Component/s: SCORM
  • Labels:
    None
  • Environment:
    Windows XP SP2 + IE7
  • Database:
    MySQL
  • Affected Branches:
    MOODLE_18_STABLE
  • Fixed Branches:
    MOODLE_18_STABLE, MOODLE_19_STABLE

Description

File: /mod/scorm/api.php
Include: /mod/scorm/datamodels/scorm_12.js.php
Line: 546
Error: Object doesn't support this property or method

The value of variable 'result' is 404 (numeric). The call to split this number by line-break fails when the return code is the single number indicating file not found. This can be fixed by casting result to a string, leaving the errorCode variable undefined.

results = String(result).split("\n");

Note: The cause of this issue is the failure of the POST HTTP request, causing page redirection to return the response code 404 (even though an actual page is reached). I suspect this may be caused by session variable expiry, since the referenced /mod/scorm/datamodel.php file does exist. The error is more common when the server is under load, typically indicated by a longer time taking to return from the DoRequest() method.

The return value of StoreData() function appears not to be used - which can result in the silent loss of student results!

Activity

Hide
Dan Poltawski added a comment -

Thanks Peter! I've applied the fix to prevent the error, I think we need to file another bug for the issue of checking the status of this request and indeed trying to find where the 404's are coming from..

Show
Dan Poltawski added a comment - Thanks Peter! I've applied the fix to prevent the error, I think we need to file another bug for the issue of checking the status of this request and indeed trying to find where the 404's are coming from..
Hide
Petr Škoda (skodak) added a comment -

reviewed, closing

Show
Petr Škoda (skodak) added a comment - reviewed, closing

People

Vote (0)
Watch (0)

Dates

  • Created:
    Updated:
    Resolved: