我正在研究早些时候由其他人处理过的Java Web应用程序,此人刚刚向我提供了应用程序的源代码。问题是,如果我尝试做一些改变这个应用程序,并在Tomcat上部署(7.0.35)JSP中不会使我得到以下错误:JSP编译问题
此外,我注意到,这个welcome.jsp的类文件不会被创建。
我可以使应用程序工作的唯一方法是重新安装新版本的tomcat,然后构建,部署和访问原始源代码。当我构建并部署该代码并访问JSP时,它们会正确编译,并且还会在tomcat工作目录中创建.class和.java文件。
之后,我将所有更改都复制粘贴到原始源代码中,并重新部署修改的应用程序,因为在部署和访问原始应用程序后创建了与JSP页面对应的类和java文件,所以它工作正常。
此外,如果我尝试修改JSP,则会出现相同的错误。
我不知道这里出了什么问题。如果有人能帮我解决这个问题,那会很棒。我正在使用的JDK版本是1.6.0_38-b05。 Tomcat也指向相同的JDK版本,我的计算机上没有安装任何其他版本的JDK或JRE。
下面是代码:
<!DOCTYPE html>
<%@page import="com.xyz.toolkit.utils.FormConstant"%>
<%@page import="org.jasig.cas.client.util.AbstractCasFilter"%>
<%@page import="org.jasig.cas.client.validation.Assertion"%>
<%@page import="org.jasig.cas.client.util.AssertionHolder"%>
<%@page import="java.util.Iterator"%>
<%@page import="java.util.List"%>
<%@page import="java.util.Map"%>
<%@ taglib uri="/WEB-INF/tld/AccessValidateHandlerTag.tld" prefix="toolkit"%>
<html>
<head>
<title>ToolKit</title>
<meta http-equiv="Content-Type" content="text/html CHARSET=UTF-8" />
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />
<link href="css/jquery-ui-1.10.1.custom.css" type="text/css" rel="stylesheet" />
<link href="css/jquery.ui.tabs.css" type="text/css" rel="stylesheet" />
<link href="css/migration_toolkit.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="js/plugins/jquery-1.9.1.js"></script>
<script type="text/javascript" src="js/plugins/jquery.validate.js"></script>
<script type="text/javascript" src="js/plugins/jquery.dateFormat-1.0.js"></script>
<script type="text/javascript" src="js/plugins/jquery-ui-1.10.1.custom.js"> </script>
<script type="text/javascript" src="js/plugins/commons.js"></script>
<script type="text/javascript" src="js/login.js"></script>
<link href="css/jquery.jqplot.css" type="text/css" rel="stylesheet" />
<script type="text/javascript" src="js/plugins/jquery.jqplot.js"></script>
<script type="text/javascript" src="js/plugins/jquery.blockUI.js"></script>
<script type="text/javascript" src="js/plugins/jqplot.pieRenderer.js"></script>
</head>
<%
String roleAdmin = FormConstant.ROLE_ADMIN + "," + FormConstant.ROLE_ALL;
String roleUser = FormConstant.ROLE_USER + "," + FormConstant.ROLE_ALL;
%>
<body>
<jsp:include page="header.jsp" />
<div id="tabs">
<div style="padding-bottom: 10px;">
<div id="welcome_msg">
Welcome
<%=session.getAttribute(FormConstant.USER_NAME)%>
</div>
<div id="logoutBTN">
<button id="logoutButton" onclick="javascript:loadFeedBack();">Logout</button>
</div>
</div>
<div id="feedbackForm">
<form method="POST" action="logout" class="box tableBox">
<div class="form_field">
<div class="box_body">
Thank you for using the Migration Toolkit. Please enter
any feedback you may have and tell us how you would like us to
improve the user experience.
</div>
</div>
<p style="clear: both"></p>
<div class="form_field" class="box_body">
<div class="box_body">
<label for="projectName">User Name :</label> <input type="text"
value="<%=session.getAttribute(FormConstant.USER_NAME)%>"
disabled /> <input type="hidden" name="userName" id="userName"
value="<%=session.getAttribute(FormConstant.USER_NAME)%>" />
</div>
</div>
<p style="clear: both"></p>
<div class="form_field">
<div class="box_body">
<label for="projectName">User Feedback:</label>
<textarea id="userFeedBack" name="userFeedBack"
style="width: 450px; height:250px"></textarea>
<br>
</div>
</div>
<p style="clear: both"></p>
<div class="form_field">
<div class="box_body">
<label for="submitFeedback"> </label>
<button id="submitFeedback" type="submit" style="float: right;">Submit Feedback</button>
</div>
</div>
</form>
</div>
<ul>
<toolkit:AccessValidateHandlerTag group="<%=roleAdmin%>">
<li><a href="pages/generateRule.jsp">Review & Generate
Rulesets</a></li>
</toolkit:AccessValidateHandlerTag>
<toolkit:AccessValidateHandlerTag group="<%=roleUser%>">
<li><a href="pages/codeParser.jsp">Parse a Codebase</a></li>
<li><a href="pages/reportViewer.jsp">Generate Consolidated Report</a></li>
</toolkit:AccessValidateHandlerTag>
</ul>
</div>
<jsp:include page="footer.jsp" />
</body>
</html>
这里是Tomcat的配置:使用CATALINA_BASE:
"C:\Users\kinjal.doshi\Apache Software Foundation\Tomcat 7.0"
Using CATALINA_HOME: "C:\Users\kinjal.doshi\Apache Software Foundation\Tomcat 7.0"
Using CATALINA_TMPDIR: "C:\Users\kinjal.doshi\Apache Software Foundation\Tomcat 7.0\temp"
Using JRE_HOME: "C:\Program Files\Java\jdk1.6.0_38"
Using CLASSPATH: "C:\Users\kinjal.doshi\Apache Software Foundation\Tomcat 7.0\bin\bootstrap.jar;C:\Users\kinjal.doshi\Apache Software Foundation\Tomcat 7.0\bin\tomcat-juli.jar"
Using JAVA_OPTS: " -Djava.util.logging.config.file="C:\Users\kinjal.doshi\Apache Software Foundation\Tomcat 7.0\conf\logging.properties" -XX:PermSize=256m -XX:MaxPermSize=256m -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"
请问你可以把代码放在你的welcome.jsp – Simmant
可能你还没有将jsp jar文件保存在你的类路径中,请检查你的类路径中是否有该jar可用 –
你是如何实际部署的?建造?你有没有考虑把它建设成一场战争?你使用Maven或类似的工具? – eis