Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1168 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  PHP5 / Serveur IIS : appel JAVA (

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

PHP5 / Serveur IIS : appel JAVA (

n°1939958
lediz
Posté le 12-11-2009 à 12:39:51  profilanswer
 

Bonjour,
 
j'ai problème avec mon appel JAVA dans ma page PHP
voici ma page PHP de test index.php(toute simple)
 

Code :
  1. <?php
  2. require_once("java/Java.inc" );
  3. $system = new Java("java.lang.System" );
  4. print "Java version=".$system->getProperty("java.version" )." <br>\n";
  5. ?>


 
voici l'erreur reçue après 30 secondes:(
 

Citation :

Warning: fsockopen() [function.fsockopen]: unable to connect to 127.0.0.1:8080 (Une tentative de connexion a échoué car le parti connecté n'a pas répondu convenablement au-delà d'une certaine durée ou une connexion établie a échoué car l'hôte de connexion n'a pas répondu. ) in C:\Inetpub\wwwroot\testphp\java\Java.inc on line 922
 
Fatal error: Maximum execution time of 30 seconds exceeded in C:\Inetpub\wwwroot\testphp\java\Java.inc on line 922


Il semble pointer sur le 8080 ...
 
- j'utilise IIS port 80
- j'ai aussi configuré le "java.port" dans "php.ini" à "localhost"...
 
Merci pour votre aide.

mood
Publicité
Posté le 12-11-2009 à 12:39:51  profilanswer
 

n°1940084
skeye
Posté le 12-11-2009 à 16:21:06  profilanswer
 

1) c'est quoi la lib que tu utilises pour faire ton appel java?
2) c'est le code de ta lib qui essaye de joindre quelque chose sur le port 8080, c'est censé faire quoi ton truc?
3) java.port devrait contenir un numéro de port, par sur un nom de machine, je dirais...


---------------
Can't buy what I want because it's free -
n°1940165
lediz
Posté le 12-11-2009 à 18:54:40  profilanswer
 

1ere chose, il s'agit du "Java.host" et non pas du "java.port" que j'ai configuré à "localhost" (oups)
 
ensuite,(du PHP 5)
j'utilise "Javabridge" comme librairie car je n'y arrivais avec "php-java"
 
le but (pour le moment ) est de tester du JAVA en PHP
pour au final, faire appel à des rapports iRreport(jasper)
(Pas facile....)
 
Bonne soirée

n°1940166
skeye
Posté le 12-11-2009 à 18:58:04  profilanswer
 

j'ai l'impression que ce n'est pas du tout ce que tu cherches, ton Javabridge...t'as suivi les instructions d'install? il faut installer un tomcat...qui écoute par défaut sur le port 8080, en effet...


Message édité par skeye le 12-11-2009 à 18:58:10

---------------
Can't buy what I want because it's free -
n°1940167
skeye
Posté le 12-11-2009 à 18:59:09  profilanswer
 

t'as essayé de suivre ça?

 

http://charly-clairmont.developpez [...] r-reports/

 

[edit]

 

J'ai rien dit, c'est ce que tu sembles essayer de faire...mais tu devrais vérifierl'install de ton JavaBrudge...


Message édité par skeye le 12-11-2009 à 19:00:49

---------------
Can't buy what I want because it's free -
n°1940178
lediz
Posté le 12-11-2009 à 19:40:32  profilanswer
 

je me doute que ça doit-être de ce coté là qu'il y a un problème
j'ai déjà essayé plein de chose...
 
mais avec le "phpinfo"mais je n'arrive JAMAIS à avoir le partie java comme indiqué dans le document de ce lien...
 
REM : j'ai aussi lu qu'en php5, on ne devait plus utiliser le "javadridge.jar" !  

n°1940181
skeye
Posté le 12-11-2009 à 19:52:17  profilanswer
 

lediz a écrit :


mais avec le "phpinfo"mais je n'arrive JAMAIS à avoir le partie java comme indiqué dans le document de ce lien...


effectivement tu ne risque pas :
 

Citation :

Note that the PHP/Java Bridge cannot be installed, it is just an XML protocol. Do not search for a PHP extension, java.so or php_java.dll. These extensions are obsolete since PHP 5. Everything needed to communicate with a Java servlet engine is part of PHP 5.


 
http://php-java-bridge.sourceforge [...] lation.php
 
Tu as bien suivi ça?


---------------
Can't buy what I want because it's free -
n°1940289
lediz
Posté le 13-11-2009 à 10:32:08  profilanswer
 

