java

java - Java - Programmation

Marsh Posté le 15-06-2010 à 16:54:44    

Bonjour, je voudrai savoir savoir comment faire appel a des servlets dans un programme java (avec la méthode main) càad que je voudrai écrire un programme java et faire un switch, càd un choix entre plusieurs servlets.  
 
donc comment faire appel à une servlet (doPost) dans un main d'un programme java.
 
je vous remercie d'avance pour votre aide.
 
 
 
   

Reply

Marsh Posté le 15-06-2010 à 16:54:44   

Reply

Marsh Posté le 15-06-2010 à 22:02:16    

Quelqun pour m'aider svp; comment faire appel à une servlet dans la méthode  public static void main(){}.
 
SVPPPPP

Reply

Marsh Posté le 16-06-2010 à 10:30:13    

Je pense que personne t'aide parce que ta question est bizarre, car à moins que tu aies une explication, ce que tu veux faire semble, disons, "inadapté".
 
Mais bon, c'est faisable, une servlet ca ne marche pas tout seul donc je suppose qu'elle est déployée sur un serveur (Weblogic, Tomcat, etc) et joignable par une URL, donc ton utilises ca pour faire une bete requete HTTP: http://java.sun.com/j2se/1.5.0/doc [...] ction.html


---------------
C'était vraiment très intéressant.
Reply

Marsh Posté le 16-06-2010 à 14:42:34    

salut, et merci de m'avoir répondu; si ça ne parait logique ce que je demande alors pouvez me proposer une solution adapté; alors voilà ce que je veux faire:  
 
j'ai un ensemble de servlets ; chacune d'elle fais un travail particulier : exemple : ajouter, un autre qui modifie , une autre servlet qui supprime ..etc ; alors je voudrai faire un switch de la sorte :
 
