10 de febrero de 2011

Tutorial: Cómo ejecutar PHP en Java EE usando GlassFish y Quercus

Image of Duke and PHP togetherHoy ejecuté una página PHP en un servidor de aplicaciones Java EE llamado GlassFish. Esto es posible usando un intérprete llamado Quercus, que es una implementación 100% Java de PHP 5 liberada bajo la licencia Open Source GPL.
  1. Instalé Java.
    Tengo Java 6 (1.6.0_18-b07).
  2. Instalé GlassFish.
    Para ello, existe documentación de ayuda. Instalé GlassFish 2.1 (2.1-b60) para Windows.
  3. Descargé Quercus y lo descomprimí.
    Descargué el archivo .war de Quercus 4.0.11 de la página de Quercus. También hurgé en el contenido. ☺
  4. Creé una aplicación web.
    Simplemente, creé la siguiente estructura de directorio:
    • HolaMundoPHP.war
      • WEB-INF
        • lib
  5. Copié la biblioteca de Quercus.
    Copié el archivo resin.jar del directorio WEB-INF/lib del WAR de Quercus a mi aplicación Web:
    • HolaMundoPHP.war
      • WEB-INF
        • lib
          • resin.jar
  6. Creé el archivo web.xml
    Creé el archivo web.xml de mi aplicación Web, indicando que el Servlet de Quercus atendiera las peticiones a las páginas PHP:

    <?xml version="1.0" encoding="UTF-8"?>
     <web-app xmlns="http://java.sun.com/xml/ns/javaee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
     version="2.5">
     <description>Tutorial para ejecutar PHP en Java EE usando GlassFish y Quercus</description>
      <servlet>
       <servlet-name>QuercusServlet</servlet-name>
       <servlet-class>com.caucho.quercus.servlet.QuercusServlet</servlet-class>
      </servlet>
     <servlet-mapping>
      <servlet-name>QuercusServlet</servlet-name>
      <url-pattern>*.php</url-pattern>
     </servlet-mapping>
    </web-app>
    Lo coloqué en el directorio WEB-INF de mi aplicación Web:
    • HolaMundoPHP.war
      • WEB-INF
        • web.xml
        • lib
          • resin.jar
  7. Creé un archivo PHP.
    El ejemplo clásico, ahora en PHP, llamado hola.php:
    <?php
    echo "Hola mundo PHP";
    ?>
    Lo coloqué en mi aplicación Web, en donde normalmente se colocan los archivos JSP:
    • HolaMundoPHP.war
      • hola.php
      • WEB-INF
        • web.xml
        • lib
          • resin.jar
  8. Inicié GlassFish.
    Mediante el comando asadmin start-domain.
  9. Instalé mi aplicación usando autodeploy
    Copié el directorio de mi aplicación (HolaMundoPHP.war) al área de autodeploy del dominio de GlassFish. En mi caso, lo copie en glassfish\domains\domain1\autodeploy:
    • glassfish
      • domains
        • domain1
          • autodeploy
            • HolaMundoPHP.war
  10. Accedí mi aplicación Web.
    Accedí http://localhost:8080/HolaMundoPHP/hola.php y voliá.

Imagen del navegador con el texto Hola mundo PHP

Libros que espero te sean útiles (lista automática):

No hay comentarios.:

Publicar un comentario