我有一个使用运行在本地PC上的Maven构建的Java应用程序。我使用Eclipse和Apache/Tomcat作为我的服务器。我在我的应用程序的两个项目:将Maven Java应用程序部署到Tomcat上的OpenShift 7
- 的Java代码(JavaApp)
- Web应用程序(Web应用程序)
在我的Web应用程序嘭我包括我的JavaApp作为一个依赖。使用Eclipse & Apache/Tomcat可以在本地服务器上正常运行。
我有一个OpenShift账户,并为Tomcat 7(JBoss EWS 2.0)创建了一个应用程序/弹药筒。使用Git我按照说明操作;
- 在我的本地Git上创建了OpenShift应用程序的克隆。
- 我从本地克隆中删除了SRC目录和pom.xml文件。
- 使用Maven我从我的WebApp项目创建了一个WAR文件。我通过查找WAR文件来验证我的JavaApp作为jar文件包含在WEB-INF/lib中。
- 我将我的WAR文件复制到克隆的webapps目录中。
- 我发布了git add。更新我的新文件。
- 我发布了git commit -m“更新的war文件”命令来提交更改
- 我发出了git push命令将我的应用程序推送到OpenShift。
我的cmd窗口报告推送是成功的。然后我去我的应用程序的URL,我得到的jsp错误。我的应用程序配置的方式,它先被引导到一个servlet,然后被引导到index.jsp。我附加了一个对象到页面来填充一些字段。错误是说JSP无法找到我的对象的任何方法。此应用程序在我的本地服务器上正常工作。我怀疑由于某种原因,我的WebApp的OpenShift部署找不到我的Java代码(请参阅下文)。
我不知道为什么我得到这个错误,任何帮助将不胜感激!
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred 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>
堆栈跟踪:
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.JspCompilationContext.compile(JspCompilationContext.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)