SitePoint Sponsor

User Tag List

Results 1 to 3 of 3
  1. #1
    SitePoint Member
    Join Date
    Oct 2007
    Posts
    4
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Fedex New Web Services WSDL and SOAP

    Hello Everyone
    I am having issues with fexex's new soap and WSDL web services. I am trying to get tracking results with their new service was wondering if I can get some help on this. I am attaching the code, and the wsdl What am I doing wrong??
    Here are two of the links that fedex gave me two are in the wsdl file and one I dont know what to do with and fedex was no help they did provide the following code which I am posting below it consists of three files the wsdl, a functions file for error and tracking and the track.php code which is suppose to be loaded via http

    I get the following error on the page



    Fault
    Code:HTTP
    String:Could not connect to host


    Track.php file


    Code:
    require_once('library/fedex-common.php5');
    $newline = "<br />"; 
    $path_to_wsdl = "wsdl/TrackService_v2.wsdl";
    ini_set("soap.wsdl_cache_enabled", "0");
    $client = new SoapClient($path_to_wsdl, array('trace' => 'all')); // Refer to http://us3.php.net/manual/en/ref.soap.php for more information
    $request['WebAuthenticationDetail'] = array('UserCredential' =>array('Key' => 'Nu7mKVoi6CruG3BH', 'Password' => '2WTI0OChPx1U7yprVqjosFpM7')); // Replace 'XXX' and 'YYY' with FedEx provided credentials 
    $request['ClientDetail'] = array('AccountNumber' => '510087542', 'MeterNumber' => '1220784');// Replace 'XXX' with your account and meter number
    $request['TransactionDetail'] = array('CustomerTransactionId' => '*** Track Request v2 using PHP ***');
    $request['Version'] = array('ServiceId' => 'trck', 'Major' => '2', 'Intermediate' => '0', 'Minor' => '0');
    $request['PackageIdentifier'] = array('Value' => '963051995450', 'Type' => 'TRACKING_NUMBER_OR_DOORTAG');
    $request['TransactionDetail'] = array('CustomerTransactionId' => '*** Track Request v2 using PHP ***');
    $request['IncludeDetailedScans'] = 1;
    try{
    $response = $client ->track($request);
    if ($response -> HighestSeverity != 'FAILURE' && $response -> HighestSeverity != 'ERROR')
    {
    print $response;
    foreach ($response -> TrackDetails -> Events as $event)
    {
    if(is_array($response -> TrackDetails -> Events))
    {             
    echo $event -> Timestamp . ':  ';
    echo $event -> EventDescription . ' - ';
    echo $event -> Address -> City . ' ';
    echo $event -> Address -> StateOrProvinceCode . $newline;
    }
     else
    {
    echo $location . $newline;
    }
    }
    printRequestResponse($client);
    }
    else
    {
    echo 'Error in processing transaction.'. $newline. $newline; 
    foreach ($response -> Notifications as $notification)
    {
    if(is_array($response -> Notifications))
    {              
    echo $notification -> Severity;
    echo ': ';           
    echo $notification -> Message . $newline;
    }
    else
    {
    echo $notification . $newline;
    }
    }
    } 
    writeToLog($client);    // Write to log file   
    } catch (SoapFault $exception) {
        printFault($exception, $client);
    }

    library/fedex-common.php5


    Code:
    define('TRANSACTIONS_LOG_FILE', 'fedextransactions.log');  // Transactions log file
    /**
     *  Print SOAP request and response
     */
    function printRequestResponse($client) {
    echo "test $trackingnumber";
    echo '<h2>Transaction processed successfully.</h2>'. "\n"; 
    echo '<h2>Request</h2>' . "\n";
    echo '<pre>' . htmlspecialchars($client->__getLastRequest()). '</pre>';  
    echo "\n";
    echo '<h2>Response</h2>'. "\n";
    echo '<pre>' . htmlspecialchars($client->__getLastResponse()). '</pre>';
    echo "\n";
    }
    /**
     *  Print SOAP Fault
     */  
    function printFault($exception, $client) {
    echo '<h2>Fault</h2>' . "\n";                        
    echo "<b>Code:</b>{$exception->faultcode}<br>\n";
    echo "<b>String:</b>{$exception->faultstring}<br>\n";
    writeToLog($client);
    }
    /**
     * SOAP request/response logging to a file
     */                                  
    function writeToLog($client){  
    if (!$logfile = fopen(TRANSACTIONS_LOG_FILE, "a"))
    {
    error_func("Cannot open " . TRANSACTIONS_LOG_FILE . " file.\n", 0);
    exit(1);
    }
    fwrite($logfile, sprintf("\r%s:- %s",date("D M j G:i:s T Y"), $client->__getLastRequest(). "\n\n" . $client->__getLastResponse()));
    }


    Here is the location of the test Track.php that is suppose to load the wsdl and connect using soap to get information

    eyeglasses123.com/track/Track.php

    Here is the location of the wsdl file that is used

    eyeglasses123.com/track/wsdl/TrackService_v2.wsdl


    I cant for the life of me figure out what I am doing wrong any help would be appericated

    I am attempting to attach the whole script also
    Attached Files Attached Files

  2. #2
    SitePoint Member
    Join Date
    Oct 2007
    Posts
    4
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Anyone?

  3. #3
    reads the ********* Crier silver trophybronze trophy longneck's Avatar
    Join Date
    Feb 2004
    Location
    Tampa, FL (US)
    Posts
    9,854
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    bumping is prohibited by the sitepoint community guidelines. your problem is complex and it will take time before someone with proper experience is able to look at it.


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •