Erro Deploy Aplicação glassfish 4

62 views
Skip to first unread message

Gustavo Menezes

unread,
Mar 7, 2016, 9:59:18 AM3/7/16
to javasf: JavaServer Faces Group
Boa tarde a todos!
Tenho um servidor centos 6, 64 bits, com o java 8 e estou tentando implantar uma aplicação no glassfish 4,
mas estou recebendo o seguinte erro:

[2016-03-07T11:54:48.816-0300] [glassfish 4.0] [SEVERE] [NCLS-CORE-00026] [javax.enterprise.system.core] [tid: _ThreadID=93 _ThreadName=AutoDeployer] [timeMillis: 1457362488816] [levelValue: 1000] [[
  Exception during lifecycle processing
java.io.FileNotFoundException: /usr/local/glassfish4/glassfish/domains/domain1/applications/Contuci-web/META-INF/MANIFEST.MF (Too many open files)
        at java.io.FileInputStream.open(Native Method)
        at java.io.FileInputStream.<init>(FileInputStream.java:146)
        at com.sun.enterprise.deploy.shared.FileArchive.getEntry(FileArchive.java:430)
        at com.sun.enterprise.deploy.shared.FileArchive.getManifest(FileArchive.java:474)
        at com.sun.enterprise.deployment.archivist.Archivist.openWith(Archivist.java:288)
        at com.sun.enterprise.deployment.archivist.ApplicationFactory.openWith(ApplicationFactory.java:232)
        at org.glassfish.javaee.core.deployment.DolProvider.processDOL(DolProvider.java:188)
        at org.glassfish.javaee.core.deployment.DolProvider.load(DolProvider.java:222)
        at org.glassfish.javaee.core.deployment.DolProvider.load(DolProvider.java:96)
        at com.sun.enterprise.v3.server.ApplicationLifecycle.loadDeployer(ApplicationLifecycle.java:878)
        at com.sun.enterprise.v3.server.ApplicationLifecycle.setupContainerInfos(ApplicationLifecycle.java:818)
        at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:374)
        at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
        at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
        at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:537)
        at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
        at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
        at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
        at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
        at org.glassfish.deployment.autodeploy.AutoOperation.run(AutoOperation.java:164)
        at org.glassfish.deployment.autodeploy.AutoDeployer.deploy(AutoDeployer.java:595)
        at org.glassfish.deployment.autodeploy.AutoDeployer.deployAll(AutoDeployer.java:482)
        at org.glassfish.deployment.autodeploy.AutoDeployer.run(AutoDeployer.java:410)
        at org.glassfish.deployment.autodeploy.AutoDeployer.run(AutoDeployer.java:401)
        at org.glassfish.deployment.autodeploy.AutoDeployService$1.run(AutoDeployService.java:233)
        at java.util.TimerThread.mainLoop(Timer.java:555)
        at java.util.TimerThread.run(Timer.java:505)
]]

[2016-03-07T11:54:48.820-0300] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core] [tid: _ThreadID=93 _ThreadName=AutoDeployer] [timeMillis: 1457362488820] [levelValue: 1000] [[
  Exception while deploying the app [Contuci-web] : /usr/local/glassfish4/glassfish/domains/domain1/applications/Contuci-web/META-INF/MANIFEST.MF (Too many open files)]]

[2016-03-07T11:54:48.840-0300] [glassfish 4.0] [WARNING] [NCLS-DEPLOYMENT-00036] [javax.enterprise.system.tools.deployment.autodeploy] [tid: _ThreadID=93 _ThreadName=AutoDeployer] [timeMillis: 1457362488840] [levelValue: 900] [[
  [AutoDeploy] Autodeploy failed : /usr/local/glassfish4/glassfish/domains/domain1/autodeploy/Contuci-web.war.]]


Já verifiquei a pasta META-INF e só contém o arquivo MANIFEST.MF

Alguém já passou por isso e sabe resolver?
Qualquer ajuda ficarei grato.

att.
Gustavo Menezes
Bacharel em Sistemas de Informação


Cássio Oliveira

unread,
Mar 7, 2016, 10:02:04 AM3/7/16
to jav...@googlegroups.com
Amigo, vc já tinha colocado essa pergunta por aqui e alguns de nós postamos algumas possíveis soluções. Algum motivo especial pra postar novamente?


---
-----------------------------------------------------------------------------------------------------------------
Cássio OliveiraAnálise e Desenvolvimento de Sistemas - IFPB Monteiro
Técnico em Informática - UEPB Monteiro
-----------------------------------------------------------------------------------------------------------------

--
Você recebeu essa mensagem porque está inscrito no grupo "javasf: JavaServer Faces Group" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para javasf+un...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/javasf.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/javasf/2497360b-4405-4007-b0a5-d71f41a16764%40googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Gustavo Menezes

unread,
Mar 8, 2016, 3:51:50 PM3/8/16
to javasf: JavaServer Faces Group
Desculpa Cássio!
Antes a aplicação dava erro e não implantava,
acusava o erro do MANIFEST. too many open files

Depois que segui suas instruções,
o glassfish implanta a aplicação, mas quando vou acessar a aplicação http://meuIp:8080/MinhaAplicacao
ele dá o seguinte erro:

[2016-03-08T17:40:34.873-0300] [glassfish 4.0] [WARNING] [] [javax.enterprise.web] [tid: _ThreadID=20 _ThreadName=http-listener-1(3)] [timeMillis: 1457469634873] [levelValue: 900] [[
  StandardWrapperValve[Faces Servlet]: Servlet.service() for servlet Faces Servlet threw exception
org.apache.jasper.JasperException: PWC6345: There is an error in invoking javac.  A full JDK (not just JRE) is required

já rodei alguns comandos pra verificar a JVM instalada
segue resultados:

[root@mercurio /]# pwd
/
[root@mercurio /]# java -version
java version "1.7.0_95"
OpenJDK Runtime Environment (rhel-2.6.4.0.el6_7-x86_64 u95-b00)
OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)
[root@mercurio /]#
[root@mercurio /]# pwd
/
[root@mercurio /]# javac -version
javac 1.7.0_79
[root@mercurio /]#

Se eu entendi direito o glassfish ao invés de procurar a JDK está procurando a JRE,
existe alguma configuração adicional que preciso fazer no glassfish ou no centos pra ele procurar o JDK?

Cássio Oliveira

unread,
Mar 8, 2016, 8:09:05 PM3/8/16
to jav...@googlegroups.com
Veja, não uso OpenJDK e não sei se pode ser ele mas tentei usar antigamente e tive problemas, por isso recomendo usar o Java da Oracle, a menos que seja opção sua, aí pode-se procurar outro motivo para o problema. Se quiser ver mais detalhes sobre como instalar, veja esse vídeo que fiz: https://www.youtube.com/watch?v=xoOCKco3Qyc

Acho que citei no vídeo mas o ideal é que você desinstale o OpenJDK antes com o comando:

sudo apt-get remove OpenJDK*


---
-----------------------------------------------------------------------------------------------------------------
Cássio OliveiraAnálise e Desenvolvimento de Sistemas - IFPB Monteiro
Técnico em Informática - UEPB Monteiro
-----------------------------------------------------------------------------------------------------------------

--
Você recebeu essa mensagem porque está inscrito no grupo "javasf: JavaServer Faces Group" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para javasf+un...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/javasf.

Gustavo Menezes

unread,
Mar 15, 2016, 2:07:54 PM3/15/16
to javasf: JavaServer Faces Group
Boa tarde a todos!

Estou com mais um problema no deploy do glassfish4
agora ele me retorna o  erro abaixo e não implanta a aplicação



  An unexpected exception occurred.
java.lang.RuntimeException: java.lang.NullPointerException
        at org.glassfish.deployment.admin.DeployCommand.preAuthorization(DeployCommand.java:314)
        at com.sun.enterprise.admin.util.CommandSecurityChecker$1.run(CommandSecurityChecker.java:187)
        at com.sun.enterprise.admin.util.CommandSecurityChecker$1.run(CommandSecurityChecker.java:183)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:356)
        at com.sun.enterprise.admin.util.CommandSecurityChecker.authorize(CommandSecurityChecker.java:183)
        at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1203)

        at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
        at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
        at org.glassfish.deployment.autodeploy.AutoOperation.run(AutoOperation.java:164)
        at org.glassfish.deployment.autodeploy.AutoDeployer.deploy(AutoDeployer.java:595)
        at org.glassfish.deployment.autodeploy.AutoDeployer.deployAll(AutoDeployer.java:482)
        at org.glassfish.deployment.autodeploy.AutoDeployer.run(AutoDeployer.java:410)
        at org.glassfish.deployment.autodeploy.AutoDeployer.run(AutoDeployer.java:401)
        at org.glassfish.deployment.autodeploy.AutoDeployService$1.run(AutoDeployService.java:233)
        at java.util.TimerThread.mainLoop(Timer.java:555)
        at java.util.TimerThread.run(Timer.java:505)
Caused by: java.lang.NullPointerException
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive$ArchiveJarEntrySource.<init>(InputJarArchive.java:581)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive$ArchiveJarEntrySource.<init>(InputJarArchive.java:573)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive.createEntryEnumeration(InputJarArchive.java:451)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive.entries(InputJarArchive.java:203)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive.access$100(InputJarArchive.java:74)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive$1.enumeration(InputJarArchive.java:166)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive$CollectionWrappedEnumeration.<init>(InputJarArchive.java:724)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive.getDirectories(InputJarArchive.java:161)
        at org.glassfish.javaee.full.deployment.EarDetector.isEARFromIntrospecting(EarDetector.java:142)
        at org.glassfish.javaee.full.deployment.EarDetector.handles(EarDetector.java:110)
        at com.sun.enterprise.v3.server.ApplicationLifecycle.getArchiveHandler(ApplicationLifecycle.java:211)
        at org.glassfish.deployment.admin.DeployCommand.preAuthorization(DeployCommand.java:246)
        ... 16 more

Cássio Oliveira

unread,
Mar 15, 2016, 2:57:03 PM3/15/16
to jav...@googlegroups.com

Em 15 de março de 2016 15:07, Gustavo Menezes <gustavodefr...@gmail.com> escreveu:
JarArchive$ArchiveJarEntrySource.<init>(InputJarArchive.java:581)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive$ArchiveJarEntrySource.<init>(InputJarArchive.java:573)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive.createEntryEnumeration(InputJarArchive.java:451)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive.entries(InputJarArchive.java:203)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive.access$100(InputJarArchive.java:74)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive$1.enumeration(InputJarArchive.java:166)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive$CollectionWrappedEnumeration.<init>(InputJarArchive.java:724)
        at com.sun.enterprise.deployment.deploy.shared.InputJarArchive.getDirectories(InputJarArchive.java:161)
        at org.glassfish.javaee.full.deployment.EarDetector.isEARFromIntrospecting(EarDetector.java:142)
        at org.glassfish.javaee.full.deployment.EarDetector.handles(EarDetector.java:110)
        at com.sun.enterprise.v3.server.ApplicationLifecycle.getArchiveHandler(ApplicationLifecycle.java:211)
        at org.glassfish.deployment.admin.DeployCommand.preAuthorization(DeployCommand.java:246)


Como estão as permissões da pasta de instalação do glassfish? O usuário que estiver utilizando tem que ter acesso total a todas as pastas e arquivos da instalação, principalmente ao arquivo domains/domain1/config/domain.xml

Gustavo Menezes

unread,
Mar 16, 2016, 7:56:23 AM3/16/16
to javasf: JavaServer Faces Group
Bom dia Cassio!
Ele deu esse erro porque eu abri o .war com o winrar e alterei o hibernate.cfg para o jdbc/aplicacao - antes apontava pro banco de producao (com ip, usuário, senha, etc).
Fiz isso pra poder colocar o mesmo .war em ambiente de teste e producao

Em suma, depois desta alteração ele começou a dar este erro de MALFORMED,
eu criei novamente o .war - a partir do eclipse - e o erro desapareceu.

Acredito que tenha sido algum bug devido a alteração que fiz
Reply all
Reply to author
Forward
0 new messages