Au fait, je n'ai pas installé la partie "Apache TOMCAT" !!!
Quant on parle d'installer un "Apache TOMCAT" pour javabridge ...
Que dois-installer pour IIS ?
 
Sur un autre serveur, nous testons le même chose avec une installation de EasyPHP(donc un serveur apache)
Est-ce ce serveur qui fait office de serveur "Apache TOMCAT" comme indiqué dans la documentation "php-javabridge" du lien ci dessus ?

n°1940291
skeye
Posté le 13-11-2009 à 10:34:28  profilanswer
 

lediz a écrit :

Au fait, je n'ai pas installé la partie "Apache TOMCAT" !!!
Quant on parle d'installer un "Apache TOMCAT" pour javabridge ...
Que dois-installer pour IIS ?


 
tomcat. Qui est un projet de la fondation apache.
 

lediz a écrit :


Sur un autre serveur, nous testons le même chose avec une installation de EasyPHP(donc un serveur apache)
Est-ce ce serveur qui fait office de serveur "Apache TOMCAT" comme indiqué dans la documentation "php-javabridge" du lien ci dessus ?


rien à voir.
Tomcat est un serveur d'applications java (je simplifie.:o), c'est lui qui va faire tourner ton code java si j'ai bien suivi.


---------------
Can't buy what I want because it's free -
n°1940303
lediz
Posté le 13-11-2009 à 10:52:12  profilanswer
 

en IIS : je viens d'installer un serveur TOMCAT sur le 8080(ça à l'air de toruner) :)  
 
maintenant passons à "javabridge"
- j'ai décompressé le "javabridge.war"  
- copie du répertoire "javabridge" dans "C:\Inetpub\wwwroot" (rep IIS)
- test PHP avec "java -classpath JavaBridge.war TestInstallation"
 
Erreur suivante : :pfff:  
"
Exception in thread "main" java.lang.NoclassDefFoundError: TestInstallation
"


Message édité par lediz le 13-11-2009 à 10:52:50
mood
Publicité
Posté le 13-11-2009 à 10:52:12  profilanswer
 

n°1940310
skeye
Posté le 13-11-2009 à 11:02:25  profilanswer
 

ton javabridge.war devrait être dans le webapps de tomcat...


---------------
Can't buy what I want because it's free -
n°1940313
lediz
Posté le 13-11-2009 à 11:07:35  profilanswer
 

OK c'est fait,  
 
- le "javabridge.war" est copié dans le répertoire"
C:\Program Files\Apache Software Foundation\Tomcat 5.5\server\webapps":)  
 
- dans l'explorer "http://127.0.0.1:8080/JavaBridge"
me renvoit bien une page HTML ayant comme tirtre "PHP/Java Bridge examples" avec différent choix... :)  
 
--> le 1er " Test and general php info" : me revoit bien les infos sur la version de PHP mais toujours sans la partie JAVA !!! :pfff:  

Message cité 1 fois
Message édité par lediz le 13-11-2009 à 11:08:33
n°1940316
skeye
Posté le 13-11-2009 à 11:09:22  profilanswer
 

lediz a écrit :


--> le 1er " Test and general php info" : me revoit bien les infos sur la version de PHP mais toujours sans la partie JAVA !!!


C'est normal, putain de bordel de bite en bois.:o
Quand ils disent ça  

Citation :

Note that the PHP/Java Bridge cannot be installed, it is just an XML protocol. Do not search for a PHP extension, java.so or php_java.dll. These extensions are obsolete since PHP 5. Everything needed to communicate with a Java servlet engine is part of PHP 5.


 
c'est ce que ça signifie pour toi dans la pratique.


---------------
Can't buy what I want because it's free -
n°1940353
lediz
Posté le 13-11-2009 à 11:53:56  profilanswer
 

OK,j'avance
Dans les différents exemples de  "http://127.0.0.1:8080/JavaBridge".
certains fonctionnes, d'autres non  
- ex: numberguess.php : OK :)  
- ex: hello.php : KO :pfff:  
 
J'essaye aussi ce simple  exemple et il ne fonctionne pas :  :pfff:  
 

Code :
  1. <?php
  2. java.lang.System dans PHP $system = new Java('java.lang.System');
  3. echo 'Java version=' . $system->getProperty('java.version') .;
  4. php>


provient de = http://serecom.univ-tln.fr/~tozza/ [...] mples.html
 
