Error 505 when creating a new delivery

Hello all,

I have been getting this error while trying to publish a test into a delivery "Error 505", after looking into the apache2 error log, I found the below error:

"PHP Fatal error: Cannot use 'Object' as class name as it is reserved in /srv/www/htdocs/tao/vendor/qtism/qtism/qtism/data/content/xhtml/Object.php on line 42, referer:"

I am on a fresh TAO 3.2.0-RC2 installation and this is the first time i am trying to create a delivery, i have php 7.3.3 and Apache/2.4.38 (Linux/SUSE).

I have done the patch where I change Object to QtiObject, even tried changing the class name mentioned in the error to QtiObject, however as expected this threw different errors.
Looking forward to your support

Kind Regards,
Mudar Kadah


  • Hi this has been patched and the fix is available in the 3.3 RC01 which can be found here:



  • hello amy,

    Thanks for your quick response, however pardon my ignorance, can you nudge me into how i can incorporate this patch into my build, tried the Readme.txt file within however without much luck

    thanks !!

  • There isn't an upgrade path yet from 3.2 to the release candidate for 3.3. You would need to do a fresh install.



  • edited April 2019

    Thanks, i wasn't sure at first how to do the installation from the referred package, in the new installation process, the checking configuration requirements keep loading with no response, I am getting the below error in the console:
    XML Parsing Error: syntax error
    Line Number 1, Column 1:

    Looking at the XML response, I am getting the below error, instead of the xml which why I am getting the above. in the xml response i am getting an error saying that it's missing a manifest file. see the full error below:
    Fatal error: Extension Manifest file could not be found in '/srv/www/htdocs/tao/tao/install/utils/../../../taoQtiTestPreviewer/manifest.php'.

    any idea how I can fix it ?

    Still with the i have php 7.3.3 and Apache/2.4.38 (Linux/SUSE). Trying to install the package your refereed to.

    Many thanks,

    2.JPG 101.6K
  • You can find instructions on how to add an extension here -

    As far as the error I've reached out to development but we are in the process of working on the new release.



  • edited April 2019

    Hello Amy,
    Thanks a lot, managed to fix it. it turns out this happens if i did a composer update after the install. again thanks a lot for your quick response.

    However still i am getting a new issue when finalizing the installation, when i click on install as per picture 3, the process runs for a bit then i get the install button green again (in an endless loop), in the console i get the below error:

    TypeError: data is undefined[Learn More] step_finalization.js:116:25
    jQuery 4

    See attached photo 5, however if i refresh the page it appears that the installtion goes to production mode and i can access the login page, however the login button is grayed out. see photo 4.

    Thanks !!!

    3.JPG 92.6K
    5.JPG 176.2K
  • amyamy
    edited April 2019

    What version is this on? And openSUSE still(Leap or Tunbleweed)?

  • Hello Amy,
    This is 3.3.0-sprint69 from i got the package from the link your shared then installed with composer.
    I am using SUSE Linux Enterprise Server 12 (x86_64)
    VERSION = 12

    the above is fixed by following the below: changing Object to QtiObject:
    doing the changes below:

    Do the same for this:
    Object -> QtiObject: /srv/www/htdocs/vendor/qtism/qtism/qtism/data/storage/xml/marshalling/ ContentMarshaller.php
    if the below step is not done, it leads back to same original error:
    Object -> QtiObject line41: /srv/www/htdocs/tao/vendor/qtism/qtism/qtism/data/content/xhtml
    after the above change:
    creating the delivery still creates an error, which is:
    QTI Test "QTI Example Test" publishing failed.
    The QTI Test XML or one of its dependencies is malformed or empty.

    Many thanks,
    Mudar Kadah

    6.JPG 146.8K
  • I saw a post where another member had a similar issue, however the solution wasn't very clear, do you have a clue what he is talking about ?
    see the post here:

  • Reading the reply it sounds like a permissions issue to where the webserver was writing. so the person moved the temp folder to a location within the webserver. Another option might just be to change ownership of the folder to be writable by the apache user.



  • Hello Amy,

    Again really thanks you for your continuous support, any idea where that temp folder is, as I wasn't able to figure that out.


  • Mudar,

    I'm not that up on SUSE I'm afraid but from the screenshot in the other post his errors were in /tmp. Also, check the permissions for the data/ directory within your installation. If you haven't set your system to debug yet that might help narrow down the issue as well.



  • hello amy,
    i have given the apache user permissions to /tmp folder, also checked the permissions for data/ with on luck.
    I haven't set my system to debug, how can i do that ?

    Mudar Kadah

  • i was also reviewing the installation log and this caught my eye, could be the issue ?
    2019-04-22 08:56:12 [WARNING] '/srv/www/htdocs/tao/package-tao/taoDelivery/manifest.php:75 - Use of undefined constant ROOT_URL - assumed 'ROOT_URL' (this will throw an Error in a future version of PHP)' /srv/www/htdocs/tao/package-tao/tao/install/services/class.InstallService.php 98

    there are quite a few of these warnings

  • the issues seems to be happening when the delivery is getting created with the sample test provided, i have created a new test and it worked.

  • In the installation of 3.3 you need to provide the location of a data directory. I tend to use something like /var/tao/data and then set that readable by my Apache user which on Ubuntu is www-data. So double check on your installation for that.

    As far as ROOT_URL, check in the generis.conf.php file for that parameter, it will be in the config directory where you've placed TAO.



  • hello amy, thanks a lot, however i wasn't able to figure out where to set the location of the data directory.
    the other thing, the issue appears to happen only when i have the item type hotspot, haven't tested with all types but it works with the multiple choice questions.

    Mudar Kadah

  • Did you use the wizard to install or the command line? Can we get the steps you used so we can attempt to replicate both the install and the item creation?



  • hello amy,
    i have used the wizard to install with the below options:

    TAO installation name: SAPTDI
    system url:
    Username for database account: postgres
    Password: password
    Enter database host name: localhost
    rewrite db if exists: yes
    upload sample data: yes
    tao db name: tao_db
    (db created from OS in commandline before installation)
    System Admin user: admin
    System Admin password: password

    I also did the below change for object to QtiObject as per the below link:

    as well as:
    Do the same for this:
    Object -> QtiObject: /srv/www/htdocs/tao/package-tao/vendor/qtism/qtism/qtism/data/storage/xml/marshalling/ContentMarshaller.php
    Object -> QtiObject line41: /srv/www/htdocs/tao/package-tao /vendor/qtism/qtism/qtism/data/content/xhtml/

    also after further investigation i get an error in the apache error log when i try to submit an answer while previewing an item which also relates to a null path file (see attached picture it1 with the error in preview).

    the second observation is that when a delivery creation fails, it still shows under groups only as a delivery with no label ( see attached it2).

    i am actually getting lost here, could it be because in these types of questions we upload a picture ?

    many thanks,

  • You're going to need to update your code to a newer release. The code is in the release-3.3-rc02 branch of the package-tao repository.


  • hello amy, thanks a lot, release-3.3-rc02 works like a charm :)

  • Glad to hear!!!

Sign In or Register to comment.

We use cookies on our website to support technical features that enhance your user experience. Cookie Policy Privacy Policy