Article ID: 115881, created on Apr 2, 2013, last review on Nov 20, 2014

  • Applies to:
  • Operations Automation 5.5
  • Operations Automation 5.4
  • Plesk Automation 11.5

Symptoms

POA tasks to provision APS applications to customers fail with the error message PHP Fatal error: Call to undefined function like in the following examples:

PHP Fatal error: Call to undefined function getContextService() in /usr/local/pem/APS/instances/249/scripts/configure.php on line 166


PHP Fatal error: Call to undefined function getShopConfigService() in /usr/local/pem/APS/instances/150/scripts/configure.php on line 7

The name of the particular function may be different for different APS applications. The common symptom of the problem is that tasks fail with PHP fatal error Call to undefined function.

Cause

Provisioning scripts in APS applications use short form (<? ?>) of PHP's open tag while the corresponding short_open_tag option which allows using short form is disabled in the php.ini file on the Provisioning Gateway Host.

Resolution

Follow the steps below to resolve the problem.

  1. Find which Provisioning Gateway Host is used to provision APS application instance:

    • Find the application instance ID in the name of the failed task, e.g. in the example below the instance ID is 249:

      APS application 'Open-Xchange', id 112, instance 249 -> service 'context', instance 357: executing configuration script, site 'http://mail.customer.com/'
      
    • Having application instance ID find the Provisioning Gateway using the Knowledgebase article #115876 How to find Provisioning Gateway Host for APS application instance
  2. Log into the Provisioning Gateway Host using SSH or RDP (depending on the host OS)

  3. Correct the php.ini file - set the short_open_tag option to On:

    short_open_tag = On
    
  4. Restart the failed tasks in POA Task Manager.

The php.ini file file location:

  • Linux Provisioning Gateway Host:

    /etc/php.ini
    
  • Windows Provisioning Gateway Host (the default location):

    c:\PHP5\php.ini
    

    The exact location of the php.ini file on Windows server may be found in POA Provider Control Panel in the properties of the PHP package installed on the host (php.install.full.path parameter), see the example below:

Additional information

Refer to the official PHP documentation for more details about the short_open_tag option - http://www.php.net/manual/en/ini.core.php#ini.short-open-tag.

Search Words

Call to undefined function

'PHP Fatal error: Call to undefined function xmlrpc_encode_request() in /usr/local/pem/APS/instances/2710/scripts/inc/XmlRpcClient.php on line 38

errors: 'PHP Fatal error: Call to undefined function

caea8340e2d186a540518d08602aa065 5356b422f65bdad1c3e9edca5d74a1ae e12cea1d47a3125d335d68e6d4e15e07 5b048d9bddf8048a00aba7e0bdadef37 2554725ed606193dd9bbce21365bed4e 33a70544d00d562bbc5b17762c4ed2b3 e0aff7830fa22f92062ee4db78133079 ac82ce33439a9c1feec4ff4f2f638899

Email subscription for changes to this article
Save as PDF