spring学习(三)

spring学习(三)

    spring做国际化的代码的时候,会遇到这样的异常:
org.springframework.context.NoSuchMessageException: No message found under code  ' userinfo '   for  locale  ' en_US ' .
    at org.springframework.context.support.AbstractMessageSource.getMessage(AbstractMessageSource.java:
179 )
    at org.springframework.context.support.AbstractApplicationContext.getMessage(AbstractApplicationContext.java:
986 )
    at test.test_inter.test_in(test_inter.java:
19 )
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39 )
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25 )
    at java.lang.reflect.Method.invoke(Method.java:
597 )
    at junit.framework.TestCase.runTest(TestCase.java:
168 )
    at junit.framework.TestCase.runBare(TestCase.java:
134 )
    at junit.framework.TestResult$
1 .protect(TestResult.java: 110 )
    at junit.framework.TestResult.runProtected(TestResult.java:
128 )
    at junit.framework.TestResult.run(TestResult.java:
113 )
    at junit.framework.TestCase.run(TestCase.java:
124 )
    at junit.framework.TestSuite.runTest(TestSuite.java:
232 )
    at junit.framework.TestSuite.run(TestSuite.java:
227 )
    at org.junit.internal.runners.OldTestClassRunner.run(OldTestClassRunner.java:
76 )
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:
45 )
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:
38 )
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:
460 )
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:
673 )
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:
386 )
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
196 )


     出现这个问题主要是因为没有把属性文件放对地方,如果你使用eclipse的话,应该把属性文件放在src文件夹下,而不是工程下!! 你还记得log4j的配置文件(log4j.properties)放在什么地方么?呵呵 想起来吧~~

     还有可能是属性文件的名称不正确?messages_zh_CN.properties messages_en_US.properties
    当然bean的配置文件也是有要求,这是必须滴。
 
<? xml version = " 1.0 "  encoding = " UTF-8 " ?>  

< beans xmlns = " http://www.springframework.org/schema/beans "  xmlns:xsi = " http://www.w3.org/2001/XMLSchema-instance "   
    xmlns:aop
= " http://www.springframework.org/schema/aop "  xmlns:tx = " http://www.springframework.org/schema/tx "   
    xmlns:context
= " http://www.springframework.org/schema/context "   
    xsi:schemaLocation
= "    
          http: // www.springframework.org/schema/beans    
          http: // www.springframework.org/schema/beans/spring-beans-2.0.xsd   
          http: // www.springframework.org/schema/aop    
          http: // www.springframework.org/schema/aop/spring-aop-2.0.xsd   
          http: // www.springframework.org/schema/tx    
          http: // www.springframework.org/schema/tx/spring-tx-2.0.xsd   
          http: // www.springframework.org/schema/context   
          http: // www.springframework.org/schema/context/spring-context-2.5.xsd">   
< bean id = " messageSource "
class = " org.springframework.context.support.ResourceBundleMessageSource " >
< property name = " basenames " >
    
< list >
        
< value > messages </ value >
    
</ list >
</ property >
</ bean >
</ beans >
     我这样解决了?你呢?

     good luck`~~~

你可能感兴趣的:(spring学习(三))