He desarrollado una aplicación usando Netbeans con JSF, JPA y Primefaces y funciona bien en el servidor GlassFish. Yo quería implementar en el servidor Tomcat. He cambiado el servidor a través de propiedades, pero el proyecto no puede estar limpio y construido con éxito. ¿Cómo puedo cambiar el servidor correctamente?

Detalles :

Netbeans 7.3

GlassFish 3.1

Tomcat 7

Me abre el proyecto con Netbeans.
Haga clic derecho en el proyecto y el servidor GlassFish es seleccionado como el Servidor.
Clic con el botón derecho y seleccione Limpiar y Construir. Se trata de éxito.
Clic con el botón derecho y seleccione Ejecutar. Las aplicaciones web comienza a funcionar perfectamente.

Entonces dejé de GlassFish y Comenzó a Tomcat a través de Netbeans ventana de servidores.

La reparado hace clic en y seleccione Propiedades del Proyecto. Cambiado el servidor Tomcat.
Haga clic derecho y seleccione Limpiar y Construir
Y este error viene. No Dist creación de carpetas así.

La traza de la pila se enumeran a continuación.

An annotation processor threw an uncaught exception.
Consult the following stack trace for details.
java.lang.RuntimeException: com.sun.tools.javac.code.Symbol$CompletionFailure: class file for javax.faces.event.AjaxBehaviorEvent not found
at     org.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor.process(CanonicalModelProcessor.java:407)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.callProcessor(JavacProcessingEnvironment.java:793)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:722)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.access$1700(JavacProcessingEnvironment.java:97)
at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.run(JavacProcessingEnvironment.java:1029)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1163)
at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1108)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:824)
at com.sun.tools.javac.main.Main.compile(Main.java:439)
at com.sun.tools.javac.main.Main.compile(Main.java:353)
at com.sun.tools.javac.main.Main.compile(Main.java:342)
at com.sun.tools.javac.main.Main.compile(Main.java:333)
at com.sun.tools.javac.Main.compile(Main.java:76)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.apache.tools.ant.taskdefs.compilers.Javac13.execute(Javac13.java:56)
at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:1153)
at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:930)
at org.netbeans.modules.java.source.ant.JavacTask.execute(JavacTask.java:145)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
at sun.reflect.GeneratedMethodAccessor89.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
at sun.reflect.GeneratedMethodAccessor89.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.MacroInstance.execute(MacroInstance.java:398)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
at sun.reflect.GeneratedMethodAccessor89.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:392)
at org.apache.tools.ant.Target.performTasks(Target.java:413)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
at org.apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.java:283)
at org.apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.java:541)
at org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:153)
Caused by: com.sun.tools.javac.code.Symbol$CompletionFailure: class file for javax.faces.event.AjaxBehaviorEvent not found
C:\Users\Buddhika\Documents\ho\HealthOffice\nbproject\build-impl.xml:887: The following error occurred while executing this line:
C:\Users\Buddhika\Documents\ho\HealthOffice\nbproject\build-impl.xml:309: Compile failed; see the compiler error output for details.
BUILD FAILED (total time: 2 seconds)

2 Comentarios

  1. 8

    Glassfish es un completo Java EE servidor de aplicaciones web y barcos, entre otros JSF ya incluido. Tomcat es un barebone JSP/Servlet container y no llega con algo de Java EE incluido. Al implementar una aplicación web JSF para Tomcat, el promotor está obligado a proporcionar el JSF las bibliotecas en la webapp del /WEB-INF/lib o Tomcat /lib por sí mismo.

    Esta excepción, que está tratando de decir que no puede encontrar una JSF-clase específica con el fin de compilar el código, indica que no ha hecho. Descargar JSF 2.x y la caída de la javax.faces.jar archivo en la webapp del /WEB-INF/lib o Tomcat /lib y usted debe estar todo listo.

    • He descargado javax.faces-2.1.14.jar y ponerlo en la carpeta lib del servidor Tomcat y se reinicia el servidor. El mismo error que antes. Entonces me quedé con el frasco en que carpeta lib, pero añade el mismo archivo a través de las propiedades del proyecto. Que permitió que varios errores en las clases existentes, por ejemplo, los siguientes importaciones no fueron reconocidos. import javax.la persistencia.EntityManager; import javax.la persistencia.Consulta; import javax.la persistencia.TemporalType; import javax.la persistencia.TypedQuery;
    • Así que tu problema inicial se ha resuelto y se avanza hasta el siguiente problema. Las clases son de JPA. Este es también que no venían en Tomcat. Tendrás que instalar JPA en Tomcat ti mismo. ¿Por qué se cae detrás de Glassfish para Tomcat, sin considerar siquiera si Tomcat en realidad apoya su webapp? No puede usted mejor considerar TomEE?
    • Muchas gracias. Sí, yo podría seguir con la configuración de Tomcat con JPA así como usted ordenó. He reconsiderado a seguir con GlassFish. Yo sólo quería ir a Tomcat como el proveedor de hosting virtual me dio un plan de hosting con Tomcat. Así que a pesar de que voy a seguir para GlassFish y voy a buscar un servidor virtual de proveedor que ha GlassFish hosting. Como no estaba libremente disponible, a pesar de ir a Tomcat. Tampoco he oído hablar de TomEE, pero ahora va a leer en que para mi conocimiento, sin embargo, como Usted dijo, no tengo ninguna razón para dejar de GlassFish. Gracias de nuevo por tu esfuerzo a explicar todo.
  2. 0

    P: pero el proyecto no puede estar limpio y construido con éxito.

    Una: El mensaje de error indica un tiempo de ejecución error, ¿no?

    P: Exactamente ¿qué está fallando? Tomcat? Tratando de compilar el .la guerra? Simplemente tratando de abrir en su IDE?

    P: Si compilador, entonces ¿cómo estás compilando? De su IDE? A partir de una HORMIGA script? Algo más?

    Q: ¿estás usando un IDE? ¿Qué tipo (por ejemplo, Netbeans) y qué versión?

    P: ¿Qué plataforma?

    TAMBIÉN:

    Ver si este enlace puede ser aplicable:

    • Editado para Añadir los detalles que usted solicite a la pregunta. Gracias
    • Esta no es una respuesta en absoluto. Esto es más apropiado como un comentario sobre la cuestión.
    • Ariyaratne – gracias por su actualización. Por favor, lea mi enlace, y por favor, asegúrese de instalar el JSF (la causa del mensaje de error que has publicado). Y cualquier otro elemento que podría ser falta de Tomcat. Este enlace también puede ayudar a: uaihebert.com/?p=1440 Buena suerte!
    • Gracias. Que configuración me parece muy complejo. Yo le pegó con GlassFish. Yo solo quería a cambio de que el servidor virtual de proveedor que ofrece Tomcat como que ya la haya instalado. Pero Ellos no tienen GlassFish hosting. Voy a buscar un servicio de hosting con GlassFish. Gracias a todos
    • P: ¿no es posible instalar GlassFish en el proveedor de VPS?
    • No tengo experiencia en servidores virtuales, intentando por primera vez. Parece que los cargos son caros para GlassFish. Alguien con servidor Virtual comentar sobre eso.

Dejar respuesta

Please enter your comment!
Please enter your name here