PHP JasperReport Utils PHP-JRU. por favor vea https://robertbruno.wordpress.com/category/php-jru/

PHP-JRU es una librería que desarrolle con la idea de poder generar reportes una manera fácil y de  buena presentación  en PHP5. No pretendo reinventar la rueda solo usar una que ya existe y moldearla para obtener buenos resultados..

En php no existe una herramienta para generar reportes que permita hacerlo de manera fácil y rápida, no solo esto si no que para realizar un reporte bien presentable es muy tedioso, es decir esos reportes en donde hay que tener gráficos y lista enormes de registros ordenados por X o por Y campo, son muy difíciles de realizar o por lo menos llevan mucho tiempo cuadrando elementos y generando lineas y lineas de código.

PHP-JRU pretende usar la estructura de reportes que se usa con JasperReport en Java, pero desde php. Actualmente lo que realmente hace es comunicarse a través del modulo javabrigde desde php con las librerías de jaspereport y compilar o correr un reporte.. el proceso seria de la siguiente manera: se diseña el reporte usando iReport y se genera el .jrxml o el.jasper y luego haciendo uso delas librerías PHP-JRU se llaman a unas cuantas funciones y se genera el reporte. un explicación un poco mas amplia y detallada esta en el manual que viene junto con la primera versión de prueba que esta disponible en la siguiente url:

http://sourceforge.net/projects/php-jru/

Anuncios