switch(){
case1 : system.out.println ("Vous voulez ajouter un ..." )
//alors j'appelle ma servlet qui fait l'ajout
 
case2 : system.out.println ("Vous voulez modifier un ..." )
//j'appelle la servlet de modification  
 
.... et ainsi de suite.
 
PS; j'utilise mysql ; eclipse; et j2EE
 
j'espère que vous pourriez m'aider.

Reply

Marsh Posté le 16-06-2010 à 14:43:57    

et tous mes servlet se trouve dans default package sous eclipse.

Reply

Marsh Posté le 16-06-2010 à 14:48:41    

Mais tu vérifies quoi dans le switch ? Parce que je comprends pas, sur ton application web quand tu cliques sur un lien ou appelles une action ça appelle la servlet qu'il faut, pas besoin de tester soi-même laquelle appeler.

Reply

Marsh Posté le 16-06-2010 à 14:59:14    

merci de me répondre ; oui je sais mais c'est un programme java simple avec la méthode main() que je teste dans une console;  
 
et je  voudrai faire  
 
public static voide main(){
 
faire un switch que j'ai fait dans le message suivant}
 
voilà

Reply

Marsh Posté le 16-06-2010 à 15:08:17    

OK, mais la question c'est: quel est ton but? Tu veux faire quoi exactement "vu de loin"? Tester que tes servlets marchent?
 
Au fond, une servlet c'est rien d'autre qu'une page web et c'est censé etre appelé en tant que tel dans un browser. Donc si tu veux les tester, il faut d'abord les déployer dans un serveur applicatif, et ensuite tu pourras y accéder, comme le dit Deamon, en codant une page HTML toute bete ou tu fais des liens vers les URLs de tes servlets.
 
Si ton application n'est PAS web, dans ce cas l'utilisation de servlets est fortement inadapté: ca peut marcher mais tu t'emmerdes vraiment pour rien à devoir passer par un serveur applicatif. Si t'as malgré tout besoin d'une archi client/serveur, tu peux utiliser par exemple des sockets pour les faire communiquer.


---------------
C'était vraiment très intéressant.
Reply

Marsh Posté le 16-06-2010 à 15:14:26    

oui, mes servlets marche à merveille; j'ai crée un site web dans lequels je fais appelle à eux ; et biensure j'utilise Tomcat; mais je voudrai faire ça car je crée un web services sous eclipse et je dois utiliser ces servlets que j'ai crée. mais c'est servlets ne s'exécutent pas tous seule on doit les appelé de quelque part; c'est pour cela que je dois écrire un programme qui exécute ces servlets.  
 
voilà  

Reply

Marsh Posté le 16-06-2010 à 15:18:36    

Ca explique pas pourquoi tu dois utiliser ces servlets de cette façon.

Reply

Marsh Posté le 16-06-2010 à 15:18:36   

Reply

Marsh Posté le 16-06-2010 à 15:20:11    

je créer un web services; au contraire ça explique tous; alors donner moi une solution svp??

Reply

Marsh Posté le 16-06-2010 à 15:20:39    

un web services dynamic sous eclipse

Reply

Marsh Posté le 16-06-2010 à 15:21:44    

La solution, lasnoufle te l'a donnée. Faire une requête HTTP pour faire l'appel de l'action.

Reply

Marsh Posté le 16-06-2010 à 15:28:18    

oui je l'ai fait et j'ai mis ça String sURL = "http://localhost:8081/testing/Personne"; //lien vers ma servlet
 
mais quand j'excute dans la console sa me donne un erreur :
App.java:105: cannot find symbol
symbol  : variable Source
location: class Banque
    String pageHTML = Source.getHttpPage("classe HttpUrlConnection" );
                                                  ^
1 error

Reply

Marsh Posté le 16-06-2010 à 15:34:31    

Fais voir ton code.

Reply

Marsh Posté le 16-06-2010 à 15:36:29    

c'est celui qui me l'a envoyé

Reply

Marsh Posté le 16-06-2010 à 15:37:16    

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
   
public class Source {
    public static String getHttpPage(String classeHttpUrlConnection) {
        String sURL = "http://localhost:8081/application/Personne";
        String page = ""; // page html vide par défault
 
        try {
            URL epguides = new URL(sURL);
            URLConnection conn = epguides.openConnection();
            BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
   
             String tmp; // déclaration de la variable tmp qui va stocker temporairement le contenu reçu par l'objet bufferedReader
             while((tmp = bufferedReader.readLine()) != null) {
                 page += tmp + "\n"; // à chaque tour de boucle, on ajoute le contenu de la variable tmp à la variable age
             }
   
         } catch(Exception e) {
             e.printStackTrace(); // imprimer la trace de la pile en cas de bug du programme
         }
   
         return page;
     }
 }

Reply

Marsh Posté le 16-06-2010 à 15:41:30    

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
 
 
 
 
 
 
public class App {
 
 /**
  * @param args
  */
 
 public static void main(String[] args) throws IOException {
  // TODO Auto-generated method stub
   
   
  int c =0;
   
  while (c != 3) {
   System.out.println("1. ajouter." );
   System.out.println("2.  modifier." );
   System.out.println("3. supprimer." );
   System.out.println("\nfaite un choix : " );
   
   try {
    BufferedReader reader13 = new BufferedReader(new InputStreamReader(System.in));
    String lineRead13= reader13.readLine();
    int c= Integer.parseInt(lineRead13);
   } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
   
   switch (c) {
   case 1:
    try {
    System.out.println(" entrer votre nom : " );
    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    String lineRead = reader.readLine();
    String nom = lineRead;
    System.out.println(" entrer votre prénom : " );
    BufferedReader reader1 = new BufferedReader(new InputStreamReader(System.in));
     
    String pageHTML = Source.getHttpPage("classe HttpUrlConnection" );
    System.out.println(pageHTML);
     
     
    } catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
        }
 
}
}

Reply

Marsh Posté le 16-06-2010 à 15:46:09    

Il sert à quoi le paramètre de getHttpPage(String classeHttpUrlConnection) ?

 

Et mets ton code entre les balises [ code=java] [ /code] (sans espace).


Message édité par Deamon le 16-06-2010 à 15:46:40
Reply

Marsh Posté le 16-06-2010 à 15:48:13    

je vous pose la question je n'ai aucune idée

Reply

Marsh Posté le 16-06-2010 à 15:56:51    

Tu as récupéré où le code ?
 
Essaye déjà HttpURLConnection au lieu de URLConnection.

Reply

Marsh Posté le 16-06-2010 à 16:04:13    

explique moi plus clairement ?? ou je dois essayé HttpURLConnection??

Reply

Marsh Posté le 16-06-2010 à 16:34:23    

Je suis clair pourtant : à la place de URLConnection.
Et tu réponds pas à la 1ere question.

Reply

Marsh Posté le 16-06-2010 à 16:37:32    

toujours la même erreur, comment ça j'ai récupérer ou le code??

Reply

Marsh Posté le 16-06-2010 à 16:49:57    

La classe Source avec getHttpPage c'est pas toi qui l'a créée, tu l'as récupérée où ?

Reply

Marsh Posté le 16-06-2010 à 16:52:12    

ah d'accord, je ne sais pas j'ai fais copier collé du document que lasnoufle m'a indiqué

Reply

Marsh Posté le 16-06-2010 à 16:58:26    

Sur http://java.sun.com/j2se/1.5.0/doc [...] ction.html ? J'ai pas u le code correspondant.

Reply

Marsh Posté le 16-06-2010 à 18:55:14    

ah d'accord, oui j'ai fait des recherches sur internet.

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed