Erro deploy glassfish 4

47 views
Skip to first unread message

Gustavo Menezes

unread,
Mar 3, 2016, 3:54:43 PM3/3/16
to javasf: JavaServer Faces Group
Boa tarde a todos!
Estou tentando fazer deploy de uma aplicação, mas ela me apresente o seguinte erro:

[2016-03-03T17:39:53.443-0300] [glassfish 4.0] [SEVERE] [NCLS-CORE-00026] [javax.enterprise.system.core] [tid: _ThreadID=92 _ThreadName=AutoDeployer] [timeMillis: 1457037593443] [levelValue: 1000] [[
  Exception during lifecycle processing
java.io.FileNotFoundException: /usr/local/glassfish4/glassfish/domains/domain1/applications/Transporte-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-03T17:39:53.458-0300] [glassfish 4.0] [SEVERE] [] [javax.enterprise.system.core] [tid: _ThreadID=92 _ThreadName=AutoDeployer] [timeMillis: 1457037593458] [levelValue: 1000] [[
  Exception while deploying the app [Transporte-web] : /usr/local/glassfish4/glassfish/domains/domain1/applications/Transporte-web/META-INF/MANIFEST.MF (Too many open files)]]

[2016-03-03T17:39:53.514-0300] [glassfish 4.0] [WARNING] [NCLS-DEPLOYMENT-00036] [javax.enterprise.system.tools.deployment.autodeploy] [tid: _ThreadID=92 _ThreadName=AutoDeployer] [timeMillis: 1457037593514] [levelValue: 900] [[
  [AutoDeploy] Autodeploy failed : /usr/local/glassfish4/glassfish/domains/domain1/autodeploy/Transporte-web.war.]]

[2016-03-03T17:39:53.519-0300] [glassfish 4.0] [WARNING] [NCLS-DEPLOYMENT-00041] [javax.enterprise.system.tools.deployment.autodeploy] [tid: _ThreadID=92 _ThreadName=AutoDeployer] [timeMillis: 1457037593519] [levelValue: 900] [[
  Attempt to create file /usr/local/glassfish4/glassfish/domains/domain1/autodeploy/.autodeploystatus/Transporte-web.war failed; no further information.]]


Se alguém já passou por isso e puder me ajudar ficarei grato!
att,
Gustavo Menezes
Bacharel em Sistemas de Informação

Paulo Augusto de Almeida Ferreira

unread,
Mar 3, 2016, 10:58:19 PM3/3/16
to jav...@googlegroups.com
Amigo,

Too many open files é uma mensagem do linux.

Esses dois aqui devem te ajudar:

Em resumo: o usuário que esta rodando o seu processo java (glassfish) esta abrindo mais arquivos do que o permitido no SO.

Provavelmente esse glassfish tem vários deploys ou tem vários processos rodando no mesmo usuário do glassfish.

Abraços.

--
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/a5e54c46-840c-4046-b731-63a1d4000d65%40googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Cássio Oliveira

unread,
Mar 3, 2016, 11:38:58 PM3/3/16
to jav...@googlegroups.com
Eu já e quando acontece isso, eu adiciono novas aplicações diretamente pelo arquivo glassfish/domains/domain1/config/domain.xml. Dentro desse arquivo procure pla tag <resources> e antes dela fechar COM , você pode adicionar:

<jdbc-connection-pool datasource-classname="org.postgresql.ds.PGSimpleDataSource" name="NOMEDOPOOOLDECONEXOES" res-type="javax.sql.DataSource">
      <property name="User" value="USUARIO"></property>
      <property name="Password" value="SENHA"></property>
      <property name="DatabaseName" value="NOMEDOBANCO"></property>
      <property name="ServerName" value="localhost"></property>
      <property name="PortNumber" value="PORTADOBANCO"></property>
    </jdbc-connection-pool>
    <jdbc-resource pool-name="NOMEDOPOOOLDECONEXOES" jndi-name="jdbc/NOMEJNDI"></jdbc-resource>

Alí no final onde tem o NOMEJNDI, geralmente se coloca no nome da aplicação, ex: "jdbc/desmasist", mas vc já deve ter feito pela interface e sabe o que colocar.

Logo após fechar a tag </resources>, vai ter a abertura de outra chamada <servers> e vai estar mais ou menos assim:

<servers>
    <server config-ref="server-config" name="server">
      <application-ref ref="__admingui" virtual-servers="__asadmin"></application-ref>
      <resource-ref ref="jdbc/__TimerPool"></resource-ref>
      <resource-ref ref="jdbc/__default"></resource-ref>
      <resource-ref ref="jdbc/sample"></resource-ref>
      <resource-ref ref="jms/__defaultConnectionFactory"></resource-ref>
      <resource-ref ref="concurrent/__defaultContextService"></resource-ref>
      <resource-ref ref="concurrent/__defaultManagedExecutorService"></resource-ref>
      <resource-ref ref="concurrent/__defaultManagedScheduledExecutorService"></resource-ref>
      <resource-ref ref="concurrent/__defaultManagedThreadFactory"></resource-ref>

      <resource-ref ref="jdbc/NOMEJNDI"></resource-ref>

    </server>
  </servers>

Veja que vc só vai alterar esse <resource-ref> e trocar essenome do recurso JDBC e essas coisas que tem antes podem ser diferentes aí já que se referem às configurações padrões do servidor. Depois disso, reinicie o glassfish, vá ao painel de administração e veja se essas configurações estarão lá. LEmbrando que o usuário atual precisa ter permissão total para ler e escrever no arquivo e se não tiver, toda vez que reiniciar o servidor, essas configurações são perdidas.

Paulo Augusto, grato pelos links e vou dar uma olhada depois pois podem me ajudar com isso também.




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

Cássio Oliveira

unread,
Mar 4, 2016, 12:04:18 AM3/4/16
to jav...@googlegroups.com
Ah e lembrando que isso aí só cria o Pool de conexões e o recurso JDBC, então a implantação é feita durante a execução do sistema pela IDE. Acredito que a implantação manual pelo .war dê erro também, mas pela IDE vai de boa.


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

Everton Fujimoto

unread,
Mar 4, 2016, 12:13:39 PM3/4/16
to jav...@googlegroups.com
Geralmente no glassfish isso é o cache... entra no console administrator dele e diminui a quantidade de arquivos no cache. 

Att.

Everton William Fujimoto
Tecnólogo em Processamento de Dados - Fatec-SO
Especialista em Gestão de Projetos de Software - IGTI
Mestrando em Administração - UFSC
OCAJP, OCPJP, OCEWCD, OCEWSD, OCEJPA, OCEEJB, OCEJSF, 1Z0-807, OCE SQL Expert

Gustavo Menezes

unread,
Mar 16, 2016, 8:07:40 AM3/16/16
to javasf: JavaServer Faces Group
Bom dia Everton!
Tentei achar dentro da console de administrador do glassfish o parâmetro pra configurar o cache, mas não encontrei,
Você poderia me ajudar a fazer esta configuração nos arquivos de cache?
Reply all
Reply to author
Forward
0 new messages