${pageContext.request.contextPath }获取不到值
时间: 2024-02-09 14:37:44 浏览: 120
${pageContext.request.contextPath}是JSP中获取应用上下文路径的方法,它应该可以获取到值。如果它获取不到值,可能是以下几个原因:
1. 没有使用JSP作为视图技术:${pageContext.request.contextPath}只能在JSP中使用,如果你使用的是其他视图技术,如Thymeleaf、Freemarker等,就无法使用该方法。
2. 没有在web.xml中配置<context-param>:如果你在web.xml中没有配置<context-param>,则${pageContext.request.contextPath}无法获取到应用上下文路径。可以在web.xml中添加如下配置:
```xml
<context-param>
<param-name>contextPath</param-name>
<param-value>/your-app-name</param-value>
</context-param>
```
其中,param-value的值为你应用的上下文路径。
3. 应用没有部署在根目录下:如果你的应用没有部署在根目录下,而是部署在某个子目录下,如http://localhost:8080/your-app-name,则${pageContext.request.contextPath}获取到的值应该是/your-app-name。
相关问题
js怎么引用${pageContext.request.contextPath }
在JavaScript中,`${pageContext.request.contextPath}`通常用于获取当前应用的上下文路径,这在Servlet或Spring MVC环境中常用于构建动态URL。这个表达式是模板字符串(Template literals)的一部分,它允许你在字符串中嵌入变量。
如果你想在JavaScript代码中使用这个值,你需要确保它是从服务器端传递到客户端的一个变量,比如作为HTTP响应头、JSON数据或者是通过API调用来获取的。以下是一个简单的例子:
```javascript
// 假设你已经从服务器获得了contextPath
const contextPath = window.location.origin + `${pageContext.request.contextPath}`;
// 现在你可以使用这个contextPath来构建完整的URL
let url = `/${contextPath}/your-resource`;
console.log(url);
```
这里假设`window.location.origin`获取了当前页面的基础URL,然后将`contextPath`添加到其后。如果你直接在前端代码中使用`${pageContext.request.contextPath}`,那通常是不可能的,因为这是服务器端的变量,需要先在服务器上设置并传给客户端。
$(".context_buy_form").submit(function () { if ('${sessionScope.userId}' === "") { location.href = "${pageContext.request.contextPath}/login"; return false; } var number = isNaN($.trim($(".context_buymember").val())); if (number) { location.reload(); } else { location.href = "${pageContext.request.contextPath}/order/create/${requestScope.product.product_id}?product_number=" + $.trim($(".context_buymember").val()); } return false; });
这段代码是用 jQuery 实现的一个表单提交事件处理函数,当用户点击提交按钮时,会执行该函数。函数中首先判断用户是否已经登录,如果没有则会跳转到登录页面。接着会获取用户输入的购买数量,并进行一些判断,如果输入的不是数字,则会刷新页面,否则会跳转到订单创建页面,同时将产品编号和购买数量作为参数传递给该页面。最后,该函数返回 false,防止表单提交后页面跳转。
阅读全文