Expand my Community achievements bar.

Enhance your AEM Assets & Boost Your Development: [AEM Gems | June 19, 2024] Improving the Developer Experience with New APIs and Events

App is not running on server

Avatar

Level 1

Hi,

My lccs application is not running on server even server is supporting ssl.

php version on server is 5.2.14.

i tried to print lccs RTCAccount object on server its giving some fatal error.

i got response like .....

Array
(
    [wrapper_data] => Array
        (
            [headers] => Array
                (
                    [0] => HTTP/1.1 302 Moved Temporarily
                    [1] => Server: Apache-Coyote/1.1
                    [2] => X-Powered-By: Servlet 2.4; JBoss-4.2.1.GA (build: SVNTag=JBoss_4_2_1_GA date=200707131605)/Tomcat-5.5
                    [3] => Expires: Fri, 15 Oct 2010 15:23:37 GMT
                    [4] => Cache-Control: max-age=30
                    [5] => Set-Cookie: Whitcomb-Ident=vatrai:na2-sdk-9b17de0a-2188-4f2e-89b2-9453f6eb6be2; Domain=collaboration.adobelivecycle.com; Path=/vatrai
                    [6] => Location: https://na2.collaboration.adobelivecycle.com/vatrai?mode=xml&accountonly=true&;
                    [7] => Content-Language: en-US
                    [8] => Content-Length: 0
                    [9] => Date: Fri, 15 Oct 2010 15:23:06 GMT
                    [10] => HTTP/1.1 200 OK
                    [11] => Server: Apache-Coyote/1.1
                    [12] => Set-Cookie: JSESSIONID=ZubjKocVM3rJinHDTxkN.22; Path=/
                    [13] => Cache-Control: max-age=0
                    [14] => Content-Type: text/xml;charset=UTF-8
                    [15] => Content-Length: 190
                    [16] => Date: Fri, 15 Oct 2010 15:23:08 GMT
                )

            [readbuf] => Resource id #4
        )

    [wrapper_type] => cURL
    [stream_type] => cURL
    [mode] => r
    [unread_bytes] => 0
    [seekable] =>
    [uri] => https://collaboration.adobelivecycle.com/vatrai?mode=xml&accountonly=true&;
    [timed_out] =>
    [blocked] => 1
    [eof] =>
)


Array
(
    [0] =>
)

Fatal error:  Uncaught exception 'RTCError' in /home/myapp/public_html/videos/lccs.php:707 Stack trace: #0 /home/myapp/public_html/videos/lccs.php(587): RTC->http_get('https://collabo...', Array) #1 /home/myapp/public_html/videos/lccs.php(254): RTCAccount->do_initialize() #2 /home/myapp/public_html/videos/a.php(16): RTCAccount->__construct('https://collabo...') #3 {main}   thrown in

/home/myapp/public_html/videos/lccs.php on line

707

11 Replies

Avatar

Employee

What version of the PHP library do you have ? (it should be printed in the header).

I don't have any version that matches a possible error on line 707.

I suspect the error is in this area:

             $meta = stream_get_meta_data($fp);

             $headers = $meta['wrapper_data'];

          ...

            if ($statusLine[1] == "200" | $statusLine[1] == "302")

                return $resp;

            else

                throw new RTCError($statusLine[1]);

I am expecting $headers[0] to be something like "HTTP/1.1 200 OK" but if I look at your debug messages I see this:

            [headers] => Array
                (

                    [0] => HTTP/1.1 302 Moved Temporarily

                                         ...

                    [10] => HTTP/1.1 200 OK
                }

i.e. the "response" contains both the "redirect response" (302) and the real response (200).
This would still be ok since I am checking for both 200 and 302:

            if ($statusLine[1] == "200" | $statusLine[1] == "302")

               return $resp;

Can you try to print out the value of $statusLine when the error occur ? Or please send us your version of lccs.php.

