The problem with php is that the libraries are platform specific and the one I posted a while back are for Linux. In addition the php libraries have different names under Windows or Unix platforms. All your steps are correct the only thing you have to do at this point is to get PHP 4.x libraries that have the Java API support enabled (or build it yourself) and put them into the path so that tomcat can find them. Since the names of the php libraries are different you have to edit the servlet.properties file in the phpportlet.jar and change library=php4 to library=php4ts (ore something like that).

I hope it helps
Roger

Athanasis Nikolaos wrote:

Hello,

I work on a winXP computer, and i have installed the following:
1. jdk 1.4.2
2. A webServer called ms4w (MapServer with windows), which allows the 
development of digital maps (GIS). The MS4W package contains a full 
installation of Apache 2, PHP and other modules...
3. The binary package of jetspeed 2 (jetspeed-2.0-M3-Tomcat-5.0.30.zip).

The ms4w server handles php web pages. My goal is to execute these pages 
through the jetspeed interface. Thus, i tried to run the php-portlet. Without 
doing anything, i saw that when i tried to point to the 
http://localhost:8080/jetspeed/portal/non-java/php-portlet.psml page i got the 
following:
Failed to retrieve Portlet Definition for PHP::php-demoorg.apache.jetspeed.container.window.FailedToRetrievePortletWindow: No PortletEntity exists for for id phpdemo-1 removing window from cache.Failed to retrieve Portlet Definition for PHP::php-demo
Then, i downloaded php4ts.dll and phpsrvlt.dll from 
http://www.itgroundwork.com/resources/php-setup.html
and put them into C:/windows/systems32 folder (where the PATH variable links).
Then, I added the following  code snippet into 
webapp/WEB-INF/pages/default-page.psml :

<fragment id="dp-20" type="portlet" name="php::php-demo"> <property layout="TwoColumns" name="row" value="4" /> <property layout="TwoColumns" name="column" value="1" /> </fragment>
But, when i restart tomcat and point to:
http://localhost:8080/jetspeed/portal/non-java/php-portlet.psml
i get the following:
java.lang.UnsatisfiedLinkError: no php4 in java.library.path
       at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1517)
       at java.lang.Runtime.loadLibrary0(Runtime.java:788)
       at java.lang.System.loadLibrary(System.java:834)
       at com.itgroundwork.portlet.php.reflect.loadLibrary(reflect.java:38)
       at com.itgroundwork.portlet.php.reflect.<clinit>(reflect.java:33)
       at com.itgroundwork.portlet.php.servlet.init(servlet.java:204)
       at org.apache.portals.bridges.php.PHPApplicationPortlet.doView(PHPApplic
ationPortlet.java:256)

a)How can I deploy the php portlet from jetspeed application?
b) What does the exception: "no php4 in java.library.path" mean?


Could please anyone help me?

Thank you for your attention.


Athanasis Nikolaos
Postgraduate Student
University of the Aegean
Department of Geography
University Hill
81100 Mytilene, GREECE

TEL  +30-22510-36437




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to