Rechercher : dans
Par :

JSP affichage données depuis .java

Dernière réponse le 18 fév 2009 à 16:12:24 mathieu, le 16 fév 2009 à 10:21:29 
 Signaler ce message aux modérateurs

Bonjour,

Je rencontre un problème avec un projet JAVA, peut-être pourrez vous m'aider.

J'ai un fichier .java qui contient des fonctions et qui est correct.
Une de ces fonctions affiche une chaîne de caractère directement dans la console de NetBean (sans utiliser de return).

D'un autre côté j'ai un fichier JSP qui contient un import de ce fichier .java.
Je voudrais afficher dans ma page JSP la chaîne de caractère produite par le fichier java.

La connexion entre les 2 fichiers est correct car une autre fonction du fichier java qui contient un return, renvoie bien le résultat.

Avez-vous une idée ?
Merci

Meilleures réponses pour « JSP affichage données depuis .java » dans :
Java - Les types de données Voir Les primitives Java est un langage orienté objet, c'est-à-dire que les éléments manipulés sont des classes, ou plus exactement des objets, c'est-à-dire des instances de classes. Toutefois ces objets contiennent des données possèdant un type (et...
Introduction aux Java Server Pages VoirPrésentation des Java Server Pages Les JSP (Java Server Pages) sont un standard permettant de développer des applications Web interactives, c'est-à-dire dont le contenu est dynamique. C'est-à-dire qu'une page web JSP (repérable par l'extension...
Connexion à la base de données avec JDBC VoirConnexion à la base de données L'API (Application Programming Interface) JDBC, c'est-à-dire la bibliothèque de classes JDBC, se charge de trois étapes indispensables à la connexion à une base de données : la création d'une connexion à la...
Servlets - Gestion des formulaires VoirIntroduction aux formulaires Les servlets rendent très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML, c'est-à-dire une interface graphique permettant à l'utilisateur de saisir des données. Grâce à la balise...

1

Marco la baraque, le 16 fév 2009 à 11:44:11

Bonjour,
Il faut que ta classe Java possède une méthode retournant un String (on se moque éperdument qu'elle affiche quelque chose dans ta sortie standard, ça ne sera pas affiché dans ton navigateur).

Dans ta jsp, une fois que ton import est effectué, tu peux faire ceci :

<% TaClasse instance = new TaClasse();%>
<%= instance.affiche(); %>


Si ta méthode actuelle ne retourne pas de String mais fait juste un affichage et retourne void, dans ce cas tu la modifie.

Cordialement, rtfm and jfgi
Simple "merci" makes helping people happy :)

Répondre à Marco la baraque

2

arth, le 16 fév 2009 à 12:16:38

Marco a encore frappé ;)

Bonne journée.
Le loup, solitaire et mystérieux.

Répondre à arth

3

mathieu, le 18 fév 2009 à 14:27:52

Merci.

J'ai modifié ma méthode.

Mais dans cette méthode, je voudrais retourner un tableau à 2 dimensions puis l'afficher.

public String[][] listUser(String string_name)

...

return tab;

je ne sais pas si ces 2 paramètres sont correct...

Répondre à mathieu

4

Marco la baraque, le 18 fév 2009 à 15:11:19

Bonjour,
Oui, c'est correct. Cependant je ne comprends pas pourquoi tu poses cette question : pourquoi n'as-tu pas testé avant de venir la poster?

Cordialement, rtfm and jfgi
Simple "merci" makes helping people happy :)

Répondre à Marco la baraque

5

mathieu, le 18 fév 2009 à 15:23:33

J'ai testé bien entendu avant de venir poster, mais le fait est que ma jsp ne m'affiche toujours pas le tableau.

je n'ai pas utiliser le <%= instance.affiche(); %> car je n'ai pas de méthode affiche.

j'ai fait ceci à la place : instance.listUser (mon_string)

Est-ce que ça peut fonctionner comme ça ? Sinon d'où peut provenir l'erreur ?

Répondre à mathieu

6

Marco la baraque, le 18 fév 2009 à 15:42:53

Bonjour,
Ok, je comprends mieux.
Tout d'abord, oui, c'est comme ça qu'il faut appeler ta méthode.

Cependant, le tag <%= ... %> est en fait un raccourci à la méthode toString() de l'objet en paramètre. Le problème ici est que tu utilises un tableau (ici bidimensionnel), qui n'est pas un objet, donc qui n'a pas de méthode toString(), donc qui ne peut pas être affiché.

En général, pour afficher le tableau, tu fais une boucle imbriquée de la manière suivante :

<% String[][] tab = instance.listUser (mon_string); %>
<% for (int i = 0; i < tab.length; i++) { %>
  <% for (int j = 0; j < tab[i].length; j++) { %>
  <%= tab[i][j] %>
  <% } %>
  <br/>
<% } %>


Cordialement,

Edit : Quoiqu'après réflexion ça ne doit pas appeler la méthode toString() vu que les types primitifs sont affichés eux aussi, et que quand tu fais un <%= ... %> sur un objet dans lequel tu n'as pas redéfini toString, ça n'affiche pas l'adresse de l'objet. Donc j'ai dit n'importe quoi ^^ rtfm and jfgi
Simple "merci" makes helping people happy :)

Répondre à Marco la baraque

7

 mathieu, le 18 fév 2009 à 16:12:24

Peut importe, la boucle imbriquée fonctionne très bien !

J'ai réussi ce que je voulais faire, il ne me reste plus qu'à mettre de l'ordre dans l'affichage :-)

Merci de ton aide.

Répondre à mathieu