I suspect something is missing in there (and again, it doesn't seem to match any version that I have in our source repository)



Avatar

Level 1

Hi Raff,

As i think you are the author of this library so you can solve this problem. Required information given below..

/*************************************************************
*************************************************************
**
** Adobe LiveCycle Collaboration Service Account Management API
**
** Revision
**   $Revision: #1 $ - $Date: 2010/07/26 $
**
** Author
**   Raffaele Sena
**
** Copyright
**
**   ADOBE SYSTEMS INCORPORATED
**     Copyright 2007 Adobe Systems Incorporated
**     All Rights Reserved.
**
**   NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the
**   terms of the Adobe license agreement accompanying it.  If you have received this file from a
**   source other than Adobe, then your use, modification, or distribution of it requires the prior
**   written permission of Adobe.
**
*************************************************************
*************************************************************/

and status line on server is given below:

Array
(
    [0] =>
)

Thanks again for your quick response.

Thanks

Vishnu

Avatar

Employee

Sorry but as I said before none of the versions we release has anything meaningful at line 707.

Can you send me the full file you are using ? You can attach it to a reply to the forum or send it to me privately.

Avatar

Level 1

hi Raff,

I am sending my lccs.php. Please see this and give me solution. My project date is already finished. Please reply soon.  

Avatar

Employee

I don't see any attachment. Did you post it here ?

Avatar

Level 1

Sorry.... I am pasting here full code of lccs.php...

<?php
/*************************************************************
*************************************************************
**
** Adobe LiveCycle Collaboration Service Account Management API
**
** Revision
**   $Revision: #1 $ - $Date: 2010/07/26 $
**
** Author
**   Raffaele Sena
**
** Copyright
**
**   ADOBE SYSTEMS INCORPORATED
**     Copyright 2007 Adobe Systems Incorporated
**     All Rights Reserved.
**
**   NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the
**   terms of the Adobe license agreement accompanying it.  If you have received this file from a
**   source other than Adobe, then your use, modification, or distribution of it requires the prior
**   written permission of Adobe.
**
*************************************************************
*************************************************************/

/*****************************************************
*
* error thrown or generated by RTC API
*
*/
class RTCError extends Exception {
}

/*****************************************************
*
* Constants for common user roles
*
*/
interface RTCUserRole {
    const NONE = 0;
    const LOBBY = 5;
    const VIEWER = 10;
    const PUBLISHER = 50;
    const OWNER = 100;
}

/*****************************************************
*
* Constants for node configuration
*
*/
interface NodeConfiguration {
    const STORAGE_SCHEME_SINGLE_ITEM = 0;
    const STORAGE_SCHEME_QUEUE       = 1;
    const STORAGE_SCHEME_MANUAL      = 2;
}

/*****************************************************
*
* a class that generates RTC authentication tokens
*
*/
class RTCAuthenticator {

    private $authURL;

    function __construct($url) {
        $this->authURL = $url;
    }

    //
    // Get an RTC authentication token give login and password.
    //
    function login($user, $password, & $retHeaders) {
        $headers = array (
            "Content-Type" => 'text/xml'
        );

        $data = "<request><username>{$user}</username><password>{$password}</password></request>";

        $resp = RTC::http_post($this->authURL, $data, $headers);

        if (RTC::$DEBUG)
            echo "$resp\n";

        try {
            $result = new SimpleXMLElement($resp);
        } catch (Exception $e) {
            throw new RTCError("bad-response");
        }

        if ($result['status'] == "ok") {
            $auth = $result->authtoken;
            if ($auth['type'] == "COOKIE") {
                $retHeaders["Cookie"] = (string) $auth;
                return null;
            } else {
                $gak = base64_encode($auth);
                return "gak={$gak}";
            }
        } else
            throw new RTCError($resp);
    }

    //
    // Get a guest authentication token.
    //
    function guestLogin($user) {
        $guk = base64_encode("g:{$user}:");
        return "guk={$guk}";
    }
}

/*****************************************************
*
* a class that deals with meeting sessions and # external collaboration
*
*/

class RTCSession {

    private $instance;
    private $account;
    private $room;
    private $secret;

    function __construct($instance, $account, $room) {
        $this->instance = str_replace("#room#", $room, $instance);
        $this->account = $account;
        $this->room = $room;
    }

    /**
     * get an external authentication token
     */
    function getAuthenticationToken($accountSecret, $name, $id, $role) {
        $role = (int) $role;
        if ($role < RTCUserRole::NONE || $role > RTCUserRole::OWNER)
            throw new RTCError("invalid-role");
        $utfname = utf8_encode($name);
        $token = "x:{$utfname}::{$this->account}:{$id}:{$this->room}:{$role}";
        $signature = $this->sign($accountSecret, $token);
        $signed = "{$token}:{$signature}";

        // unencoded
        // $ext = "ext={$signed}";

        // encoded
        $encoded = base64_encode($signed);
        $ext = "exx={$encoded}";

        return $ext;
    }
   
    /**
     * get the userId that the server will generate for this user
     */
    function getUserID($id) {
      return strtoupper("EXT-{$this->account}-{$id}");
    }

    function getSecret($baseURL, $authToken, $authHeaders) {
        $data = RTC::http_get("{$baseURL}app/session?instance={$this->instance}&{$authToken}", $authHeaders);

        if (RTC::$DEBUG)
            echo $data;

        $response = new SimpleXMLElement($data);
        $this->secret = (string) $response-> {
            'session-secret' };
    }

    function invalidate($baseURL, $authToken, $authHeaders) {
        $data = "action=delete&instance={$this->instance}&{$authToken}";
        $res = RTC::http_post("${baseURL}app/session", $data, $authHeaders);

        if (RTC::$DEBUG)
            echo $res;

        $this->instance = null;
        $this->account = null;
        $this->room = null;
        $this->secret = null;
    }

    private function sign($acctSecret, $data) {
        $key = "{$acctSecret}:{$this->secret}";

        // Calculate HMAC-SHA1 according to RFC2104
        // http://www.ietf.org/rfc/rfc2104.txt
        $blocksize = 64;
        $hashfunc = 'sha1';
        if (strlen($key) > $blocksize)
            $key = pack('H*', $hashfunc ($key));
        $key = str_pad($key, $blocksize, chr(0x00));
        $ipad = str_repeat(chr(0x36), $blocksize);
        $opad = str_repeat(chr(0x5c), $blocksize);
        $hmac = pack('H*', $hashfunc (($key ^ $opad) .
        pack('H*', $hashfunc (($key ^ $ipad) . $data))));
        return bin2hex($hmac);
    }
}

/*****************************************************
*
* A class that contains room or template item information.
*
*/
class RTCItem {
    public $name;
    public $desc;
    public $created;

    function __construct($name, $desc, $created) {
        $this->name = $name;
        $this->desc = $desc;
        $this->created = date_create($created);
    }
}

/*****************************************************
*
* a class that deals with account information and provisioning
*
*/
class RTCAccount {
    const ROOM_ITEMS = "meetings";
    const TEMPLATE_ITEMS = "templates";

    public $url;
    private $authToken;
    private $uathHeaders;
    private $authenticator;
    private $baseURL;
    private $contentPath;

    function contentURL() {
        return "{$this->baseURL}app/content{$this->contentPath}";
    }

    function __construct($url) {
        $this->url = $url;
        $this->authToken = null;
        $this->authHeaders = array ();
        $this->authenticator = null;
        $this->baseURL = null;
        $this->contentPath = null;
        $this->roomInstance = null;

        if (RTC::$DEBUG)
            echo RTC::$VERSION . "\n";

        $this->do_initialize();
    }

    }

    //
    // Return the node configuration
    // """
    function getNodeConfiguration($room, $coll, $node) {
        $instance = str_replace("#room#", $room, $this->roomInstance);
        $path = "/{$coll}/nodes/{$node}/configuration";
        return RTC::http_get("{$this->baseURL}app/rtc?instance={$instance}&path={$path}&{$this->authToken}", $this->authHeaders);
    }

    //
    // Return the RTC items given collection and node
    //
    function fetchItems($room, $coll, $node, $items = null) {
        $instance = str_replace("#room#", $room, $this->roomInstance);
        $params = "instance={$instance}&collection=${coll}&node={$node}";
        if ($items != null) {
            if (!is_array($items))
                $items = array (
                    $items
                );
            while (list ($i, $it) = each($items)) {
                $params .= "&item={$it}";
            }
        }
        $params .= "&{$this->authToken}";
        return RTC::http_get("{$this->baseURL}app/rtc?{$params}", $this->authHeaders);
    }

    //
    // Publish an item
    //
    function publishItem($room, $collection, $node, $item, $overwrite = false) {
        $headers = array_merge($this->authHeaders, array ( "Content-Type" => 'text/xml' ));

        $instance = str_replace("#room#", $room, $this->roomInstance);
        $params = "instance={$instance}&action=publish&collection={$collection}&node={$node}";
        if ($overwrite) $params .= "&overwrite={$overwrite}";
        $params .= "&{$this->authToken}";
        $data = "<request>" . RTC::array_toXML($item, "item") . "</request>";

        return RTC::http_post("{$this->baseURL}app/rtc?{$params}", $data, $headers);
    }

    //
    // Retract an item
    //
    function retractItem($room, $collection, $node, $itemID) {
        $instance = str_replace("#room#", $room, $this->roomInstance);
        $data = "instance={$instance}&collection={$collection}&node={$node}&item={$itemID}&{$this->authToken}";
        return RTC::http_post("{$this->baseURL}app/rtc", $data, $this->authHeaders);
    }

    //
    // Set user role
    //
    function setUserRole($room, $userID, $role, $coll = null, $node = null) {
        $instance = str_replace("#room#", $room, $this->roomInstance);
    $data = "instance={$instance}&action=setrole&user={$userID}&role={$role}";

    if ($coll != null)
        $data .= "&collection={$coll}";
    if ($coll != null)
        $data .= "&node={$node}";

    $data .= "&{$this->authToken}";
        return RTC::http_post("{$this->baseURL}app/rtc", $data, $this->authHeaders);
    }

    //
    // Returns information about the account, if active
    //
    function getAccountInfo() {
        $acctid = explode('/', $this->roomInstance);
        $acctid = $acctid[0];
        $data = RTC::http_get("{$this->baseURL}app/account?account={$acctid}&{$this->authToken}", $this->authHeaders);
        return $data;
    }

    //
    // Returns information about the room/instance, if active
    //
    function getRoomInfo($room) {
        $instance = str_replace("#room#", $room, $this->roomInstance);
        $data = RTC::http_get("{$this->baseURL}app/account?instance={$instance}&{$this->authToken}", $this->authHeaders);
        return $data;
    }

    private function do_initialize() {
        if ($this->contentPath)
            return true;

        $data = RTC::http_get("{$this->url}?mode=xml&accountonly=true&{$this->authToken}", $this->authHeaders);

        if (RTC::$DEBUG)
            echo $data;

        try {
            $xml = new SimpleXMLElement($data);
        } catch (Exception $e) {
            throw new RTCError("bad-response");
        }

        if ($xml->getName() == "meeting-info") {
            $this->baseURL = '' . $xml->baseURL['href'];
            $this->url = rtrim($this->baseURL, '/') . parse_url($this->url, PHP_URL_PATH);
            $this->contentPath = '' . $xml->accountPath['href'];
            if ($xml->room)
                $this->roomInstance = '' . $xml->room['instance'];
            return true;
        }

        if ($xml->getName() == "result") {
            if ($xml['code'] == "unauthorized") {
                if ($xml->baseURL) {
            $this->baseURL = '' . $xml->baseURL['href'];
            $this->url = rtrim($this->baseURL, '/') . parse_url($this->url, PHP_URL_PATH);
                }

                $authURL = '' . $xml->authentication['href'];
                if (substr($authURL, 0, 1) == '/') {
                    $authURL = $this->baseURL . $authURL;
                }
                $this->authenticator = new RTCAuthenticator($authURL);
                return false;
            }
        }

        throw new RTCError($data);
    }
}

