Notas de la version de Sun GlassFish Enterprise Server v3

El inicio de un cliente de aplicaciones puede dar lugar a un error ClassNotFound para la clase principal del cliente (Problema 11181)

Descripción

Se produce un problema cuando todas las condiciones siguientes son verdaderas:

Al intentar iniciar el cliente de aplicaciones se produce un fallo con el siguiente error debido a que un archivo generado en el servidor se encuentra en el directorio de servidor equivocado y sobrescribe otro archivo generado:


java.lang.ClassNotFoundException:(main-class-for-the-client)

Para obtener más información, consulte Informe del problema.

Solución provisional

Cambie el nombre del cliente de aplicaciones para que no sea myAppClient.jar . En concreto:

  1. Edite myApp/META-INF/application.xml para que la declaración del cliente sea <java>myClient.jar</java>. Tenga en cuenta que puede utilizar cualquier nombre que no sea myAppClient.jar.

  2. Cambie el nombre del directorio myApp/myAppClient_jar por myApp/myClient_jar. Tenga en cuenta que el nombre del subdirectorio del cliente debe ser el mismo que el URI del cliente de aplicaciones en el archivo application.xml, con el .jar sustituido por _jar.

  3. Implemente la aplicación:


    asadmin deploy --retrieve localdir myApp
    
  4. Ejecute el cliente de la aplicación:


    appclient -client localdir/myAppClient.jar