我使用Spring表达式语言(SpEL)创建了一个示例程序。
ExpressionParser parser=new SpelExpressionParser();
Expression expression=parser.parseExpression("Hello SPEL");
但是下面得到了错误。
Exception in thread "main" org.springframework.expression.spel.SpelParseException: EL1041E:(pos 6): After parsing a valid expression, there is still more data in the expression: 'SPEL'
at org.springframework.expression.spel.standard.InternalSpelExpressionParser.doParseExpression(InternalSpelExpressionParser.java:116)
at org.springframework.expression.spel.standard.SpelExpressionParser.doParseExpression(SpelExpressionParser.java:56)
at org.springframework.expression.spel.standard.SpelExpressionParser.doParseExpression(SpelExpressionParser.java:1)
at org.springframework.expression.common.TemplateAwareExpressionParser.parseExpression(TemplateAwareExpressionParser.java:66)
at org.springframework.expression.common.TemplateAwareExpressionParser.parseExpression(TemplateAwareExpressionParser.java:56)
6条答案
按热度按时间ggazkfy81#
尝试
得双曲余切值.
参数是一个String,但是解析器需要知道这是一个字符串,因为您还可以解析其他内容。
有关更多信息,请查看here。
iibxawm42#
试试这个
5gfr0r5j3#
在使用xml文件注入bean时,我遇到了同样的异常:
当使用以下命令时,问题消失:[]:
我的这个帮你解决你的问题,
有关此问题详细信息,请参阅此问题的refer:
ryhaxcpt4#
如果您要将其放入springbeansxml文件中,请尝试如下所示
laik7k3q5#
我使用的是Spring Web流,从ognl迁移到了Spring 5 WebFlowSpringELExpressionParser,并将@package.class.method()替换为bean.method(),而bean是在servlet.xml中声明的。
wribegjk6#
我得到了这个:
http://...
最后我发现在最新版本的SpringBoot配置文件中,值,已经被转换成了Map,所以旧版本的URL值现在是一个名称/值对,用冒号分隔在
http://...
中。应用程序.yml中的旧值
新值
错误消息的解决方案是使用Map更新到配置文件。这给了代码它想要的。