class RTC {
    public static $DEBUG = false;
    public static $USE_CURL = false;
    public static $VERSION = '$Revision: #1 $ - $Date: 2010/07/26 $';

    function http_get($url, $headers = null) {
        if (RTC::$DEBUG) {
            echo "http_get: {$url}\n";
            if ($headers != null)
                print_r($headers);
        }

        if (RTC::$USE_CURL) {
            /*
             * use curl library
             */
            $req = curl_init($url);
            //if (RTC::$DEBUG) curl_setopt($req, CURLOPT_VERBOSE, true);
            curl_setopt($req, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($req, CURLOPT_FOLLOWLOCATION, true);
            curl_setopt($req, CURLOPT_SSL_VERIFYPEER, false);

            if ($headers)
                curl_setopt($req, CURLOPT_HTTPHEADER, $headers);

            $resp = curl_exec($req);
            $error = curl_error($req);
            if ($error == "")
                $status = curl_getinfo($req, CURLINFO_HTTP_CODE);
            else
                $status = $error;

            curl_close($req);

            if ($error != "" && $status != 200)
                throw new RTCError($error);
            else
                return $resp;
        } else {
            /*
             * use streams
             */
            if ($headers == null)
                $header = '';
            else {
                $header = "";

                foreach ($headers as $name => $value) {
                    if ($header != "")
                        $header .= "\r\n";
                    $header = $header . $name . ": " . $value;
                }
            }

            $opts = array (
                'http' => array (
                    'method' => 'GET',
                    'header' => $header
                )
            );

            $context = stream_context_create($opts);

            $fp = fopen($url, 'r', false, $context);
            if (!$fp)
                throw new RTCError("connection-failed");

            $meta = stream_get_meta_data($fp);
            $statusLine = explode(' ', $meta['wrapper_data'][0], 3);

            $resp = stream_get_contents($fp);
            fclose($fp);
           
           // printf("<pre>%s</pre>", print_r($meta, TRUE));
            //printf("<pre>%s</pre>", print_r($resp, TRUE));
            //printf("<pre>%s</pre>", print_r($statusLine, TRUE));
           
            if ($statusLine[1] == "200" | $statusLine[1] == "302")
                return $resp;
            else
                throw new RTCError($statusLine[1]);
        }
    }

    function http_post($url, $params, $headers = null) {
       
       
        if (is_array($params))
            $data = http_build_query($params);
        else
            $data = $params;

        if (RTC::$DEBUG) {
            echo "http_post: {$url} {$data}\n";
            if ($headers != null)
                print_r($headers);


            if ($root == 'configuration')
                $result .= '</field>';
            else
                $result .= '</property>';
        }
        if ($root != null)
            $result .= "</{$root}>";

        return $result;
    }
}

if (!isset($_SERVER['QUERY_STRING'])) {

  function usage($progname) {
    echo "usage: {$progname} [--debug] [--host=url] account user password command parameters...\n";
    echo "\n";
    echo "where <command> is:\n";
    echo "    --list\n";
    echo "    --create room [template]\n";
    echo "    --delete room\n";
    echo "    --delete-template template\n";
    echo "    --ext-auth secret room username userid role\n";
    echo "    --invalidate room\n";
    echo "\n";
    echo "    --get-node-configuration room collection node\n";
    echo "    --fetch-items room collection node\n";
    echo "    --register-hook endpoint [token]\n";
    echo "    --unregister-hook\n";
    echo "    --hook-info\n";
    echo "    --subscribe-collection room collection\n";
    echo "    --unsubscribe-collection room collection\n";
    echo "    --create-node room collection [node]\n";
    echo "    --remove-node room collection [node]\n";
    echo "    --set-user-role room userID role [collection [node]]\n";
    echo "    --publish-item room collection node itemID body\n";
    echo "    --retract-item room collection node itemID\n";
    exit(1);
  }

  function getRole($role) {
    $role = strtolower($role);
    if ($role == "none")
      return RTCUserRole::NONE;
    else if ($role == "lobby")
      return RTCUserRole::LOBBY;
    else if ($role == "viewer")
      return RTCUserRole::VIEWER;
    else if ($role == "publisher")
      return RTCUserRole::PUBLISHER;
    else if ($role == "owner")
      return RTCUserRole::OWNER;
    else if (is_numeric($role))
      return intval($role);
    else
      throw new RTCError("invalid-role");
  }

  //
  // running from the command line
  //
  $args = $_SERVER['argv'];
  $progname = array_shift($args);

  $host = "http://connectnow.acrobat.com";
  $accountName = "<YOUR DEVELOPER ACCOUNT NAME>";
  $username = "sdkuser";
  $password = "sdkpassword";

  while (count($args) > 0) {
    $arg = $args[0];

    if ($arg == "--debug")
      RTC::$DEBUG = true;

    else if (strncmp($arg, "--host=", 7) == 0)
      $host = substr($arg, 7);

    else if (strncmp($arg, "-", 1) == 0) {
      echo "invalid option: $arg\n";
      $args = array();
    }

    else
      break;

    array_shift($args);
  }

  if (count($args) < 3) {
    usage($progname);
  }

  $accountName = array_shift($args);
  $username = array_shift($args);
  $password = array_shift($args);

  $host = rtrim($host, '/');
  $accountURL = "{$host}/${accountName}";

  try {
    $am = new RTCAccount($accountURL);
    $am->login($username, $password);

    if (count($args) == 0 || $args[0] == "--list") {
      echo "==== template list for {$accountName} ====\n";
      foreach ($am->listTemplates() as $t) {
        echo "{$t->name}:{$t->created->format(DATE_RFC822)}\n";
      }

      echo "==== room list for {$accountName} ====\n";
      foreach ($am->listRooms() as $r) {
        echo "{$r->name}:{$r->desc}:{$r->created->format(DATE_RFC822)}\n";
      }
    }
 
    else if ($args[0] == "--create") {
      $am->createRoom($args[1], count($args) > 2 ? $args[2] : null);
    }

    else if ($args[0] == "--delete") {
      $am->deleteRoom($args[1]);
    }

    else if ($args[0] == "--delete-template") {
      $am->deleteTemplate($args[1]);
    }

    else if ($args[0] == "--ext-auth") {
      if (count($args) >= 6)
        $role = getRole($args[5]);
      else
        $role = RTCUserRole::LOBBY;
      $session = $am->getSession($args[2]);
      $token = $session->getAuthenticationToken($args[1], $args[3], $args[4], $role);
      echo $token . "\n";
    }

    else if ($args[0] == "--info") {
      if (count($args) == 1) {
        echo $am->getAccountInfo();
      } else {
        echo $am->getRoomInfo($args[1]);
      }
    }

    else if ($args[0] == "--get-node-configuration") {
      echo $am->getNodeConfiguration($args[1], $args[2], $args[3]);
    }

    else if ($args[0] == "--fetch-items") {
      echo $am->fetchItems($args[1], $args[2], $args[3]);
    }

    else if ($args[0] == "--register-hook") {
      if (count($args) > 2)
        echo $am->registerHook($args[1], $args[2]);
      else
        echo $am->registerHook($args[1]);
    }
   
    else if ($args[0] == "--unregister-hook") {
      echo $am->unregisterHook();
    }
   
    else if ($args[0] == "--hook-info") {
      echo $am->getHookInfo();
    }
   
    else if ($args[0] == "--subscribe-collection") {
      if (count($args) > 3)
        echo $am->subscribeCollection($args[1], $args[2], $args[3]);
      else
        echo $am->subscribeCollection($args[1], $args[2]);
    }
   
    else if ($args[0] == "--unsubscribe-collection") {
      if (count($args) > 3)
        echo $am->unsubscribeCollection($args[1], $args[2], $args[3]);
      else
        echo $am->unsubscribeCollection($args[1], $args[2]);
    }
   
    else if ($args[0] == "--publish-item") {
      echo $am->publishItem($args[1], $args[2], $args[3],
        array( 'itemID' => $args[4], 'body' => $args[5] ));
    }

    else if ($args[0] == "--retract-item") {
      echo $am->retractItem($args[1], $args[2], $args[3], $args[4]);
    }

    else if ($args[0] == "--create-node") {
      echo $am->createNode($args[1], $args[2], $args[3]);
    }

    else if ($args[0] == "--remove-node") {
      if (count($args) > 3)
        echo $am->removeNode($args[1], $args[2], $args[3]);
      else
        echo $am->removeNode($args[1], $args[2]);
    }
   
    else if ($args[0] == "--set-user-role") {
      $role = getRole($args[3]);

      if (count($args) > 5)
        echo $am->setUserRole($args[1], $args[2], $role, $args[4], $args[5]);
      else if (count($args) > 4)
        echo $am->setUserRole($args[1], $args[2], $role, $args[4]);
      else
        echo $am->setUserRole($args[1], $args[2], $role);
    }

    else {
      usage($progname);
    }

  } catch(RTCError $e) {
    echo "Error: {$e}";
  }
}

?>

Thanks,

Vishnu

Avatar

Employee

Ah, your code had 3 extra "print" line (commented out). That is why it didn't match with the released version.

Anyway, are you running the script from the command line ? The error seems to be in the "command" part of the script.

If you are really running it from the command line, please send me the exact command you run and I'll see if I can reproduce the problem (you can temporary change your password, or I'll try on one of my accounts). You can also try to change the "echo" at the end with a print_r($e) and see if we get a better error description.

If you are not running from the command line, I suggest you remove the last block of code (from "if (!isset($_SERVER['QUERY_STRING'])) {" to the end before "?>".

The check should comment it out, but my guess is that there are cases where that doesn't work.

Avatar

Level 1

Hi Raff,

I have send Private message to you. Please check ...If you did not get message then I'll send again.

Thanks

Vishnu,

Avatar

Employee

I have tried your test and it works fine for me. I am running php 5.2.9-2.

You may have something different than me and your working installation in php.ini, but I also compared the output of phpinfo() and it seems identical.

Did you try to remove the "command line" section of the code as I asked you ?

Apart from that I don't know what else to suggest and unless you come up with a case that we can reproduce in house or more details regarding the error I can't really spend much more time trying to match your configuration.

Again, given your test the code should be executing line 707. That block of code should only be executed if you run php and the script from the command line so you can safely remove it.

Avatar

Level 1

Hi Raff,

I have remove command line section but still i am geting same error. Please tell me what is the basic requirment on PHP server for Adobe collaboration service.

So I can check my server detail.

Thanks

Vishnu