IBM webMethods Hybrid Integration

IBM webMethods Hybrid Integration

Join this online group to communicate across IBM product users and experts by sharing advice and best practices with peers and staying up to date regarding product enhancements.

 View Only
  • 1.  DOMXML STUFF AGAIN! HELP!!!

    Posted Wed January 12, 2005 06:00 PM

    Hi
    Can anyone tell me how to go about Taminoapi.php stuff?Where to download the domxml from as well.
    I have Apache 2,XP,Tamino and PHP4. But it would not work :(I tried everything in this forum.Maybe Im getting something wrong.
    Tell me pls the neccessary DLL to copy and where to paste them. I followed this method but I still don know whats wrong.
    I installed Apache->PHP4->Tamino and then DOMXML.
    Please help…Im really desperate!
    cheers

    kay

    PS:
    I used this for domxml

    1) download the PHP-Win32 binary installation from www.php.net
    2) download the PHP-Win32 ZIP package that contains all dll’s , extensions, APIs and stuff from www.php.net
    3) Install PHP binary to c:\PHP
    4) unzip the ZIP package to c:\PHP (you should see more subdirectories now)
    4a) add the following lines to your Apache httpd.conf file:
    LoadModule php4_module c:/php/sapi/php4apache2.dll
    AddType application/x-httpd-php .php
    The c:/php/sapi/php4apache2.dll was contained in the PHP Win32 ZIP file that you extracted in step 2
    5) open php.ini in C:\WINDOWS
    6) in php.ini locate the extension path and change the line extension_dir = “./” to
    extension_dir = “C:\PHP\extensions”
    7) in php.ini locate the line ;extension=php_domxml.dll and remove the ; sign
    8) copy iconv.dll from c:\php\dlls to c:\windows\system32
    9) download domxml.zip from http://www.firepages.com.au/public/domxml.zip
    10) copy the libxml2.dll from domxml.zip to c:\windows\system32
    11) The php_domxml.dll should already exist in your c:\php\extensions directory (was also contained in PHP Win-32 ZIP file in step 2)
    12) stop and restart your Apache / IIS

    Could it be that the domxml file I downloaded in not good?Is there any other link to download this domxml?
    cheers

    Arsenal are the best!


    #Tamino
    #API-Management
    #webMethods


  • 2.  RE: DOMXML STUFF AGAIN! HELP!!!

    Posted Thu January 13, 2005 09:59 AM

    Hi,
    According to the installation instructions for PHP’s DOMXML here, the process for installation should be:

    Windows users will enable (uncomment) php_domxml.dll inside of php.ini in order to use these functions. In PHP 4 this DLL resides in the extensions/ directory within the PHP Windows binaries download (so you should not need to download it again).
    …snip…
    Also, there is one additional DLL that must be made available to your system’s PATH in order for this extension to work. In PHP 4 this is in the dlls/ directory. It’s name:
    For PHP <= 4.2.0, it’s libxml2.dll.
    For PHP >= 4.3.0, it’s iconv.dll.
    And as of PHP 5.0.0, iconv is compiled into your Windows PHP binaries by default so no extra DLL is needed.

    So you need to make sure that these dlls are available in your PATH environment setting.
    The best way to tell if the domxml extension is loaded correctly is to follow Heiko’s instruction from previous posts:

    Then to test that everything worked ok, create a PHP script which has the following contents:

    <?php phpInfo(); ?>

    And then call that file. You should get an overview of you current installation and if all worked ok, then you should find a section with the title “domxml” and a line where it says “DOM/XML” and “enabled”.

    Please check that and if you don’t find that, then your PHP is not configured correctly.

    I have attached a sample test php page. Copy it to your Apache htdocs folder and point your browser to http://localhost/phptest.php. Then look for the domxml section in the output. If you still have problems, please tell us what version of PHP you are trying to use and what path you installed it to.
    HTH

    [This message was edited by Bill Leeney on 13 January 2005 at 9:43.]
    phptest.php (383 Bytes)


    #Tamino
    #API-Management
    #webMethods


  • 3.  RE: DOMXML STUFF AGAIN! HELP!!!

    Posted Thu January 13, 2005 02:53 PM

    Thanks Bill,
    So basically,theres no DOMXML file I need to download? Bcos previous msgs were sayin that I should downlaod some zip files somewhere.
    Ill follow ur guide and hope it works.
    Thanks Bull
    Kay

    Arsenal are the best!


    #Tamino
    #webMethods
    #API-Management


  • 4.  RE: DOMXML STUFF AGAIN! HELP!!!

    Posted Thu January 13, 2005 03:16 PM

    Correct. My understanding is that because you already downloaded the PHP-Win32 ZIP package [that contains all dll’s , *** extensions ***, APIs and stuff] you already have the domxml extension. You just need to make it available by copying it to somewhere that’s in PATH.


    #Tamino
    #webMethods
    #API-Management


  • 5.  RE: DOMXML STUFF AGAIN! HELP!!!

    Posted Fri January 14, 2005 03:00 PM

    Hi Bill,
    You did it!After trying for 12days, copying icov.dll and libxml.dll to system32 instead of only icov.dll(depending on PHP though!!! for similar problems in the future)I also download domxml.zip from somewhere.I think that was the problem.Now Im fine.
    Cheers
    Kay

    Arsenal are the best!


    #API-Management
    #webMethods
    #Tamino


  • 6.  RE: DOMXML STUFF AGAIN! HELP!!!

    Posted Sat January 15, 2005 01:20 AM

    One last question please…
    The DOMXML is fine now but when I try to compile example01.php it gives HTTP ERROR 404!
    I unzipped the taminoapi.php into the htdocs of apache and then called the file example01.php.
    Heres the code
    [B]
    <?php

    // This script demonstrates the general functionality of the TaminoAPI class

    header("Content-Type: text/html; charset=UTF-8");
    echo "\n\n";

    require_once("TaminoAPI.php");
    require_once("TaminoHelperFunctions.php");


    // create TaminoAPI object
    $tamino = &new TaminoAPI(
    "host", // name of the machine that the web server runs on
    "80", // port the web server listens to for Tamino connections
    "mydb", // name of the Tamino database
    "", // username used for connections to Tamino
    "" // password used for connections to Tamino
    );

    $tamino->setHttpRequestMethod("POST");

    // define a new collection
    $sSchema = file_get_contents("schema.myAddresses.utf-8.tsd");
    if (!($tamino->define($sSchema)))
    thfPrintError($tamino);
    else
    echo "Schema defined successfully\n";
    echo "


    \n";

    // store data in Tamino with two different encoding types
    $tamino->setCollection("myAddresses");
    $sData = file_get_contents("data.myAddresses.windows-1252.xml");
    $tamino->setEncoding("windows-1252");
    if (!($tamino->process($sData)))
    thfPrintError($tamino);
    else
    echo "Data with encoding \"windows-1252\" loaded successfully\n";
    echo "
    \n";
    $sData = file_get_contents("data.myAddresses.utf-8.xml");
    $tamino->setEncoding("UTF-8");
    if (!($tamino->process($sData)))
    thfPrintError($tamino);
    else
    echo "Data with encoding \"UTF-8\" loaded successfully\n";
    echo "
    \n";

    // delete a document
    if (!($tamino->delete("/person[@ino:id=1]")))
    thfPrintError($tamino);
    else
    echo "Data deleted successfully\n";
    echo "
    \n";

    // retrieve data via XQL (X-Query)
    if (!($tamino->query("/person/name[firstName=\"Franz\"]")))
    thfPrintError($tamino);
    else
    {
    $domnodeResultElement = $tamino->getResultDomNode();
    if ($domnodeResultElement) {
    $domnodeCurrent = $domnodeResultElement->first_child();
    while ($domnodeCurrent != NULL) {
    if ($domnodeCurrent->node_type() == XML_ELEMENT_NODE) {
    if ($domnodeCurrent->node_name() == "name") {
    $nodelistAttributes = $domnodeCurrent->attributes();
    $numAttributes = count($nodelistAttributes);
    for ($i = 0; $i < $numAttributes; $i++) {
    if ($nodelistAttributes[$i]->name() == "id") {
    $inoId = intVal($nodelistAttributes[$i]->value());
    }
    }

    $domnodeCurrent2 = $domnodeCurrent->first_child();
    while ($domnodeCurrent2 != NULL) {
    if ($domnodeCurrent2->node_type() == XML_ELEMENT_NODE) {
    if ($domnodeCurrent2->node_name() == "lastName")
    $lastName = $domnodeCurrent2->get_content();
    }
    $domnodeCurrent2 = $domnodeCurrent2->next_sibling();
    }
    }
    }
    $domnodeCurrent = $domnodeCurrent->next_sibling();
    }
    }
    echo "X-Query executed successfully - found value: lastName=\"".$lastName."\" and ino:id=\"".$inoId."\"\n";
    }
    echo "
    \n";

    // retrieve data via plain URL addressing
    if (!($tamino->plainUrlAddressing("person/@".$inoId)))
    thfPrintError($tamino);
    else {
    echo "Plain URL addressing executed successfully for ino:id=\"".$inoId."\":\n";
    $tamino->printResultBody();
    }
    echo "
    \n";

    // undefine collection
    if (!($tamino->undefine("myAddresses")))
    thfPrintError($tamino);
    else
    echo "Schema undefined successfully\n";
    echo "
    \n";

    echo "\n\n";

    ?> [B]

    I created the database in the SMH and started it. The port is 80 I guess! Should there be a path to the database instead of just ‘mydb’ ? Wheres my database on my harddrive? In other native database(xindice),I was able to see my db but I cant find any ‘mydb’ folder on my harddrive. How can I eradicate the ERROR 404?
    Thanks a lot
    Kay

    Arsenal are the best!


    #webMethods
    #Tamino
    #API-Management