我需要使用 Jetty 编写一个 webapp。我的上下文路径是由外部决定的,并且会因一个客户而异。
这是正常的要求吗?
假设我有指向其他页面的链接、来自静态 JavaScript 文件的 AJAX 调用和来自静态 CSS 文件的图像引用,如何实现?推荐的项目结构是什么?
我可以在没有模板的情况下完成这个吗?(JSP)。
这是正常的要求吗?
是的。您的 webapp 中的任何内容都不应依赖于上下文路径的值。
支持任何上下文路径实际上非常简单:系统地将上下文路径添加到您的应用程序生成的每个 URL 中。
在 JSP 文件中,使用<c:url>
标签(或类似标签)来生成 URL。
在 JS 文件中,使用从 JSP 页面传递的 URL,或者使用在 JSP 文件中设置并包含上下文路径的全局变量来生成 URL。
在 Java 文件中,用于request.getContextPath()
获取上下文路径并将其添加到 URL。
在 CSS 文件中,使用相对路径。