2010-10-23 11 views
0

Je développe un projet web en utilisant Netbeans 6.9.1 et Glassfish 3.0.1.Netbeans, problème de déploiement de Glassfish

Tout allait bien jusqu'à ce que je réorganise un sesion bean en le renommant de "outboxSession" à "OutboxSession". Maintenant, le projet ne peut pas être déployé. J'ai essayé beaucoup de penser à redémarrer Glassfish, redémarrer Netbeans, redémarrer mon PC lui-même, supprimer le dossier construit dans mon projet et nettoyer et construire mon projet. Rien ne fonctionne. Enfin, j'ai supprimé le "OutboxSession" et essayé, mais pas de succès.

Mon projet peut être construit sans erreurs, mais lorsque vous essayez de déployer l'erreur NoClassFound est levée (par Glassfish). Veuillez me conseiller pour surmonter ce problème.

Bellow est la trace de la pile:

WARNING: Error in annotation processing: java.lang.NoClassDefFoundError: com/myproject/backing/pages/myaccount/outbox/outboxSession (wrong name: com/myproject/backing/pages/myaccount/outbox/OutboxSession) 
SEVERE: Exception while invoking class org.glassfish.ejb.startup.EjbDeployer load method 
java.lang.RuntimeException: Unable to load EJB module. DeploymentContext does not contain any EJB Check archive to ensure correct packaging for D:\Netbeans\myproject\build\web 
     at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:133) 
     at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:63) 
     at org.glassfish.internal.data.ModuleInfo.load(ModuleInfo.java:175) 
     at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:216) 
     at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:338) 
     at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:183) 
     at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:272) 
     at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:305) 
     at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:320) 
     at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1176) 
     at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$900(CommandRunnerImpl.java:83) 
     at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1235) 
     at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1224) 
     at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:365) 
     at com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:204) 
     at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:166) 
     at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:100) 
     at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:245) 
     at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791) 
     at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693) 
     at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954) 
     at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170) 
     at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135) 
     at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102) 
     at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88) 
     at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76) 
     at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53) 
     at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57) 
     at com.sun.grizzly.ContextTask.run(ContextTask.java:69) 
     at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330) 
     at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309) 
     at java.lang.Thread.run(Thread.java:619) 

SEVERE: Exception while loading the app 
java.lang.RuntimeException: Unable to load EJB module. DeploymentContext does not contain any EJB Check archive to ensure correct packaging for D:\Netbeans\myproject\build\web 
     at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:133) 
     at org.glassfish.ejb.startup.EjbDeployer.load(EjbDeployer.java:63) 
     at org.glassfish.internal.data.ModuleInfo.load(ModuleInfo.java:175) 
     at org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:216) 
     at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:338) 
     at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:183) 
     at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:272) 
     at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:305) 
     at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:320) 
+0

pouvez-vous poster trace entière de la pile? –

+0

J'ai posté le jeton de la trace de la pile – siva636

+0

Vous devriez publier votre stacktrace en éditant votre question. btw vérifier cela http://stackoverflow.com/questions/1617191/deploy-war-through-netbeans-onto-glassfish-v3-beta –

Répondre

0

Sons comme le haricot de la session de liaison n'a pas été mis à jour dans les sources. Je ne m'attendrais pas à cela car Netbeans est un produit assez mature. Si ce n'est pas le cas, vous avez peut-être rencontré un problème "Windows est sensible à la casse, Java est sensible à la casse", où une ressource est trouvée même si elle était avec l'ancienne orthographe.

Réfléchissez à quelque chose avec une orthographe différente et réessayez.

+0

J'ai cherché dans le projet en utilisant Netbeans " recherche dans la fonction "projet" et confirme que les ressources spécifiées ne sont pas utilisées dans mon projet maintenant. (le projet peut être construit sans erreurs) – siva636

0

Je pense que votre descripteur EJB n'a pas été mis à jour lors du refactoring. Le moyen le plus simple de résoudre ce problème, même si vous ne savez rien sur les fichiers descripteurs EJB, serait de rechercher dans votre répertoire de projet les fichiers contenant la chaîne "OutboxSession" et de les corriger manuellement dans les fichiers qui ont toujours ce nom.

Questions connexes