Je vais maintenant essayer d'intégrer l'appel de mes rapport Ireport.... :pt1cable: ça promet !
 
Merci pour ton aide,j'avance doucement mais surement... :sol:


Message édité par lediz le 13-11-2009 à 11:55:56
n°1941188
lediz
Posté le 16-11-2009 à 15:35:52  profilanswer
 

bonjour ,
j'ai  "un peu" changé d'orientation...  :ange:  
j'ai créé une classe JAVA qui se connècte à la DB et qui génère un PDF  
cela fonctionne avec un "RUN" dans éclispe de ma classe :)  
maintenant j'aimerais utiliser cette classe dans mon code(HTML/PHP/...)
pouvez-vous m'aidez ? :jap:  
merci
 
voici le code de ma classe
 

Code :
  1. import java.sql.*;
  2. import java.util.HashMap;
  3. import java.util.Map;
  4. import net.sf.jasperreports.engine.JRException;
  5. import net.sf.jasperreports.engine.JasperCompileManager;
  6. import net.sf.jasperreports.engine.JasperExportManager;
  7. import net.sf.jasperreports.engine.JasperFillManager;
  8. import net.sf.jasperreports.engine.JasperPrint;
  9. import net.sf.jasperreports.engine.JasperReport;
  10. import net.sf.jasperreports.engine.design.JasperDesign;
  11. import net.sf.jasperreports.engine.xml.JRXmlLoader;
  12. public class GeneratePDF {
  13.     public static void main(String[] args) {
  14.         // - Paramètres de connexion à la base de données
  15.         String login = "prov_work";
  16.         String password = "prov_work";
  17.         Connection con =null;
  18.         //
  19.         try
  20.         {
  21.          Class.forName("sun.jdbc.odbc.JdbcOdbcDriver" );
  22.         }
  23.         catch(java.lang.ClassNotFoundException e)
  24.         {
  25.          System.err.print("ClassNotFoundException (try): " );
  26.          System.err.println(e.getMessage());
  27.         }
  28.         String dataSourceName = "DB_ODI";
  29.         String url = "jdbc:odbc:" + dataSourceName;
  30.         //
  31.         try
  32.         {
  33.          con = DriverManager.getConnection(url,login,password) ;
  34.      }
  35.          catch(SQLException sqle)
  36.      {
  37.          System.err.println(sqle.getMessage());
  38.         }
  39.         //
  40.         try
  41.         {
  42.             // - Chargement et compilation du rapport
  43.             JasperDesign jasperDesign = JRXmlLoader.load("D:\\Z_A_MOI\\ODI\\utils\\jasper_ireport\\iReport-1.2.5\\iReport-1.2.5\\rep1.jrxml" );
  44.             JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
  45.             // - Paramètres à envoyer au rapport
  46.             Map parameters = new HashMap();
  47.             //parameters.put("Titre", "Titre" );
  48.             // - Execution du rapport
  49.             JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, con);
  50.             // - Création du rapport au format PDF
  51.             JasperExportManager.exportReportToPdfFile(jasperPrint, "D:\\Z_A_MOI\\ODI\\utils\\jasper_ireport\\iReport-1.2.5\\iReport-1.2.5\\rep1.pdf" );
  52.            
  53.            
  54.             //byte[] bytes = JasperExportManager.exportReportToPdf(jasperPrint);
  55.       //:FacesContext context = FacesContext.getCurrentInstance();
  56.       //:HttpServletResponse response = (HttpServletResponse) context
  57.      //   .getExternalContext().getResponse();
  58.              } catch (JRException e)
  59.         {
  60.                     e.printStackTrace();
  61.         } finally {
  62.             try {
  63.                  con.close();
  64.                 } catch (SQLException e) {
  65.                         e.printStackTrace();
  66.                 }
  67.         }
  68.     }
  69. }



Message édité par lediz le 16-11-2009 à 15:37:46

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  PHP5 / Serveur IIS : appel JAVA (

 

Sujets relatifs
[Crash serveur local] Recup BDD MySQL ?chainage d'appel surcharge operator
Cplex avec Java[PHP5] savoir si on doit ouvrir une session
Serveur: Bug de TransfertPHP5 / JavaBridge : Intégration
Probleme d'écriture pour un client (JAVA)[JAVA] Equivalence d'arbres
Afficher mon image (php/java)[PHP5] URL rewriting
Plus de sujets relatifs à : PHP5 / Serveur IIS : appel JAVA (


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR