我是法国人,所以我在代码中添加了一些é è ê ô û。 (而且我英语说得不太好)。
我在类Formulaires
中有一个类似的方法:
public static Formulaire exposé()
在配置 spring xml 文件中,我尝试:
<entry
key="intro"
value="#{T(com.myproject.Formulaires).exposé()}"/>
但是 Spring 说:
Caused by: java.lang.IllegalStateException: Cannot handle (233) 'é'
at org.springframework.expression.spel.standard.Tokenizer.process(Tokenizer.java:193)
at org.springframework.expression.spel.standard.Tokenizer.<init>(Tokenizer.java:47)
at org.springframework.expression.spel.standard.InternalSpelExpressionParser.doParseExpression(InternalSpelExpressionParser.java:110)
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.parseExpressions(TemplateAwareExpressionParser.java:128)
at org.springframework.expression.common.TemplateAwareExpressionParser.parseTemplate(TemplateAwareExpressionParser.java:74)
at org.springframework.expression.common.TemplateAwareExpressionParser.parseExpression(TemplateAwareExpressionParser.java:64)
at org.springframework.context.expression.StandardBeanExpressionResolver.evaluate(StandardBeanExpressionResolver.java:119)
... 47 more
如果我输入 e 而不是 é,一切都很好。
关于重音有一些 SpEL 限制吗?
我使用 spring 3.0.5。
谢谢。
最佳答案
基本 UTF-8 字符编码中不存在重音字符,Spring XML 文件可能使用它。正如错误所示,解析器无法处理重音字符。
您无法轻松解决此问题。重音字符也会在其他编程领域带来问题。我认为最好防止使用它们。
关于spring - SpEL 无法处理 'é' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8571992/