防止EL表达式输出执行js脚本

本文介绍了在Struts框架中如何正确使用EL表达式避免执行JS代码的问题,并给出了解决方案。同时,还讨论了当EL表达式尝试访问不存在的属性时可能出现的异常及其原因。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(一)

1,Struts标签,要注意采用C:out输出,防止“意外执行JS代码”:
<%--  <input type="hidden" class="go_link" value='<s:url value="/data/uploadList/0?path=${path}" />' /> --%>

<%-- <input type="hidden" class="go_link" value="<s:url value='/data/uploadList/0?path=<c:out value="${path}" />' />" /> --%>

 正确的写法,不会执行js,防止跨站
<input type="hidden" class="go_link" value='<s:url value="/data/uploadList/0?path="/><c:out value="${path}" />' />

 

(二)
Property 'url' not found on type org.bgi.springmvcdemo.domain.User
javax.el.PropertyNotFoundException: Property 'url' not found on type org.bgi.springmvcdemo.domain.User
出现这个错误的原因是 User 没有url这个属性,但是你却是用 el表达式输出,所以报错!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值