i18n 国际化后端报错No message found under code
时间: 2023-11-13 22:02:42 浏览: 28
这个错误通常表示在后端代码中找不到指定的国际化消息,可能原因有以下几种:
1. 消息资源文件未加载:请确保在后端代码中加载了正确的消息资源文件,例如 properties 或者 ResourceBundle 文件。
2. 消息资源文件中没有定义对应的 code:请检查消息资源文件中是否包含了你所需要的 code。
3. 代码中使用了错误的 code:请检查代码中使用的国际化 code 是否与消息资源文件中定义的一致。
4. 文件编码格式错误:请确保消息资源文件的编码格式与代码中使用的一致。
5. 文件路径错误:请确保消息资源文件的路径正确,并且可以被后端代码正确访问。
如果以上都没有解决问题,请提供更多的代码和错误信息,以便更好地帮助你解决问题。
相关问题
JspException:no message found under code
这是一个与JSP页面国际化相关的问题。它表示在指定的代码下找不到消息属性文件。消息属性文件是一个包含文本消息的文件,通常用于在页面中显示本地化的文本。
可能的原因是:
1. 消息属性文件不存在或未正确命名为指定的代码。
2. 消息属性文件在错误的位置。
3. 代码被错误地指定为消息的键。
要解决这个问题,您应该检查消息属性文件是否存在,命名是否正确,并且是否在正确的位置。您还应该检查代码是否正确地指定为消息的键。如果问题仍然存在,则可能需要查看您的JSP页面代码和配置文件以找到更多问题。
spring i18n 国际化配置
Spring框架提供了很好的国际化(i18n)支持,其核心是ResourceBundleMessageSource类,这个类实现了MessageSource接口,可以通过其提供的方法获取国际化的消息文本。国际化配置包含以下步骤:
1. 在Spring配置文件中配置ResourceBundleMessageSource Bean。
2. 创建属性文件,包含不同语言版本的消息文本。
3. 在JSP页面或者Java代码中使用MessageSource获取对应语言版本的消息文本。
具体操作如下:
1. 在Spring配置文件中添加如下配置:
```
<bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
<property name="basename" value="messages"/>
</bean>
```
basename属性指定了消息文件的基础名称,这里的值是“messages”,表示消息文件名为“messages.properties”(默认语言)和“messages_zh_CN.properties”(中文语言)。
2. 创建消息文件。
在classpath下创建一个名为“messages.properties”的文件,内容如下:
```
message.hello=Hello, World!
```
然后在同一个目录下创建一个名为“messages_zh_CN.properties”的文件,内容如下:
```
message.hello=你好,世界!
```
这里我们定义了一个名为“message.hello”的消息文本,分别提供了英文和中文两种语言版本。
3. 在JSP页面或者Java代码中使用MessageSource获取对应语言版本的消息文本。
在JSP页面中,可以使用spring:message标签获取消息文本:
```
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<spring:message code="message.hello"/>
```
在Java代码中,可以注入MessageSource,并使用其getMessage方法获取消息文本:
```
@Autowired
private MessageSource messageSource;
String message = messageSource.getMessage("message.hello", null, Locale.getDefault());
```
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)