You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Sascha Schumann 9d9d39a0de Please welcome the new build system. 24 years ago
..
CREDITS 2nd step towards auto-credits 26 years ago
EXPERIMENTAL Mark sapi/servlet as what it is: experimental. 24 years ago
Makefile.frag Please welcome the new build system. 24 years ago
README Fugbix typo. 24 years ago
config.m4 Please welcome the new build system. 24 years ago
cookies.php use simpler foreach instead of while 26 years ago
date.php Improved handing of instances of private classes. Added servlet examples. 26 years ago
formatter.java Update headers. 24 years ago
jinfo.php Improved handing of instances of private classes. Added servlet examples. 26 years ago
jver.php Improved handing of instances of private classes. Added servlet examples. 26 years ago
reqheaders.php Cleanup 26 years ago
reqinfo.php Cleanup 26 years ago
reqparams.php Fix for JDK1.2.2/Tomcat3.2 26 years ago
servlet.c Remove obsolete CG(extended_info) = 0 calls, we already do this in zend_set_default_compile_time_values(). 24 years ago
servlet.dsp Removing winutil.c from this project. the functions needed are found in php4ts.dll 24 years ago
servlet.java URLEncoder.encode(string) is deprecated in the Java 2 SDK 1.4. 24 years ago
sessions.php match changes to Tomcat example 26 years ago
web.xml Fix for Tomcat 4. 25 years ago

README

Java Servlet SAPI Module for PHP 4


Introduction

The Java Servlet SAPI Module allows for the execution of PHP 4 as
a Servlet from within a Java Servlet Engine, such as Apache's
Jakarta Tomcat [1]. It builds upon the mechanism defined by PHP's
Java Extension, which can be found in /php4/ext/java.

The primary advantage of this from a PHP perspective is that web
servers which support servlets typically take great care in
pooling and reusing Java Virtual Machines (JVMs).

PHP may also be bridged with the Apache Cocoon XML Publishing
Framework. [2]

A suitably configured system will invoke the PHP binaries through
JNI and the output of the page will be processed through the
configured XML parser and placed into the pipeline for processing
by such filters as XSLT. This enables PHP developers to access the
powers of Cocoon to separate their content, style, and logic
without requiring them to write a single line of Java code.

While this code is intended to be able to run on any servlet
engine, it has only been tested on Apache's Jakarta Tomcat to
date. Bug reports, success stories and/or patches required to get
this code to run on other engines would be appreciated; please
send them to the PHP Development Mailinglist [3].

Note: PHP has a habit of changing the working directory. The Java
Servlet SAPI Module will eventually change it back, but while PHP
is running the servlet engine may not be able to load any classes
from the CLASSPATH which are specified using a relative directory
syntax, or find the work directory used for administration and JSP
compilation tasks.


Installing PHP as a Servlet into Apache's Jakarta Tomcat

1.) Build the PHP 4 Java Servlet SAPI Module

UNIX

o ./configure --with-servlet --with-java

o Add directory containing libphp4.so to LD_LIBRARY_PATH

Windows

o Build ext/java/java.dsp, copy php_java.dll to your
extension_dir directory and enable the extension in the
php.ini

o Build sapi/servlet/servlet.dsp

o Add directory containing php4ts.dll and phpsrvlt.dll to
PATH

2.) Tomcat 3

* Add phpsrvlt.jar to CLASSPATH

Tomcat 4

* Copy phpsrvlt.jar into your $CATALINA_HOME/lib directory

3.) Tomcat 3

* Merge or overwrite build/tomcat/examples/WEB-INF/web.xml
with the configuration directives from the web.xml file
that comes with the Java Servlet SAPI Module.

Tomcat 4

* Merge the configuration directives from web.xml file that
comes with the Java Servlet SAPI Module into your
Tomcat/conf/web.xml configuration file.

Make sure that the element ordering of the web.xml is legal
with Tomcat and put all the <servlet> declarations first,
followed by all the <servlet-mapping> declarations.

* Add

<welcome-file>index.php</welcome-file>

to the

<welcome-file-list>
...
</welcome-file-list>

block of your Tomcat/conf/web.xml configuration file.

4.) Test your installation by creating a test.php file in your
Tomcat/webapps/ROOT directory with

<?php phpinfo(); ?>

in it.

Access this file in your browser at

http://localhost:8080/test.php

and you should see the familiar output of phpinfo().


Installing PHP as a Generator into Apache's Cocoon2 Framework

1.) Build the Java Servlet SAPI Module as described above.

2.) Get the Cocoon2 source tree, either by CVS or from a release
archive; a binary distribution does not suffice. Copy the
phpsrvlet.jar file into your xml-cocoon2/lib/optional directory
and build Cocoon.

--
[1] http://jakarta.apache.org/tomcat/
[2] http://xml.apache.org/cocoon2/
[3] http://www.php.net/support.php