java.lang.LString_在java.lang.String类型中找不到属性'0'

博主在使用SpringMVC3和Roo进行项目开发时遇到了一个web层的问题,主要涉及类型转换。在尝试迭代SystemSettings表的列表并传递计数器时,出现了一个异常,指出在java.lang.String类型上找不到属性'0'。这可能是由于在JSPX文件中使用了错误的EL表达式导致的。解决方案是正确地使用方括号‘[]’来访问列表元素,而不是将其作为变量的一部分。
摘要由CSDN通过智能技术生成

我正在使用SpringMVC 3和Roo项目。现在有一个web层死胡同了。基本上这是一个类型转换的问题,让我疯狂在java.lang.String类型中找不到属性'0'

我尝试迭代表行的列表(这里是SystemSettings表,然后每行是系统设置)时传递记录计数器。在JSPX文件,我做了以下循环:

这样的状态可以计数,计数器值传递给“complex.tagx”。这里是这样简化的:

我没有把所有的属性放在这里使代码部分太冗长。但我得到非常讨厌的异常告诉我计数器(当然在第一个循环中返回0)不是一种类型的字符串?我认为JSTL可以自动转换它。但是,我知道我使用三个变量组成组件名称可能不是一个好主意,但我不明白这个例外,在这里,请帮助,非常感谢!

2012年5月14日下午6点39分59秒org.apache.catalina.core.StandardWrapperValve调用 重度:Servlet.service()进行的servlet [OptiVLM-CarrierWeb]与路径上下文[/ OptiVLM-CarrierWeb]扔异常[请求处理失败;嵌套的异常是带有根本原因的org.apache.tiles.impl.CannotRenderException:包含路径'/WEB-INF/layouts/default.jspx'的ServletException。] javax.el.PropertyNotFoundException:在类型java上找不到属性'0'。 lang.String at javax.el.BeanELResolver $ BeanProperties.get(BeanELResolver.java:237) at javax.el.BeanELResolver $ BeanProperties.access $ 400(BeanELResolver.java:214) at javax.el.BeanELResolver.property( BeanELResolver.java:325) 在javax.el.BeanELResolver.getValue(BeanELResolver.java:85) 在javax.el.CompositeELResolver.getValue(CompositeELResolver.java:67)

2012-05-14

Dreamer

+0

什么是“设置”? –

+0

我的解释是,异常告诉你你试图访问一个字符串上的名为0的属性,而不是0不是一个字符串。 formBacking属性是否需要是EL表达式而不是“formSettings”? –

+0

嗨戴夫和CaptionAwesomePants,抱歉,迟到的反馈。是的,实际上我应该使用name =“$ {formBacking} [$ {cnt}] .id”而不是name =“$ {formBacking [cnt] .field}”,因为formBacking应该是String之外的变量。方括号“[]”不应该是变量的parit。 –

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值