Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 7 sur 7
  1. #1
    Invité de passage
    Inscrit en
    décembre 2012
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 5
    Points : 0
    Points
    0

    Par défaut Page interactive entre clients

    Bonjour,

    Je vais commencer par vous faire un bref topo du contexte.
    Il s'agit ici d'un projet que je dois réaliser dans le cadre de mon école. Le but : développer une interface web de jeu de carte en ligne. J'utilise actuellement du J2EE (un modele Servlet, JavaBean, JSP). Le jeu en lui même est sensé être développé en html5. Ou du moins pas de client Java ou autre.

    Ma question ici est la suivante : Par quel moyen est il possible de développer une page web qui modifierai son affichage chez un client lorsqu'un autre client effectuerai une action (par exemple : un joueur joue une carte sur la table et son adversaire voit effectivement sa carte posée sur la table). Évidement il faudrait que cette action se fasse sans qu'un rafraîchissement de la page soit nécessaire.

    Je vous remercie d'avance de votre aide. Si vous avez besoin de d'avantage de précision, n'hésitez pas à m'en faire part.

  2. #2
    Membre régulier
    Homme Profil pro Guillaume Raimbault
    Sécurité
    Inscrit en
    février 2011
    Messages
    52
    Détails du profil
    Informations personnelles :
    Nom : Homme Guillaume Raimbault
    Âge : 26
    Localisation : France

    Informations professionnelles :
    Activité : Sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : février 2011
    Messages : 52
    Points : 82
    Points
    82

    Par défaut

    Bonjour Sylphide7,


    Le fait qu'il faille que se soit le serveur qui mette à jour l'affichage du client me fait penser à GWT.

    J'ai déjà eu à travailler sur un projet où on affichait sur une page le contenu d'une table d'une BDD. Sur cette même page on pouvait ajouter des données à la table. Après ajout, on (le serveur) ne rafraîchissait que le tableau affichant la table et non toute la page.

    Peut-être est-ce possible de faire un algo qui dise "pour tous les clients, je rafraichis la div 'tableAvecCartes'".
    Honnêtement je ne sais pas, renseigne toi, jette un oeil à GWT, lis la doc et tiens nous au courant

    Bon courage en tout cas !


    Graimbault

  3. #3
    Invité de passage
    Inscrit en
    décembre 2012
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    Merci de ton aide,
    Je vais essayer de me renseigner cette semaine.

  4. #4
    Invité de passage
    Inscrit en
    décembre 2012
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    Il semblerait que les WebSocket ou encore Ajax permettent de realiser ceci.
    Les WebSocket me semble plus adaptés cependant je n'ai aucune connaissance sur le sujet
    Quelqu'un aurait-il un lien vers un tutorial ou un cours?

  5. #5
    Responsable Développement Web

    Avatar de Bovino
    Homme Profil pro Didier Mouronval
    Développeur Web
    Inscrit en
    juin 2008
    Messages
    22 013
    Détails du profil
    Informations personnelles :
    Nom : Homme Didier Mouronval
    Âge : 44
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : juin 2008
    Messages : 22 013
    Points : 80 667
    Points
    80 667
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  6. #6
    Invité de passage
    Inscrit en
    décembre 2012
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    J'ai suivi pas mal d'exemple dont celui-ci : http://blog.zenika.com/index.php?pos...les-webSockets
    Mais j'ai toujours un probleme : Coté client, l'adresse du websocket est correctement rentrée lors de sa déclaration mais j'ai quand même l'erreur suivante dans la console de chrome : Unexpected response code: 500
    J'ai beau avoir chercher sur le net je n'ai pas trouvé la solution...

  7. #7
    Invité de passage
    Inscrit en
    décembre 2012
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : décembre 2012
    Messages : 5
    Points : 0
    Points
    0

    Par défaut

    Il semblerait que lorsque le navigateur essaie de créer le websocket, une erreur soit lancée coté serveur.
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    SEVERE: Servlet.service() for servlet [WebSocketConnection] in context with path [/BeardMan] threw exception
    java.lang.NullPointerException
    	at org.eclipse.jetty.websocket.WebSocketFactory.upgrade(WebSocketFactory.java:236)
    	at org.eclipse.jetty.websocket.WebSocketFactory.acceptWebSocket(WebSocketFactory.java:382)
    	at org.eclipse.jetty.websocket.WebSocketServlet.service(WebSocketServlet.java:104)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:931)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
    	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    	at java.lang.Thread.run(Unknown Source)

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •