2013-05-20 3 views
0

maintenant j'ai ce nouveau problème. J'utilise Glassfish 3.1.2.2 pour héberger une application qui a un service Web pour communiquer avec une autre application en dehors du serveur, principalement une application de bureau swing. Tout fonctionne bien, mais (toujours un), si nous avons besoin de redémarrer le glassfish pour une raison quelconque, l'application destop n'a pas trouvé le ws, nous devons donc redéployer l'application dans le Glassfish et tout fonctionne bien à nouveau. Au début, nous avons pensé que c'était un problème dans le client de bureau, donc nous avons actualisé la connexion au service Web, rien. Après cela, nous avons testé le service Web de l'option NetBeans pour le faire et nous obtenons cet avertissement:Service Web indisponible après le redémarrage Glassfish

enter image description here

La solution que nous avons trouvée était de redéployer l'application, comme vous invité, lorsque l'application sera en production, ce n'est pas une solution acceptable.

Mon application est construite avec jdk 7.0.21, en utilisant Netbeans 7.3, JSF 2.0, PrimeFaces 3.5, JPA 2.0, le service Web a été construit suite à cette tutorial.

Tel est le message reçu dans le journal de l'application de test de bureau:

Exception dans le thread "AWT-EventQueue-0" com.sun.xml.internal.ws.client.ClientTransportException: Le serveur code d'état HTTP envoyé 404: Introuvable at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.checkStatusCode (HttpTransportPipe.java:296) at com.sun.xml.internal.ws.transport. http.client.HttpTransportPipe.createResponsePacket (HttpTransportPipe.java:245) à com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.process (HttpTransportPipe.java:203) à com.sun.xml. entre nal.ws.transport.http.client.HttpTransportPipe.processRequest (HttpTransportPipe.java:122) à com.sun.xml.internal.ws.transport.DeferredTransportPipe.processRequest (DeferredTransportPipe.java:95) à com.sun. xml.internal.ws.api.pipe.Fiber .__ doRun (Fiber.java:626) à com.sun.xml.internal.ws.api.pipe.Fiber._doRun (Fibre.java:585) à com. sun.xml.internal.ws.api.pipe.Fiber.doRun (Fiber.java:570) à com.sun.xml.internal.ws.api.pipe.Fiber.runSync (Fiber.java:467) à com.sun.xml.internal.ws.client.Stub.process (Stub.java:308) à com.sun.xml.internal.ws.client.sei.SEIStub.doProcess (SEIStub.java:146) à com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke (SyncMethodHandler.java:98) at com.sun.xml.intern al.ws.client.sei.SyncMethodHandler.invoke (SyncMethodHandler.java:78) à com.sun.xml.internal.ws.client.sei.SEIStub.invoke (SEIStub.java:129) à com.sun. proxy. $ Proxy30.hello (Source inconnue) à com.spontecorp.testws.TestWSFrame.invokeWSButtonActionPerformed (TestWSFrame.java:137) à com.spontecorp.testws.TestWSFrame.access $ 100 (TestWSFrame.java:14) à com .spontecorp.testws.TestWSFrame $ 2.actionPerformed (TestWSFrame.java:62) à javax.swing.AbstractButton.fireActionPerformed (AbstractButton.java:2018) à javax.swing.AbstractButton $ Handler.actionPerformed (AbstractButton.java:2341) à javax.swing.DefaultButtonModel.fireActionPerformed (DefaultButtonModel.java:402) à javax.swing.DefaultButtonModel.setPress ed (DefaultButtonModel.java:259) à javax.swing.plaf.basic.BasicButtonListener.mouseReleased (BasicButtonListener.java:252) à java.awt.Component.processMouseEvent (Component.java:6505) à javax.swing. JComponent.processMouseEvent (JComponent.java: 3321) à java.awt.Component.processEvent (Component.java:6270) à java.awt.Container.processEvent (Container.java:2229) à java.awt.Component.dispatchEventImpl (Component.java: 4861) à java.awt.Container.dispatchEventImpl (Container.java:2287) à java.awt.Component.dispatchEvent (Component.java:4687) à java.awt.LightweightDispatcher.retargetMouseEvent (Container.java:4832) à java.awt.LightweightDispatcher.processMouseEvent (Container.java:4492) à java.awt.LightweightDispatcher.dispatchEvent (Container.java:4422) à java.awt.Container.dispatchEventImpl (Container.java:2273) à java.awt.Window.dispatchEventImpl (Window.java:2719) à java.awt.Component.dispatchEvent (Component.java:4687) à java.awt.EventQueue.dispatchEventImpl (EventQueue.java:729) à java.awt.EventQueue.access 200 $ (EventQueue.java:103) à java .awt.EventQueue $ 3.run (EventQueue.java:688) à java.awt.EventQueue $ 3.run (EventQueue.java:686) à java.security.AccessController.doPrivileged (méthode native) à java.security. ProtectionDomain $ 1.doIntersectionPrivilege (ProtectionDomain.java:76) à java.security.ProtectionDomain $ 1.doIntersectionPrivilege (ProtectionDomain.java:87) à java.awt.EventQueue 4.run $ (EventQueue.java:702) à java.awt .EventQueue $ 4.run (EventQueue.java:700) at java.security.AccessController.doPrivileged (Méthode native) à java.security.ProtectionDomain $ 1.doIntersectionPrivilege (ProtectionDomain.java:76) à java.awt.EventQueue.dispatchEvent (EventQueue.java:699) à java.awt.EventDispatchThread.pumpOneEventForFilters (EventDispatchThread.java:242) à java.awt.EventDispatchThread.pumpEventsForFilter (EventDispatchThread.java:161) à java.awt.EventDispatchThread.pumpEventsForHierarchy (EventDispatchThread.java:150) à java.awt.EventDispatchThread.pumpEvents (EventDispatchThread.java:146) à java .awt.EventDispatchThread.pumpEvents (EventDispatchThread.java:138) à java.awt.EventDispatchThread.run (EventDispatchThread.java:91)

Ma question est: - Dois-je configurer quelque chose dans Glassfish après le déploiement d'une application qui sert un service Web? Si oui, où?

Répondre

0

Avait le même problème après la réfraction, a dû créer un nouveau service web au serveur (et puis juste copier l'ancien code), après que j'ai ré-importé le nouveau WSDL et fait les bonnes modifications au code (à la nouvelle nom du webservice).

problème était, du moins pour moi, que, après refractoring je ne pouvais pas appeler

com.package.class.MyWebService_Service service; 

ne sais pas pourquoi, et il y a probablement une meilleure solution pour ce lieu de « recréation ».

+0

Je vais essayer cette solution aussi. Si je reçois une solution, je vous le ferai savoir –

0

Je ne sais pas si cela vous aide dans votre cas, mais au moins le tutorial ne fonctionnait pas pour moi, soit prêt à l'emploi. L'erreur que j'ai eu était la même: "com.sun.xml.internal.ws.client.ClientTransportException: The server sent HTTP status code 404: Not Found".

J'ai réussi à faire fonctionner le client de service Web en recréant la référence au service Web. Le problème était qu'il se référait à http://localhost:8080/FlowerAlbumService/FlowerService?wsdl mais le service fonctionnait sur http://localhost:8080/FlowerServiceService/FlowerService?wsdl (vous pouvez le voir par testing the web service).J'ai donc supprimé le service Web dans le nœud Références de service Web du client, créé un nouveau client de service Web et spécifié http://localhost:8080/FlowerServiceService/FlowerService?wsdl comme URL WSDL. Peut-être que cela aide aussi à résoudre votre problème.

+0

Ok, je vais essayer votre solution. Si je peux résoudre le problème, je l'afficherai ici. –

+0

J'ai vérifié et il y a une situation différente. Mon problème vient juste de redémarrer le serveur glassfish. –

Questions connexes