运行 JSP 的最少干扰方式
Least intrusive way of running JSP
我加入了一个使用 Java、Apache Tomcat、jBoss 构建的现有大型网络应用程序,作为前端人员来执行 Javascript工作;但不知何故发现自己正在构建新的 JSP 页面模板,以及可重复使用的标记文件。我正在学习模板语言,以前对 JSP 或 Java.
一无所知
如何确定我创建的 JSP 页面的路径以及如何在 Web 浏览器中解析它们并让它们与任何关联的标签、标签库等一起编译和显示。被使用了?
我的 JSP 个页面是这样的:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ include file="/WEB-INF/jsp/common.inc" %>
<%@ taglib prefix="ab" tagdir="/WEB-INF/tags" %>
<ab:cPage pageId="overview">
<jsp:body >
<div class="features-wrapper">
<div class="features-content">
<h1>${heading}</h1>
<h2>${subheading}</h2>
<c:forEach var="accessory" items="${page.accessories.content}" varStatus="status">
<c:choose>
<c:when test="${empty accessory}">
</c:when>
<c:otherwise>
<ab:modelAccessoryItem value="${accessory}"/>
</c:otherwise>
</c:choose>
</c:forEach>
</div>
</div>
</jsp:body>
</ab:cPage>
引用的标记文件存在并需要呈现,但所有其他变量目前只是占位符,在 JSP 之外的任何地方都不存在。当我开始编写针对这些页面的 SASS 和 JS 时,我只想能够在浏览器中看到我在做什么。
据我所知,没有办法在浏览器或类似的东西中简单地 运行 JSP。因此,您需要在您的工作站上部署一个简单的 JSP 服务器,您可以使用 URL 访问该服务器,例如 http://localhost:8080/
以查看内容。 Jetty
网络服务器支持 JSP 并且可能比 Tomcat
.
更易于测试配置
我建议您将现有项目导入 IDE,它可以处理在 Tomcat
或其他 Application Server
上部署 JSP 页面。然后您可以通过 http://serverurl:port/pathtojsp.jsp
访问这些页面。例如,看看 Eclipse Java EE
附带的内置 Tomcat
.
如果您只想快速测试 .jsp 页面,您也可以将文件放到:<Tomcat-installation-directory>/webapps/ROOT/
。这将确保您可以在没有 starting/restarting 和 Tomcat
.
的情况下查看 .jsp 文件
为了在您的应用中进行实际部署,您需要访问后端,尤其是控制器 类。模板本身与它们将为其呈现的 URL 没有任何内在关系。
这也意味着您需要对 Java 有一些了解,并且根据您的项目设置,您可能还需要在 XML 文件中进行一些修改以添加映射.
假设这是一个基于注解的项目,你需要这样写。
@Controller
public class IndexController {
@RequestMapping(value = {"/index"}, method = RequestMethod.GET)
// this method is mapped to http://example.com/index
public String handleRequest() {
return "welcome"; // this will autoload the file welcome.jsp when the url is called
}
}
我加入了一个使用 Java、Apache Tomcat、jBoss 构建的现有大型网络应用程序,作为前端人员来执行 Javascript工作;但不知何故发现自己正在构建新的 JSP 页面模板,以及可重复使用的标记文件。我正在学习模板语言,以前对 JSP 或 Java.
一无所知如何确定我创建的 JSP 页面的路径以及如何在 Web 浏览器中解析它们并让它们与任何关联的标签、标签库等一起编译和显示。被使用了?
我的 JSP 个页面是这样的:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ include file="/WEB-INF/jsp/common.inc" %>
<%@ taglib prefix="ab" tagdir="/WEB-INF/tags" %>
<ab:cPage pageId="overview">
<jsp:body >
<div class="features-wrapper">
<div class="features-content">
<h1>${heading}</h1>
<h2>${subheading}</h2>
<c:forEach var="accessory" items="${page.accessories.content}" varStatus="status">
<c:choose>
<c:when test="${empty accessory}">
</c:when>
<c:otherwise>
<ab:modelAccessoryItem value="${accessory}"/>
</c:otherwise>
</c:choose>
</c:forEach>
</div>
</div>
</jsp:body>
</ab:cPage>
引用的标记文件存在并需要呈现,但所有其他变量目前只是占位符,在 JSP 之外的任何地方都不存在。当我开始编写针对这些页面的 SASS 和 JS 时,我只想能够在浏览器中看到我在做什么。
据我所知,没有办法在浏览器或类似的东西中简单地 运行 JSP。因此,您需要在您的工作站上部署一个简单的 JSP 服务器,您可以使用 URL 访问该服务器,例如 http://localhost:8080/
以查看内容。 Jetty
网络服务器支持 JSP 并且可能比 Tomcat
.
我建议您将现有项目导入 IDE,它可以处理在 Tomcat
或其他 Application Server
上部署 JSP 页面。然后您可以通过 http://serverurl:port/pathtojsp.jsp
访问这些页面。例如,看看 Eclipse Java EE
附带的内置 Tomcat
.
如果您只想快速测试 .jsp 页面,您也可以将文件放到:<Tomcat-installation-directory>/webapps/ROOT/
。这将确保您可以在没有 starting/restarting 和 Tomcat
.
为了在您的应用中进行实际部署,您需要访问后端,尤其是控制器 类。模板本身与它们将为其呈现的 URL 没有任何内在关系。
这也意味着您需要对 Java 有一些了解,并且根据您的项目设置,您可能还需要在 XML 文件中进行一些修改以添加映射.
假设这是一个基于注解的项目,你需要这样写。
@Controller
public class IndexController {
@RequestMapping(value = {"/index"}, method = RequestMethod.GET)
// this method is mapped to http://example.com/index
public String handleRequest() {
return "welcome"; // this will autoload the file welcome.jsp when the url is called
}
}