Erreur de déploiement d'EAR sous Weblogic 8.1

Erreur de déploiement d'EAR sous Weblogic 8.1 - Java - Programmation

Marsh Posté le 18-02-2005 à 12:05:00    

Bonjour tout le monde
 
En essayant de déployer des EAR sous WebLogic, j'obtiens l'erreur suivante    
à laquelle je ne comprends absolument rien. (En effet, je suis encore débutant dans l'administration de WebLogic) :
 
Compiler failed executable.exec
at weblogic.ejb20.ejbc.EJBCompiler.doCompile(EJBCompiler.java:274)
at weblogic.ejb20.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:476)
 
 
J'en appelle aux bonnes volontés qui pourront m'aider
 
Merci d'avance  :jap:

Reply

Marsh Posté le 18-02-2005 à 12:05:00   

Reply

Marsh Posté le 19-02-2005 à 00:03:51    

ejbc est le "compilateur" d'EJB de weblogic
Un EJB de base de type Session Stateless ou Stateful est composé de 2 interfaces (home et remote) , d'une classe de bean, d'un descripteur normalisé ejb-jar.xml et d'un descripteur spécifique ici weblogic-ejb-jar.xml. Le tout packagé dans un jar.  
 
Si pour un développeur le travail de dev d'un EJB s'arrête là, le serveur d'EJB a encore du boulot pour pouvoir le déployer. Il doit générer du code et le compiler notamment pour obtenir les stubs et les skeletons nécessaires pour que l'EJB puisse être utilisé à distance via RMI. Mais pour que cela marche il faut que l'EJB soit cohérent.
 
La plupart des IDE sont capables de générer et compiler toutes ces classes lors de la générations des EJB ce qui permet de se rendre compte d'un problème avant le déploiement sur le serveur.
 
donne nous l'erreur complète parce que là c'est un peu juste pour voir ce qui pose problème

Reply

Marsh Posté le 21-02-2005 à 14:04:16    

 
Ca marche : j'ai trouvé l'erreur !!  :pt1cable:  
 
J'écris donc ce message afin que cela puisse un jour servir à quelqu'un.
 
L'installation de mon bien aimé weblogic se composait d'un serveur d'admin, d'un "node manager" et deux instances de serveurs (serv1 et serv2).  
En farfouillant dans les logs de l'un de mes serveurs (serv1 en l'occurence), j'ai trouvé l'erreur suivante
 
 
"java.io.IOException: Not enough space
 at java.lang.UNIXProcess.forkAndExec(Native Method)
 at java.lang.UNIXProcess.<init>(UNIXProcess.java:52)
 at java.lang.Runtime.execInternal(Native Method)
 at java.lang.Runtime.exec(Runtime.java:566)
 at java.lang.Runtime.exec(Runtime.java:491)
 at java.lang.Runtime.exec(Runtime.java:457)
 at weblogic.utils.Executable.exec(Executable.java:227)
 at weblogic.utils.Executable.exec(Executable.java:156)
 at weblogic.utils.Executable.exec(Executable.java:142)
 at weblogic.utils.compiler.CompilerInvoker.execCompiler(CompilerInvoker.java:249)
 at weblogic.utils.compiler.CompilerInvoker.compileMaybeExit(CompilerInvoker.java:428)
 at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:329)
 at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:337)
 at weblogic.ejb20.ejbc.EJBCompiler.doCompile(EJBCompiler.java:270)
 at weblogic.ejb20.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:476)
 at weblogic.ejb20.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:407)
 at weblogic.ejb20.deployer.EJBDeployer.runEJBC(EJBDeployer.java:493)
 at weblogic.ejb20.deployer.EJBDeployer.compileJar(EJBDeployer.java:763)
 at weblogic.ejb20.deployer.EJBDeployer.compileIfNecessary(EJBDeployer.java:701)
 at weblogic.ejb20.deployer.EJBDeployer.prepare(EJBDeployer.java:1277)
 at weblogic.ejb20.deployer.EJBModule.prepare(EJBModule.java:477)
 at weblogic.j2ee.J2EEApplicationContainer.prepareModule(J2EEApplicationContainer.java:2962)
 at weblogic.j2ee.J2EEApplicationContainer.prepareModules(J2EEApplicationContainer.java:1534)
 at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1188)
 at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1031)
 at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.prepareContainer(SlaveDeployer.java:2602)
 at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.createContainer(SlaveDeployer.java:2552)
 at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(SlaveDeployer.java:2474)
 at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:798)
 at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDeployer.java:507)
 at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:465)
 at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:25)
 at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
 at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)"
 
 
Conclusion : pas assez de RAM  :pfff:  
 
Donc, le conseil (si cela en est un) est de regarder les logs de tous les serveurs.
Pour les serveurs gérés par un "nodemanager", il suffit d'aller dans le répertoires <rep>/weblogic81/common/nodemanager/<nom du serveur>
 
Voilà, je remercie Spiman pour son aide :jap:  
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed