Ocorre um problema quando todos os seguintes são verdadeiros:
O aplicativo é um EAR que contém um cliente app.
O EAR é implementado no diretório.
O EAR contém um módulo de aplicativo cliente myAppClient.jar , que, por ser uma implementação de diretório, é pré-expandida no myAppClient_jar. (Para o propósito deste exemplo, myApp é o nome do EAR. Este nome pode ser qualquer um).
As tentativas em iniciar o aplicativo cliente irá falhar com o seguinte erro porque um arquivo gerado no servidor é colocado no diretório errado do servidor e sobrescreve outro arquivo gerado:
java.lang.ClassNotFoundException:(main-class-for-the-client) |
Para obter mais informações, consulte o Relatório do problema.
Altere o nome do aplicativo cliente para que não seja myAppClient.jar . Especificamente:
Edite o myApp/META-INF/application.xml para que a declaração do cliente seja <java>myClient.jar</java>. Observe que você pode usar qualquer outro nome que não seja myAppClient.jar.
Renomeie o diretório myApp/myAppClient_jar para myApp/myClient_jar. Observe que o nome do subdiretório do cliente precisa ser o mesmo do URI do aplicativo cliente no arquivo application.xml , com o .jar substituído por _jar.
Implemente o aplicativo:
asadmin deploy --retrieve localdir myApp |
Execute o aplicativo cliente:
appclient -client localdir/myAppClient.jar |