在 Spring MVC 服务器中找到 JSP 页面以在 jQuery 的加载方法中使用
Find JSP page in Spring MVC server to use in load method from jQuery
目前我的 Spring MVC 服务器基本上是这样组织的:
src/main/java <-- Java classes containing Controllers, Entities and etc
src/test/java <-- For JUnit tests
src/main/webapp/resources <-- includes CSS, images and all Javascript files
src/main/webapp/WEB-INF/views <-- includes all JSP files
Spring 配置为使用此 ViewResolver:
<beans:bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<beans:property name="prefix" value="/WEB-INF/views/" />
<beans:property name="suffix" value=".jsp" />
</beans:bean>
我正在处理的 JSP 文件放在项目中的这个路径上:MyProject\src\main\webapp\WEB-INF\views\treino\formulario1.jsp
我在这个 jsp 中开发了一个 JavaScript 代码(暂时的,因为它稍后会移到 resources/js/
),我正在调用 load()
方法jQuery 以与此相同的路径加载另一个 JSP 页面。
以下是我尝试过的一些路径组合,但所有组合都在浏览器中出现 404 错误:
$('#test').load('../WEB-INF/views/treino/formulario2.jsp');
$('#test').load('/MyProject/WEB-INF/views/treino/formulario2.jsp');
$('#test').load('formulario2.jsp');
只是一个信息,在同一个 JSP 文件中,我可以像这样导入资源:
<script src="../resources/js/bootstrap/bootstrap.min.js"></script>
如何获得此 JSP 的正确路径?
在我看来,您正在尝试从 javascript 加载 JSP。
Javascript 在客户端执行。并且 JSP 在服务器端。您不能通过这样的相对路径让 Javascript 客户端代码加载 JSP。
要让 Javascript 代码加载视图,您需要该 JS 代码对映射 URL 的控制器进行 Ajax 调用,该控制器将为 JSP (需要 JSP)作为视图。
例如。从 formulario2.jsp
加载内容
- 写一个控制器映射到 URL /formulario
- 控制器/formulario 应该return 视图formulario2.jsp
- Javascript 应该对 /formulario 进行 Ajax 调用,这将 return formulario2.jsp.
的内容
AJax 调用 /formulario 应该 return formulario2.jsp 视图。
目前我的 Spring MVC 服务器基本上是这样组织的:
src/main/java <-- Java classes containing Controllers, Entities and etc
src/test/java <-- For JUnit tests
src/main/webapp/resources <-- includes CSS, images and all Javascript files
src/main/webapp/WEB-INF/views <-- includes all JSP files
Spring 配置为使用此 ViewResolver:
<beans:bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<beans:property name="prefix" value="/WEB-INF/views/" />
<beans:property name="suffix" value=".jsp" />
</beans:bean>
我正在处理的 JSP 文件放在项目中的这个路径上:MyProject\src\main\webapp\WEB-INF\views\treino\formulario1.jsp
我在这个 jsp 中开发了一个 JavaScript 代码(暂时的,因为它稍后会移到 resources/js/
),我正在调用 load()
方法jQuery 以与此相同的路径加载另一个 JSP 页面。
以下是我尝试过的一些路径组合,但所有组合都在浏览器中出现 404 错误:
$('#test').load('../WEB-INF/views/treino/formulario2.jsp');
$('#test').load('/MyProject/WEB-INF/views/treino/formulario2.jsp');
$('#test').load('formulario2.jsp');
只是一个信息,在同一个 JSP 文件中,我可以像这样导入资源:
<script src="../resources/js/bootstrap/bootstrap.min.js"></script>
如何获得此 JSP 的正确路径?
在我看来,您正在尝试从 javascript 加载 JSP。
Javascript 在客户端执行。并且 JSP 在服务器端。您不能通过这样的相对路径让 Javascript 客户端代码加载 JSP。
要让 Javascript 代码加载视图,您需要该 JS 代码对映射 URL 的控制器进行 Ajax 调用,该控制器将为 JSP (需要 JSP)作为视图。
例如。从 formulario2.jsp
加载内容- 写一个控制器映射到 URL /formulario
- 控制器/formulario 应该return 视图formulario2.jsp
- Javascript 应该对 /formulario 进行 Ajax 调用,这将 return formulario2.jsp. 的内容
AJax 调用 /formulario 应该 return formulario2.jsp 视图。