46 comentarios en “PHP JasperReport Utils PHP-JRU. por favor vea https://robertbruno.wordpress.com/category/php-jru/

  1. Hola
    Gracias por hacer publica esta libreria es justo lo que necesitaba

    Funciona con jasperreport 3.0.1

    Gracias

  2. Es tan facil como parece? Hace falta instalar el javabrigde y dejarlo a punto? Porque segun he visto, esta parte es un poco engorrosa… 😦

  3. caido del cielo tu ayuda , o mejor dicho caido del google, jejeje peor buen gracia por aporte deja lo checo y cualquier duda te estare molestando un saludo

  4. Hola, ya tengo todo configurado en mi servidor pero me marca el siguiente error, PHP warning: file_exists() [function.file-exists]: open_basedir restriction in effect. File(/dev/shm) is not within the allowed path(s): (/var/www/vhosts/zurich.dn-insurance.com/httpdocs:/tmp) in Java.inc

    Me puedes decir que onda

    • La verdad no veo el origen del problema, aunque lo que te muestra es un warnnig, que no impide la ejecución del script completo, y además esta en el archivo java.inc que has de estar incluyendo habria que revisarlo al detalle….

  5. sabes hace poco que encontre las librerias que liberaste y ya tengo todo montado pero me manda un error cuando quiero acceder a la conexion de la base de datos ya que me sale nula pareciera que no estuviera leyendo con el java_require()

  6. juniormx24 tu error se debe a que estas llamando el file_exists() de un archivo que esta fuera de la directiva open_basedir, lo que tienes que hacer es cambiar el archivo hacia tu open_basedir o añadir la ruta al open_basedir

  7. Hola Robert, agradezco tu aporte. Todavia no lo prueba, pues recien acabo de verlo y es justo lo que necesitaba. Estoy como encargado de proyecto de un sistema de control de impagos. Toda la aplicacion esta hecha en Php con SqlServer. Desearia por favor como realizar la instalación del utilitario PHP-JRU en servidor windows. Infinitamente gracias y espero aportar con alguna documentación paso a paso y con un ejemplo de como utilizar tu producto, cuenta con mi compromiso cuento con personal para dedicar esta tarea.

    • Un saludo, gracias por tu disposición, de ante mano te comento que PHP-JRU, es solo una herramienta para salir del paso. No pretende ser la solución definitiva a la generación de reportes en php.
      Por otro lado estoy desde hace algún tiempo trabajando (aun que muy exporadicamente por falta de tiempo) en una librería denominada PJRip (PHP JasperReport interprete and processor).
      Esta tendrá la labor de generar reportes diseñados con iReport desde PHP sin la necesidad de usar la JVM, ya que todo la interpretación se haría directamente desde PHP. este proyecto lo tengo adscrito a SourceForge.

      Con respecto a PHP-JRU en Windows, te digo de antemano que es algo problemático. Lo esencial es activar el modulo de Java/Bridge en windows, esto por lo general es sencillo si se usa algún servicio al estilo de xampp, ya que se puede hacer mediante un menú. de todos modos en la pagina del proyecto en SourceForge puedes descargar un sencillo manual que te puede dar una idea de como hacer esto.
      Si vez que es casi imposible hacerlo desde windows, pudieras entonces pensar en diseñar un webService solo para la generación de reportes y alojarlo en un servidor con algún sistema basado en GNU/Linux, ya que desde éste es segura la ejecución de PHP-JRU.

      Obviamente lo que se persigue es la posibilidad de generar reportes de buena calidad y fáciles de mantener, pero si hacerlo con PHP-JRU es muy forzado lo mejor es invertir el tiempo en una herramienta que lo haga tranquilamente desde Windows.

  8. Hola Robert!!

    Me he encontrado con esta pagina gracias a un amigo de todos google 😉 .-
    Lo que quisiera saber es si es posible utilizar tu libreria con Zend JavaBridge o ver si con tus conocimientos y lo que podamos aporter poder mejorar tu libreria para poder usar este javabridge.-
    Desde ya gracias por tu tiempo en leer estas lineas y espero tu respuesta.-

    Saludos, Juan Manuel Castro.-

    • Realmente, entre los dos puentes (PHP Java/Bridge y Zend Java/Bridge) no hay diferencias. Los dos trabajan idénticos. Las únicas diferencias son:

      1. Zend Java/Bridge ya tiene una función llamada java_require.

      2. PHP Java/Bridge tiene la función java_cast.

      Con estas dos diferencias de todo lo que necesitas es un poco de código en el arranque (o en otro lugar útil) y tu aplicación debe trabajar con los dos puentes de Java sin ningún problema.


      1. /* si no existe java_require() incluye java.inc esto para PHP Java/Bridge */
      2. if ( ! function_exists('java_require') ) {
      3. include "java/Java.inc";
      4. }
      5.
      6. /* declara esto, si no existe con Zend, pero es necesario para PHP Java/Bridge */
      7. if ( ! function_exists('java_cast')) {
      8. function java_cast($whatever) {
      9. return $whatever;
      10. }
      11. }

  9. Hola robert
    Aca molestando devuelta. Estoy probando con este codigo.-

    format(new Java(“java.util.Date”)).”\n”;

    //You can also access Java system classes
    $system = new Java(“java.lang.System”);

    print $system.”\n”; // will use toString in PHP5
    print “Java version=”.$system->getProperty(“java.version”).” \n”;
    print “Java vendor=”.$system->getProperty(“java.vendor”).” \n\n”;

    print “OS=”.$system->getProperty(“os.name”).” “.
    $system->getProperty(“os.version”).” on “.
    $system->getProperty(“os.arch”).” \n”;

    if (!function_exists(‘java_cast’)) {
    function java_cast($whatever) {
    return $whatever;
    }
    }

    require( dirname(__FILE__) . “/php-jru/php-jru.php”);
    $jasperReportsLib = dirname(__FILE__) . “/php-jru/jars/”;

    $jru = new JRU();
    $jru->loadDirLibrary($jasperReportsLib);

    $parameters = new java (“java.util.HashMap”);
    $jru->runReportToPdfFile(“report1.jasper”,”reporte.pdf”,$parameters,null);
    ?>

    Y recibo esto como resultado.-

    jueves, agosto 27, 2009 at 6:56:55 AM Hora de Guyana class java.lang.System Java version=1.6.0_14
    Java vendor=Sun Microsystems Inc.

    OS=Windows XP 5.1 on x86

    No se ha cargado el Módulo de Java

    Este es es log de Apache:

    [27-Aug-2009 18:56:55] PHP Fatal error: Call to undefined method JavaException::printStackTrace() in D:\Zend\Apache2\htdocs\bridge\php-jru\php-jru.php on line 149

    Y esta la linea en cuestion es de la Funcion runReportToPdfFile :
    $ex->printStackTrace(new Java(‘java.io.PrintStream’, $trace));

    Te comento que estoy usando:
    Zend Server Comunity Edition
    MySQL 5.1.35-community
    iReport 3.5.3

    Si puediras darme una idea de lo que estoy haciendo mal te lo agradeceria.-

    Saludo, Juan Manuel.-

    • Te daré indicación de lo que vas hacer, si te soluciona el problema me lo haces saber para realizar los cambios en el código de PHP-JRU.

      ubica el archivo php-jru.php, ve hasta la linea 106 donde debe leerse lo siguiente:

      if(extension_loaded('java')){

      cambia esa linea por esta

      if(function_exists('java_require')){

      si esto lo hace funcionar me lo haces saber….

    • lograste solucionar el problema :

      PHP Fatal error: Call to undefined method JavaException::printStackTrace().

  10. Robert:
    El error se produce cuando se ejecuta:
    $JasperRunManager->runReportToPdfFile($inputFileName,$outputFileName,
    $parameters, $conn);
    Saludos, Juan Manuel.-

  11. Robert:
    Realice el cambio y el mensaje dejo de aparecer pero sigo sin poder ver el pdf.-

    el archivo jrxml tiene ente contenido:

    En el Log de Apache me aparece este mensage:

    PHP Fatal error: Call to undefined method JavaException::printStackTrace() in D:\Zend\Apache2\htdocs\bridge\php-jru\php-jru.php on line 149

    La linea es la siguiente:
    $ex->printStackTrace(new Java(‘java.io.PrintStream’, $trace));
    de la funcion runReportToPdfFile.-

    Espero no estar molestando demasiado, y gracias por tu ayuda.-

    Saludos, Juan Manuel.-

  12. Hola Robert, en lo de la aplicacion pdf no puedo visualizar el reporte, pues me manda la siguiente excepcion:

    No se ha cargado el Módulo de Java
    Fatal error: Class ‘Java’ not found in C:\wamp\www\congLid\reporte\JdbcConnection.php on line 66

    Es obvio que se trata de la jvm, y ya modifique el php.ini con la direccion del javaw, asi como en las variables de entorno.

    Espero me puedas dar una idea de como solucionar el problema. Desde ya, muchas gracias

    • oye por favor!!!!!Revisa las preguntas hechas anteriormente….

      Estas usando windows, así que debes revisar bien el proceso de instalación del modulo de java en php para que esto te pueda funcionar…!!!!!

  13. Como estas? Soy nuevo algo nuevo en el uso de las distribuciones de GNU/Linux.
    Ya tengo instalado PHP y el servidor Apache.
    Quisiera saber como se instalan y se configuran estos archivos, para poder hacer el corrido de este programa en las paginas php y bajo el servidor de apache en ubuntu?

  14. gracias, es un manual muy completo. comenzare de inmediato la instalacion

  15. Hola, como estas. ya instale todo y ya corre el irreport con mi base de datos, pero al momento de correr el pdf en php no lo puedo detectar y ya hice todos los cambios que mencionaste anteriormente.
    Lo unico que sale es:

    No se ha cargado el Módulo de Java
    Fatal error: Class ‘Java’ not found in /var/www/php-jru/JdbcConnection.php on line 66

  16. q fue lo q paso q nadie volvio a responder despues de diciembre del 2009??

  17. tengo inconvenientes para exportar mis reportes a pdf en una pc con Debian, PHP5, apache2, ya instale php-java-bridge(`puente php-java), ya tengo las librerias de jasper… perooooo
    al momento q lo ejecuto desde mi pag web no me devuelve nada, la pagina solo carga y no muestra nada

    alguien sugiere algo??

    gracias

  18. por favor codigo necesito hacer (BI) en una aplicacion web con php postgresql y SSOO Centos 5 por fa algien que me ayude con BI en php y pdfs

    • una respuesta corta o masa bien una recomendación, investiga sobre Pentaho + php.

  19. bueno… se me olvido decir que si tuve éxito utilizar esta libreria para generar reportes en pdf, lo instale en un servidor LAMP Debian Lenny

    Gracias

  20. Cómo llamo desde PHP un reporte que tiene dos subreportes y a cada uno se le pasan parámetros del reporte principal o maestro?

    Si alguien sabe cómo hacer esto agreadecería mucho su ayuda.

    • Los parámetros de los subreportes se los indicas desde el diseño, tomando datos del reporte principal.

  21. Hola!

    Estoy intentando usar el Proyecto PHP_JRU para correr un Reporte con subreportes. Que me parece super excelente ya que perdi mi tiempo con otros proyecto y al final me di cuenta que no soportaban Subreport.

    Ya instale el PHP Java/Bridge y esta todo ok.

    Pero no estoy consiguiendo cargar los jars del php_jru.
    Cuanto intento correr mi programa me aperecen estos errores

    Warning: java_require() not supported anymore. Please use tomcat or jee hot deployment instead in C:\xampp\htdocs\JavaBridge\java\Java.inc on line 1657

    Warning: argument ‘JdbcConnection’ is not a Java object,using NULL instead in C:\xampp\htdocs\JavaBridge\java\Java.inc on line 483
    java stack trace: java.lang.Exception: Invoke failed: [[o:JasperRunManager]]->runReportToPdfFile((o:String)[o:String], (o:String)[o:String], (i:Map)[o:HashMap], (i:JRDataSource)null). Cause:

    Viendo los post anteriores vi que el PHP Java/Bridge no soporta la funcion java_require().
    No se como instalar el puente del Zend que ya soporta esto.

    Alguien me puede ayudar con este problema..?

    Muchas gracias

    • Efectivamente PHP Java/Bridge ya no se instala a manera de Modulo por lo que hay que usarlo en conjunto con un servidor de aplicaciones Java como Tomcat.

      PHP-JRU fue diseñado para trabajar con versiones anteriores de Java/Bridge y ciertamente es una mejor forma de trabajar la que ahora se establece pero lamentablemente PHP-JRU no esta diseñado para ello.
      Tendrás que hacer que conseguir usar PHP Java/Bridge menor o igual 5.3 integrara el uso con tomcat diseñando una aplicación en J2EE que te genere los reportes a través de peticiones http.

  22. Estoy buscando el JavaBridge.war de la version 5.3 del PHP Java/Bridge pero en la pagina
    http://sourceforge.net/projects/php-java-bridge/files/
    Solo encuentro versiones para Debian actualmente trabajo con Windows y no encuentro ningun .war para integrarlo con tomcat.

    Sabes de donde puedo bajarlo..?

    Gracias

  23. Saludos. Tengo el siguiente problema:

    javax.servlet.ServletException: PHP Warning: java_require() not supported anymore. Please use tomcat or jee hot deployment instead in /var/lib/tomcat5.5/webapps/JavaBridge/JRU/Java.inc on line 1656
    PHP Fatal error: Uncaught [[o:Exception]:”java.lang.Exception: CreateInstance failed: new org.altic.jasperReports.JdbcConnection. Cause: java.lang.ClassNotFoundException: org.altic.jasperReports.JdbcConnection VM: 1.5.0@http://gcc.gnu.org/java/” at:
    #-9 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1363)
    #-8 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1209)
    #-7 java.lang.Class.forName(libgcj.so.90)
    #-6 php.java.bridge.Util.classForName(Util.java:1512)
    #-5 php.java.bridge.JavaBridge.CreateObject(JavaBridge.java:435)
    #-4 php.java.bridge.Request.handleRequest(Request.java:458)
    #-3 php.java.bridge.Request.handleRequests(Request.java:500)
    #-2 php.java.bridge.http.ContextRunner.run(ContextRunner.java:140)

    El problema es el mismo ya comentado anteriormente con respecto al java_require que no es soportado por el PHP JavaBridge pero se comento que en vez de usar esa funcion se puede usar la funcion “Java_cast()” me gustaria saber como puedo usarla sin recurir a una version mas baja q la 5.3 ya el archivo de instalacion .deb y tambien el .tar.gz pero el problema no se encuentra ahi sino en el java.inc que es la que posee dichas funciones

    • Amigo el problema como se puede leer en el enunciado del warning, es que java_require ya aesta soprtado, ahora esto se le delega a una aplicación jee montada en tomcat junto con PHP javaBridge. PHP-JRU no esta diseña para esto por lo que tienes que usar versiones menores a 5.3 de PHP java/bridge hasta que PHP-JRU pueda usarse bajo los nuevos esquemas

  24. Saludos,tengo el siguiente problema:

    Fatal error: Uncaught [[o:Exception]:”java.lang.Exception: CreateInstance failed: new org.altic.jasperReports.JdbcConnection. Cause: java.lang.ClassNotFoundException: Could not find org.altic.jasperReports.JdbcConnection in java_require() path. Please check the path and the SEL and File permissions. VM: 1.5.0@http://gcc.gnu.org/java/” at: #-8 php.java.bridge.DynamicJavaBridgeClassLoader.loadClass(DynamicJavaBridgeClassLoader.java:278) #-7 java.lang.Class.forName(libgcj.so.90) #-6 php.java.bridge.SimpleJavaBridgeClassLoader.forName(SimpleJavaBridgeClassLoader.java:158) #0 /var/www/reporte/java/Java.inc(327): java_ThrowExceptionProxyFactory->getProxy(12, NULL, ‘Could not find …’, false) #1 /var/www/reporte/java/Java.inc(482): java_Arg->getResult(false) #2 /var/www/reporte/java/Java.inc(485): java_Client->getWrappedResult(false) #3 /var/www/reporte/java/Java.inc(667): java_Client->getInternalResult() #4 /var/www/reporte/java/Java.inc(2032): java_Client->createObject(‘org.altic.jaspe…’, Array) #5 /var/www/reporte/JdbcConn in /var/www/reporte/java/Java.inc on line 290

    ya tengo instalado todo lo que dice el manual de PHP-JRU y si hago un phpinfo() me da el mismo resultado del manual por cierto el Java.inc no esta en la carpeta que dice sino en “/usr/lib/php5/20060613+lfs” pero saque el Java.inc de un archivo llamado JavaBridge.war está es la version de javabridge 5.3.4,tambien ocupé php5, apache2 y el Sistema Operativo es Debian Lenny. Si se fijan en el error aparece que el java.inc esta en la carpeta “/var/www/reportes/java/Java.inc” donde la carpeta “reportes” es el proyecto lo mando a llamar desde un archivo llamado: repo.php que tiene el siguiente codigo:

    loadDirLibrary(“./jars/”);
    $conn = new JdbcConnection(“org.postgresql.Driver”,”siprues”,”admon”,”internet”);
    $parameters = new java (“java.util.HashMap”);
    $jru->runReportToXlsFile(“reporte.jasper”,”reporte.pdf”,$parameters,$conn);

    ?>

    En la carpeta reportes (proyecto) se encuentran: JdbcConnection.php, php-jru.php, repo.php y reporte.jasper, jars(carpeta), java(carpeta donde esta el java.inc). Si al archivo repo.php no le pongo el require(java/Java.inc); me da el error siguiente:

    No se ha cargado el Módulo de Java
    Fatal error: Class ‘Java’ not found in /var/www/reporte/JdbcConnection.php on line 67

    Les agradeceria que pongan alguna solucion con respecto a este problema xq puede ser la respuesta a mucho problemas de otros compañero

    • por lo visto te falta una libreria en la carpeta jars/
      se llama -> alticJasper.jar

      por si tienes problemas para descargarla te la envío a tu mail.

      Otras cosa:
      * Si estas llamando al método runReportToXlsFile (para generar archivos de exel) por que el archivo de salida es un pdf?
      revisa eso.

      * Revisa bien en el manual de PHP-JRU como instalar PHP Java/Bridge.

      * Recuerda también que PHP Java/Bridge <= 5.3

  25. Vuelvo a mandar el codigo del archivo repo.php porque no salio todo el codigo q habia creado asi que omitire las billetas porque si lo pongo con las billetas no me sale todo el codigo pero siempre es con el problema de arriba:

    require(“./java/Java.inc”);
    require (“php-jru.php”);

    $jru=new JRU();
    $jru->loadDirLibrary(“./jars/”);
    $conn = new JdbcConnection(“org.postgresql.Driver”,”siprues”,”admon”,”internet”);
    $parameters = new java (“java.util.HashMap”);
    $jru->runReportToXlsFile(“reporte.jasper”,”reporte.pdf”,$parameters,$conn);

  26. Hola RobertBruno el archivo reporte.jasper en el ireport le dije que queria que sea de extencion xls osea si es una archivo para generar excel asi lo he creado en el irerport y me fije q para generar archivos PDF manda a llamar la funcion runReportToPdfFile() y como tambien esta la funcion runReportToXlsFile() que es para generar archivos excel fue q por eso ocupo esa funcion no se si para excel esta mal declarado o es de otra forma ya que en el manual solo esta para generar PDF.

    Con respecto al archivo alticJasper.jar si esta en la carpeta “jars” y el phpBridge que estoy ocupando es la version 5.3.4 y asi como esta en el manual es como instale el javabridge, es mas cuando pongo en un archivo echo phpinfo(); me retorna la misma informacion del manual aqui te pongo lo q me regresa el phpinfo():

    java
    java support Enabled
    java bridge 5.3.4
    java.java_home no value
    java.java java
    java.log_file
    java.log_level no value (use back-end’s default level)
    java.security_policy Off
    java command LD_LIBRARY_PATH=/usr/lib/php5/20060613+lfs: java -Djava.library.path=/usr/lib/php5/20060613+lfs -Djava.class.path=/usr/lib/php5/20060613+lfs/JavaBridge.jar -Djava.awt.headless=true -Dphp.java.bridge.base=/usr/lib/php5/20060613+lfs php.java.bridge.Standalone LOCAL:@java-bridge-561d 2
    java server @java-bridge-561d
    java status running

  27. Hola,
    Edwin o Alguien me puede informar de donde puedo bajar la version 5.3.4 del phpBridge para windows. o el JavaBridge.war de esta version.

    Gracias por la ayuda

  28. Despues de tanto intentar parece ser que esta todo bien Pero me sale el siguien error cuando intento generar el reporte.

    java stack trace: java.lang.Exception: Invoke failed: [[o:JasperRunManager]]->runReportToPdfFile((o:String)[o:String], (o:String)[o:String], (i:Map)[o:HashMap], (i:Connection)[o:Jdbc3Connection]). Cause: java.lang.NullPointerException VM: 1.6.0_22@http://java.sun.com/
    at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:63)
    at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:402)
    at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:234)
    at net.sf.jasperreports.engine.JasperRunManager.runReportToPdfFile(JasperRunManager.java:122)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at php.java.bridge.JavaBridge.Invoke(JavaBridge.java:1079)
    at php.java.bridge.Request.handleRequest(Request.java:405)
    at php.java.bridge.Request.handleRequests(Request.java:481)
    at php.java.bridge.http.ContextRunner.run(ContextRunner.java:144)
    at php.java.bridge.ThreadPool$Delegate.run(ThreadPool.java:60)
    Caused by: java.lang.NullPointerException
    … 13 more
    Mi codigo es el siguiente

    $conn = new JdbcConnection(“org.postgresql.Driver”,”jdbc:postgresql://localhost/db_hrcv”,”hrcv”,”123456″);

    /**
    * Indica los parametros del reporte
    * */
    $parameters = new java (“java.util.HashMap”);
    $jasper = “C:/xampp/htdocs/hrcv/public/jasper/talentoMP_EN.jasper”;
    /**
    * genera un pdf usando el .jasper
    * */
    $jru->runReportToPdfFile(“reportExemplo.jasper”,”reporte.pdf”,$parameters,$conn->getConnection());

    No se que me esta generando el null.

    Alguien me puede ayudar..?

  29. Ya consegui generar el Reporte con subreporte.

    El problema era que no tenia los Jars correctos de la version que estoy usando del IReport.

    Estoy en la version IRport 3.7.5 .

    Y creo que los Jars del PHP JRU que tenia son de la version 3.0.0.

    Muchas Gracias Por todo Yupiiii.

  30. Hola Robert, trate de descargar la ultima version en Sourceforge, pero la pagina marca error, aun esta vigente tu proyecto o ya no hay nada para decargar en Sourceforge.net?, saludos y gracias.

    • bueno reafirmo, la url de descarga es:
      http://sourceforge.net/projects/php-jru/

      Es una archivo con el nombre: php-jru1.0.tar.gz pesa 68.9MB y viene en conjunto con Java/Bridge y JasperReport todo contenido dentro de PHPJRU.war el cual deberás configurar en un servidor de aplicaciones, por lo que recomiendo tomcat6.

      Cualquier otra librerías de java como los drivers jdbc (por ejemplo para conectarse a MySql) deberán ser incluidos dentro del war en su respectiva ubicación ( /WEB-INF/lib/ ) .

      También te recomiendo leer el articulo mas reciente sobre PHP-JRU:

      https://robertbruno.wordpress.com/2011/01/23/php-jru-1-0/

  31. Hola de nuevo Robert ya descargue el paquete pero por lo que leo no funciona en Windows,segun se hay que hacer un puente verdad? tambien te queria preguntar si hay algun manual de tu utileria, saludos y gracias.

  32. Hola Robert!

    Primero te quiero felicitar por la ayuda que nos das a travez de tu blog.

    Te escribia ojala me puedas ayudar.
    Esta es mi situación: Tengo un proyecto y genero mis reportes y todo perfecto.
    Que deseo: Quiero cambiar mis variables en donde guardar la dirección de mis librerias y de mis plantillas de reportes a la dirección de mi host, es decir esto es lo que tengo actualmente:

    $dirJavaInc = ‘C:\\xampp\\htdocs\\projectplan3\\dependencias\\JavaBridge\\java\\Java.inc’;//almaceno la ruta del archivo de configuracion
    $dirReporte =’C:\\xampp\\htdocs\\projectplan3\\dependencias\\plantillas_Reportes\\’;//Especificamos la dirección donde guardamos las plantillas de los reportes
    $dirLibrerias = ‘C:\\xampp\\htdocs\\projectplan3\\dependencias\\lib_reportes’; //Dirección de las librerías que se necesitan para genernar los diferentes tipos de reportes

    PERO YO QUIERO ALMACENAR EN ESTAS VARIABLES LA DIRECCION DE MI HOST ASI:

    $dirJavaInc = ‘http:’ . ‘//127.0.0.1’ . ‘/projectplan3′ .’/dependencias’ .’/JavaBridge’ .’/java’ .’ /Java.inc’;//almaceno la ruta del archivo de configuracion

    $dirReporte =’http:’. ‘//127.0.0.1’. ‘/projectplan3’ . ‘/dependencias’ . ‘/plantillas_Reportes/’;//Especificamos la dirección donde guardamos las plantillas de los reportes

    $dirLibrerias = ‘http:’ . ‘//127.0.0.1’ . ‘/projectplan3’ . ‘/dependencias’ . ‘/lib_reportes’; //Dirección de las librerías que se necesitan para genernar los diferentes tipos de reportes

    NO SE COMO HACERLO PORQUE AL ESCRIBIRLO ASÍ ME SALE UN ERROR DE EL SIGUIENTE ERROR:

    Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 131858439 bytes) in C:\xampp\htdocs\projectplan3\code\reportes\GestionFunciones.php on line 50

    y en mi linea 50 tengo lo siguiente:

    while(($lib = @readdir($handle)) !== false) {
    $classpath .= “file:” . $dirLibrerias . “/” . $lib . “;”;
    }
    java_require($classpath);//cargo las librerias que necesito
    $objetoReport = new jasperReport($dirReporte, $dirLibrerias, $dirJavaInc);
    $objetoReport->iniciar();

    AGRADECERIA MUCHO TU AYUDA.
    SALUDOS KTYK

Los comentarios están cerrados.