ognl.InappropriateExpressionException: Inappropriate OGNL expression: 1

 我来答
邗启3V
2012-05-18 · TA获得超过7270个赞
知道大有可为答主
回答量:1413
采纳率:100%
帮助的人:1370万
展开全部
你用了struts2框架的话,这个问题就是你提交的请求参数里面存在 变量名为1的参数
这样肯定不合法的,在后台类action里面你不可能会定义 变量名为1的变量

但具体哪里用了 你在你的项目里面找找
比如用 ajax请求 后面的请求参数包括 1=xxx 这样的,或者表单提交存在<input name="1">等等这样的

只是根据自己的一点点经验而谈,希望你是这样的问题
名片
2024-10-21 广告
正版Hyperworks软件多少钱,购买正版Hyperworks软件,免费咨询Altair Hyperworks软件中国区网站首页,HyperWorks软件提供了完整的CAE有限元分析解决方案,免费试用和咨询官网。... 点击进入详情页
本回答由名片提供
dayinspring
高粉答主

2015-11-11 · 繁杂信息太多,你要学会辨别
知道大有可为答主
回答量:2.3万
采纳率:92%
帮助的人:3391万
展开全部
可能1:这个 “1”,说明你的表单提交中有一个<input name="1" > 这样的提交项,而struts2的机制是会自动去寻找name为1的action中的变量,但显然java中不可能存在仅仅由数字组成 的变量名1 ,所以就跑出错误...
解决办法:
把name为数字1的表单项改成非纯数字名称。是在使用ajax向后台发送异步请求的时候,
参数串里传了一个"?1=1",结果就报错。做相应的改动就好!

可能2:你的文本框有name为数字的域,如:<input id="1" name="1" value="">,这种情况当 struts获取name为1的action中的变量就会抛异常(java中不可能仅由数字组成的变量)。
解决办法:把name换成字符串,或者字符串跟数字的组合。

可能3:是因为展示页面迭代了一个隐藏域,在模糊查询时隐藏域也作为参数传递过去.
问题是隐藏域的无值,但是还直接使用了它,把它当做参数传!
解决办法:检查下关于此页面的所有参数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式