Implementación de la aplicación Maven Java en OpenShift en Tomcat 7

Tengo una aplicación Java desarrollada con Maven en mi PC local. Estoy usando Eclipse y Apache / Tomcat para mi server. Tengo dos proyectos en mi aplicación:

  1. El código de Java (JavaApp)
  2. La aplicación web (aplicación web)

En mi WebApp Pom, incluyo mi JavaApp como una dependencia. Esto funciona bien en mi server local con Eclipse & Apache / Tomcat.

Tengo una count de OpenShift y he creado una Aplicación / Cartucho para Tomcat 7 (JBoss EWS 2.0). Usando Git, me siguieron las instrucciones y;

  1. Creé un clon de la aplicación OpenShift en mi Git local.
  2. Eliminé el directory SRC y el file pom.xml del clon local.
  3. Usando Maven, creé un file WAR de mi proyecto de WebApp. Verifiqué buscando en el file WAR que mi JavaApp está incluida en WEB-INF / lib como un file jar.
  4. Copié mi file WAR en el directory webapps del clon.
  5. Publiqué el git add. para actualizar mis nuevos files
  6. Publiqué el command git commit -m "updated war file" para confirmar los cambios
  7. Emití el command git push para enviar mi aplicación a OpenShift.

La window de mi cmd informa que el empujón fue un éxito. Luego voy a la URL de mi aplicación y obtengo errores jsp. La forma en que se configura mi aplicación va primero a un servlet antes de ser dirigida a index.jsp. He adjuntado un object a la página para llenar algunos campos. Los errores dicen que el JSP no puede encontrar ninguno de los methods de mi object. Esta aplicación funciona bien en mi server local. Sospecho que, por alguna razón, la implementación de OpenShift de mi WebApp no ​​puede encontrar mi código Java (ver más abajo).

No entiendo por qué estoy recibiendo este error, ¡cualquier ayuda sería apreciada!

org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurnetworking at line: 8 in the jsp file: /index.jsp The method getLastLocationSearched() is undefined for the type WelcomePageBean 5: <head> 6: <%@ page import ="org.williards.core.client.beans.WelcomePageBean" %> 7: <% WelcomePageBean pageBean = (WelcomePageBean) request.getAttribute("pageBean"); %> 8: <% if(pageBean.getLastLocationSearched() != null){ %> 9: <script> 10: var lastSearchLocation = <%= pageBean.getLastLocationSearched() %>; 11: </script> 

Stacktrace:

 org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92) org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330) org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:451) org.apache.jasper.compiler.Compiler.compile(Compiler.java:356) org.apache.jasper.compiler.Compiler.compile(Compiler.java:334) org.apache.jasper.compiler.Compiler.compile(Compiler.java:321) org.apache.jasper.JspComstacktionContext.compile(JspComstacktionContext.java:592) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) javax.servlet.http.HttpServlet.service(HttpServlet.java:723) org.williards.core.servlets.WelcomeServlet.pageNavigation(WelcomeServlet.java:26) org.williards.core.servlets.AbstractServlet.doGet(AbstractServlet.java:49) javax.servlet.http.HttpServlet.service(HttpServlet.java:617) javax.servlet.http.HttpServlet.service(HttpServlet.java:723) 

mi primera pregunta sería si tu guerra (me refiero a la guerra como implementada en OpenShift, no la fuente) funciona localmente. Sospecho que tu guerra no contiene todas las dependencies. Para funcionar correctamente en OpenShift, debe asegurarse de que OpenShift tenga todas las dependencies. Cuando se despliega como una guerra, puede agregar tarros de terceros a

src/main/webapp/WEB-INF/lib

La otra opción es implementar a través de la fuente que le permite indicar dependencies a través de pom.

Puede ver todos los detalles en el siguiente artículo de OpenShift kb: https://developers.openshift.com/es/tomcat-dependencies.html