2013-03-19 2 views
0

У меня есть два класса ClientLogic1 и WelcomeBean1 следующегоПолучение ошибка ClassCastException

public class ClientLogic1 { 

    public static void main(String[] args) 
    { 
     Resource res = new ClassPathResource("spconfig.xml"); 
     BeanFactory factory = new XmlBeanFactory(res); 
     Object o = factory.getBean("id1"); 
     WelcomeBean1 wb = (WelcomeBean1)o; 
     wb.show(); 

    } 

    } 

2-й класс

public class WelcomeBean1 { 

     private Map data; 
     public void setData(Map data) { 
      this.data = data; 
     } 

     public void show() 
     { 
      Set s=data.entrySet(); 
      Iterator it = s.iterator(); 
      while(it.hasNext()) 
      { 
       Map.Entry me = (Map.Entry)it.next(); 
       System.out.println(me.getKey()+ " - "+me.getValue()); 
      } 
     } 

    } 

У меня есть XML-файл как

<beans> 
    <bean id="id1" class="WelcomeBean1"> 
    <property name="data"> 
    <map> 
    <entry key="k1"> 
     <vlaue>1323</value> 
    </entry> 
    <entry key="k2"> 
     <value>feed</value> 
    </entry> 
    </map> 
    </property> 
    </bean> 
</bean> 

Я дал правильный путь .Это только, когда я запускаю эту программу, я получаю следующую ошибку:

Exception in thread "main" java.lang.ClassCastException: WelcomeBean cannot be 
    cast to mapexmpl.WelcomeBean1 at mapexmpl.ClientLogic1.main(ClientLogic1.java:15) 

Я не знаю, где я буду wrong.Can кто-то поможет мне плз ...

+0

есть ли WelcomeBean – PSR

+0

Я думаю, что есть проблема сборки, чистый и построить свой проект снова –

+0

@ PSR-no я проверил его, но я не использую WelcomeBean где-нибудь в коде – Ezhil

ответ

0

На самом деле он говорит, как WelcomeBean не может быть .............. Но ваш код показывает все как WelcomeBean1.

Вы использовали WelcomeBean где-нибудь. Пожалуйста, проверьте его один раз.

Я думаю, прежде чем вы использовали WelComeBean. Затем он изменил его на WelComeBean1.Пожалуйста, создайте агиан с чистым.

+0

@ user1847395 вы все еще получаете ошибку – PSR

+0

да, я все еще получаю сообщение об ошибке, и я тоже очистил проект .. и да, я изменил имя класса с WelcomeBean на WelcomeBean1 – Ezhil

+0

@ user1847395, затем сделайте одно. Переименуйте все WelComeBean1 в новое имя под названием Test.Now мы можем определенно получить, где проблема – PSR

0
  1. удостоверьтесь, что в конфигурационном файле весны нет дубликата bean id. например, вы можете иметь боб WelcomeBean с идентификатором id1

  2. изменения имени полный пакет <bean id="id1" class="mapexmpl.WelcomeBean1">

+0

Я изменил его, но он все еще показывает ту же ошибку – Ezhil

Смежные вопросы