salutations à tous,
j'ai programmé une application java qui tourne correctement, mais j'aimerais mnt la mettre en application sur le net...
pouvez-vous m'aider en me disant ce qu'il faut ajouter ainsi que les changements dans le code s'il y en a...
mon application est composée de :
2class java
1DB ACCESS avec 2tables
Salutations à toi.
Difficile de t'indiquer les modifications à effectuer dans ton code si tu ne nous fournis pas le code.
Mais quel est le problème au fait ? Que se passe-t-il quand ton application sur le net ?
Je me demande s'il ne veut pas dire "porter son application sur la plate forme .Net" :?:
ben je n'ai pas vraiment de problème lol
en fait, j'ai fait une application java qui tourne sans problème
mais j'aimerais qu'elle soit utilisable depuis une page web, mais j'ignore comment faire
si vous voulez ma question est du style comment faire un applet java et le diffuser sur le net ;)
Ca ne va pas tarder :D
Ca parait incroyable... ;)
En théorie écrire une applet ne présente aucune difficulté. Surtout si tu as déjà écrit une application Java
En pratique si tu dois accéder à une base de données depuis l'applet (ce que je crois deviner en lisant ta première question), ça va peut être être moins simple.
Tout ça c'est bien gentil, mais il faut déjà que la page Web soit servie par une serveur. Je me demande si ta question ça finalement n'est pas "comment faire un site ?"
non non faire un site je sais le faire, je suis pas débutant à ce point là lol
ce que je veux savoir c'est d'abord comment transformer mon application JFrame en applet
et par la suite que dois je faire pour qu'elle soit opérationnelle sur le web de la meme manière que qd ça tourne chez moi...
Pardonne moi, mais si tu n'es pas débutant à ce point là, comme tu dis, je vois mal en quoi le passage d'une appli Java vers une applet Java te pose la moindre difficulté.
C'est là qu'il peut y avoir un problème mais:
- comme tu ne dis rien quant au serveur ou rien quant à qui va hénerger ton site et comment.
- tu ne montres aucun bout de de code.
- tu ne décris pas le fonctionnement de ton application ni rien.
c'est finalement moi qui te pose une question:
Comment veux tu qu'on aide :?: :?:
Oh et puis je t'en pose une deuxième tant que j'y suis, si ut veux bien. Dis moi tu ne confond pas "écrire une page HTML" avec "créer un site".
je ne suis pas débutant au sens général, mais en java je le suis un peu sinon je viendrais pas demender de l'aide ^^
je ne montre pas mon code pcq je ne vois pas ce que ça changerait
mon code tourne autour de JFrame et fait ses requetes sur une DB access (il me semble l'avoir mis plus haut)
ce que j'aimerais savoir c'est quel code et dans quel langage dois je écrire?
non non je ne confond pas, ici je pense que c'est juste une page web qu'il me faut mais sans savoir précisement ce que je dois faire
je pensais que ma question était claire à la base "comment mettre en place une application java sur le web?" mais je peux me tromper, nul n'est parfait ^^
si tu veux des questions plus précises voici ;)
- comment mettre une applet java en lien avec une page html?
- comment faire reconnaître ma DB par mon applet une fois la page précitée terminée et diffusée sur le net?
Ah bon... je me disais aussi...
Ah bon ? Un proverbe chinois dit qu'un dessin vaut mieux que mille mots.
Dans le même ordre d'idée, tu nous demandes quoi modifier dans ton code, mais ton code tu ne le montres pas. Alors pardonne moi, mais je ne vais pas écrire mille mots dans le vide. Et apparemment vu l'empressement des autres à te répondre, je ne suis pas le seul de mon avis.
Certes, et alors ?
Je crains que non.
Ben non pas du tout claire.
Parce que d'abord il y a plusieurs approches pour "mettre une application Java sur le Web", l'applet étant une possibilité parmi d'autres. En plus (au risque de te paraître lourdingue, désolé), on ne sait pas ce que fait cette mirobolante application, donc on ne peut pas deviner "comment la mettre *comme il se doit* sur le Net". Oui oui, je ne suis pas sourd. JFrame et Access, j'ai bien entendu. Mais il ne suffit pas de répéter ça comme un mantra oriental pour que cela provoque l'effet attendu :)
Ma fois il me semble que pour écrire une applet en Java, il faut employer le langage Java.
Quel code ? Je le sais.
Oui ça c'est précis. La réponse est normalement depuis HTML 4.0 en mettant une balise object dans la page. Quoiqu'à cause des facéties des navigateurs, c'est peut être la balise applet que tu devras mettre ou même la balise embed.
Voilà donc. Tu me dirais que si je mettais un exemple complet, ça te parlerait plus. Je me le suis dit moi même "Peut être que je devrais lui mettre un bout de code d'exemple ?" puis finalement je me suis dit "je ne vois pas ce que ça changerait", alors j'ai laissé tomber.
"reconnaître ma DB par mon applet", ça ne veut rien dire. Que l'applet puisse se connecter à la DB, ça aurait plus de sens.
"page diffusée sur le net". Oui mais diffusée comment :?: Parce que ce que tu dois savoir c'est qu'une applet, pour raisons de sécurité, ne peut ouvrir une connexion avec une DB *que* si celle-ci réside sur la *même* machine que la machine où réside ta page Web.
Donc ça implique que ta DB soit hébergée par celui qui héberge ta page.
Qui est-ce "celui" qui héberge ta page ? Avec ce que tu dis, on en sait foutre rien. Si c'est ton fournisseur d'accès habituel, il va te dire d'aller de faire voir avec ta BD Access, parce qu'il est fournisseur d'accès, pas fournisseur d'Access. Tu saisis la nuance ? ;) Donc comme ton applet ne résidera pas sur la même machine que la DB, ce que tu veux faire ne peut être fait.
Pour faire ce que tu veux faire, tu dois être ton propre hébergeur, c'est à dire que tu dois créer ton site toi même à partir d'une bécane capable de servir les pages HTML, donc faisant tourner un serveur Web et faisant aussi tourner Access. Voilà pourquoi dès le début, j'ai demandé au non-débutant que tu es si par hasard il ne confondait un peu créer une page Web et installer un site.
As tu compris petit scarabée ?
Médite tout cela et s'il s'ensuit quelque illumination dans ton esprit, je consentirai peut être à pousser plus loin cet enseignement.
la belle tartine ^^ tu dois pas etre loin des 1000mots ^^
non plus sérieusement, quand je disais que je ne pensais pas que celà changerait qqch c'est que mon code est à mon sens plutot conséquent et je ne vois pas quel morceau précis t'interresse
pour me défendre je dirais que je ne suis pas débutant pcq bon j'ai qd meme un diplome en informatique (je sais ça fait genre je m'la joue ^^)
après avoir lu ce beau petit discours, je vais qd meme essayer de compléter mes données ;) donc pour mon fournisseur, je me doutais qu'avec access j'allais avoir du mal donc 2 solutions se proposent à moi :
1. héberger moi meme, ce qui est pas gagné car celà demande pas mal de configuration
2. convertir ma db access en db mySQL, ce qui implique des changements dans mon code, à priori (je dis bien à priori) me paraissent plus simple, seulement j'ignore comment faire cette conversion ^^, tout ça pour héberger sur un hébergeur du style de multimania
bon voilà je veux bien mettre mon code, mais je ne pense pas que mes 500lignes soient indispensables
C'est parce que tu t'entêtes à ne pas faire de dessin.
Mais tu as tout à fait raison. Je serais plus concis à l'avenir ce qui m'évitera aussi de te consacrer trop de mon temps. Ce long post est donc le dernier à ton intention.
Aider c'est une chose que je fais volontiers. Jouer aux devinettes moins.
Jusqu'à maintenant webmaster et moi on n'a fait que t'extirper des renseignements seulement dans le but de t'aider. Mais on a aussi d'autres choses plus intéressantes à faire.
Un extrait pour voir comment il démarre et aussi une ou deux phrases pour dire ce qu'il fait ça aurait été bien. Enfin bon bref, ton code tu l'as développé pour la DST, le FBI et la CIA réunis, c'est top secret on a compris :)
Oui mais ce que je digère quand même très mal, c'est comment il peut se faire que quelqu'un qui a codé une appli complète en Java ait besoin d'aide pour pour la migrer vers une applet. C'est tellement simple, surtout pour quelqu'un de diplômé. Parce que moi je ne suis pas diplômé, je n'ai pas fait d'études ni rien et je pourtant sais faire ...
On est quand même vachement loin de la question initiale qui était vraiment un chef d'oeuvre de nébulosité.
Je ne vois pas le problème. Je m'héberge bien moi même.
Bon avec un Linux. Alors pour ACCESS c'est plus difficile :D
Et a postérori un code Java qui accède à une base de données c'est du JDBC donc il n'y a pas grand chose d'autre à faire que de simplement changer de driver de BD.
De toutes façons je crains que cela ne change rien au problème ->
-> Je ne sais pas comment ils font chez multimania mais en général les hébergeurs ne permettent l'accès aux BD (MySQL en général toujours) qu'en local. C'est à dire pas par une connexion réseau.
Et une applet ne sait pas faire autrement qu'une connexion réseau ce que va interdire ton fournisseur d'accès.
Si vraiment tu veux mettre sur le Net comme dis, via un fournisseur d'accès, je crains que tu ne doives ré-écrire ton appli en Php et utiliser MySQL.
En effet *tout* le code ça n'est pas indispensable.
Et maintenant que le problème est précisé, ça n'est même plus utile. Pour l'instant la question est réglée. Applet Java -> exit.
Oui la grande majorité des hébergeurs (et encore plus particulièrement les hébergeurs) n'autorisent qu'un accès à la db en localhost. Certains rares hébergeurs permettent l'accès à la configuration des droits d'accès à la db, sinon il faut se tourner vers un serveur dédié. Là il sera possible d'ouvrir un accès à partir de l'extérieur.
je n'avais pas l'intention de te froisser, loin de là
diplomé ne veut pas dire expert dans le domaine et encore moins en informatique tellement le domaine est large, mon diplome porte sur hardware et là, il s'agit de programmation, ce qui n'est pas tout a fait pareil... enfin soit la question n'est pas là je crois ^^
oui mais, ma base ACCESS je dois en faire une mySQL non? et elle est plutot conséquente :oops:
le problème est que je suis sur un cours de projet JAVA et donc mon programme doit etre en java, seulement voilà, j'aimerais pouvoir le mettre à disposition pour d'autres personnes pour qu'ils puissent le tester et me dire s'ils rencontrent des bugs à l'utilisation
voilà, bon je ne sais pas si je dois encore mettre mon code du coup ^^
Ce n'est pas que je suis froissé.
Le problème est que quand quelqu'un pose une question sur un forum, le bon sens veut que le même quelqu'un donne des informations, un maximum d'informations pour qu'il soit possible de l'aider.
Quand on essaie le l'aider et qu'on lui demande des infos supplémentaire, il n'est par normal que le quelqu'un soit récalcitrant.
Et comme en ce moment sur le forum vous êtes un certain nombre à vous être donné le mot pour faire ça, faut bien vous gronder un peu.
Regarde comme ça pouvais être simple. Tu disais en une phrase "j'ai une appli qui travaille avec une base de donnée, et je veux en faire une applet pour mettre sur le net" alors tout de suite je te disais niet et on gagnait du temps.
Bref n'en parlons plus.
Et tu codes en Java, tu n'as pas honte ? ;)
En effet elle n'est pas là. Tu sais maintenant où elle est je pense :)
Et alors quel est le problème ? Tu es programmeur non ? Alors tu programmes un bout de code qui pompe les données dans ACCESS pour les ré-injecter dans MySQL :)
Si ton seul soucis était là...
Si tu ne t'héberges pas toi même tu ne pourras pas faire ce que tu veux. Sinon en Java tu as JSP, Servlet, EJB, ou même CORBA, MAIS... tu va retomber sur le problème d'une certaine façon car tu ne vas pas trouver un hébergeur pour ces bouzins.
Les hébergeurs Java sont très rares, parce que Java ça bouffe trop de ressources, et très chers pour la même raison.
je connais http://www.javapipe.com/web/ mais ça m'étonnerais que ça te convienne :D
Remarque si tu as une machine disponible et une connexion permanente, héberge toi toi même, c'est très facile. Et puis c'est amusant. Et pour ton cas, je ne vois pas d'autre solution.
ok pour l'auto hébergement je vais un peu chercher comment m'y prendre
et pour le code, tu pourrais me donner une idée de ce à quoi ça doit ressembler?
voici mon code tant demandé ^^
Oui mais pour faire quoi ?
Faut prendre les choses dans l'ordre. D'abord tu t'héberges. Ensuite tu choisis si possible en connaissance de cause et/ou en fonction des ressources de ta bécane une solution Java ( ou même pas Java tiens... ;) ) Et quand la solution est judicieusement choisie, alors on passe au code.
Parce que si tu t'héberges, ce n'est peut être pas une applet qui sera le mieux non plus.
Par ailleurs garderas tu ACCESS ou pas ? Voilà des choses à définir avant de coder une application.
Quant à ton code... hem.. bon tu en donnes, mais pas les bouts qui permettent de savoir ce qu'il fait et comment il le fait.
La création de l'interface graphique quel intérêt ? Ca ne renseigne pas beaucoup sur la logique de l'application.
Mais je crois *deviner* que la base de données sous jacente est un dictionnaire, au sens littéraire du terme. D'ici que tu as fait un jeu où il faut deviner un mot (le mot le plus long ?) il n'y a pas loin, parce que décidement, les devinettes, c'est une vocation chez toi, on dirait bien :lol:
Une petite remarque sur la forme. Déclarer que main lève SQLException, c'est sans doute pratique pour coder sans que le compilateur se plaigne trop souvent, mais je ne suis pas sûr que ça soit comme ça que tu vas assurer une fiabilité du code à l'exécution. Ne crois tu pas ?
ben la question de base est de faire une page web qui fasse tourner mon application java... si possible en touchant le moins possible au code
ya de fortes chances que oui, si c'est sur ma machine
ben je ne vois pas comment donner la logique de mon appli sans lacher tout le code de 500lignes :-/
tu n'es pas loin, en fait, c'est en effet un petit jeu où l'on choisi les voyelles et consonnes via 2boutons, et une fois les lettres tirées l'on doit former le mot le plus long possible, le programme se sert donc d'une DB contenant quelques 137000mots pour verifier si le mot est connu de la langue française ou pas, et attribue ensuite des points selon le mot trouvé
en fait, le truc c'est que je travaille avec netbeans et que lorsque j'utilise ma variable ResultSet il me propose entre des try...catch... et un throws SQLException, ce qui pour le moment est plus simple à utiliser surtout qd je sais que aucune erreur ne surviendra sur l'action que je fais à ce moment là
ps : si tu veux je peux te fournir mon fichier java comme ça tu vois directement ce qui t'interresse dans mon code ;)
Oui ça on avait compris. Pourquoi toujours répéter la même chose en refusant de te focaliser sur l'essentiel ?
Je n'arrête pas de te le dire, ce que tu veux faire *DEPEND* des moyens dont tu disposes pour t'héberger. C'est si difficile à avaler ?
On le sait bien qu'à la base pour mettre sur le web faut une page web. :evil:
Si ACCESS et le serveur de l'applet sont sur la même machine, c'est sans doute l'applet qui est le plus simple.
Au lieux de faire "extends JFrame" dans ta classe principale, tu fais extends JApplet (en supposant que les clients auront le plugin Java 2 installé sur leurs bécanes, mais la supposition est raisonnable de nos jours)
Ensuite le code qui était dans ton constructeur tu le mets dans une méthode init qui rédéfinit celle de la classe JApplet.
Si tu veux faire quelques chose de particulier dans l'utilisateur quitte la fenêtre du navigateur ou y revient, tu redéfinis pour cela les méthodes start et stop de JApplet
C'est tout.
C'est donc facile *SI* access et le serveur web sont sur la même machine.
Mais tu sais entre tout et rien, il existe parfois un juste milieu, comme par exemple donner les déclarations des méthodes (si elles ont un nom parlant), sans le corps. Et si le corps d'une méthode est capital pour la compréhension tu le donnes aussi.
Bref essayer de donner une bonne idée de ce que fait l'appli, pour que l'on puiisse donner la bonne réponse à la question de base: "comment la mettre sur le net"....
Oui oui je l'avais, dit "le mot le plus long"
J'ai gagné quelque chose ?
Oui oui j'avais bien compris. c'est ce que je voulais dire par "plus pratique".
Alors là.....
Pardonne moi, je ne te le dis pas pour te blesser ni pour être désagréable, ni même pour te taquiner, ni rien, je te promets, mais il n'y a qu'un débutant en programmation pour écrire une phrase aussi hasardeuse :lol:
Quand tu auras fait beaucoup de programmation, je te parie que tu n'oseras plus :)
Ca n'est pas utile, je te l'ai déjà dit il y a deux posts
Maintenant on a une idée suffisante de ce que fait l'appli.
C'est pour ça que je t'ai répondu pour l'applet. Mais en toute rigueur je n'aurais pas du. Car tant que le mode d'hébergement n'est pas clairement défini et que l'on est *SÛR* que serveur Web et BD sont sur la même bécane, il n'est pas sûr que la solution de l'applet soit valable, et si ça se trouve j'ai usé mes petis doigts potelés pour rien.
Quant à moi, je crois quand même que je vais arrêter de t'aider, parce qu'avec toi j'ai vraiment l'impression de parler à un mur.
Peut être que quelqu'un d'autre prendra le relai. Moi je suis épuisé là.
J'admire ton flegme...
Bon, prenons le problème autrement !
Sérieusement, à part chercher les ennuis, je ne vois pas l'intérêt d'ouvrir une base de donnée de ton PC au monde entier - surtout sous windows.
Donc moi ce que je te propose, c'est de partager ton programme en deux :
1- l'applet contenant la partie affichage
2- une servlet dans un container Tomcat sur ton PC, qui dialogue avec l'applet en utilisant RMI ou en XML.
Pour que les autres se connectent chez toi, prends un nom chez dyndns.
Bien évidemment, tout serait beaucoup plus facile si la base était en MySQL et le programme en Php...
Merci :)
Mais tout à une fin ;)
Excellente remarque. C'est même pour ça que les hébergeurs, s'y opposent, comme tu le sais.
Sauras tu te faire entendre par notre ami kmeleon ? J'attends de voir.
RMI ? Faisable en effet, mais bon courage.... c'est toi qui assures le SAV hein ? ;)
Sinon pour le principe, oui ça serait mieux c'ets même souvent fait comme ça, mais tu vas voir qu'il va te dire que ça fait modifier/écrire trop de code ;)
Ah ça... ;)
you can check http://javaprovider.net really