2012-05-11 1 views
0

У меня есть следующий тестовый код, который не работает.Почему я получаю исключение для преобразования в этом коде для xstream?

XStream xStream = new XStream(new DomDriver()); 
    xStream.alias(clazz.getName(), clazz); 
    String test="<list><Person><lastname>abcd</lastname><phone><code>123</code><number>1234-456</number></phone><fax><code>123</code><number>9999-999</number></fax></Person></list>"; 
    Object object = xStream.fromXML(test); 


    clazz=Arraylist.class 

Exception Информация:

com.thoughtworks.xstream.converters.ConversionException: Person : Person : Person : Person 
---- Debugging information ---- 
message    : Person : Person 
cause-exception  : com.thoughtworks.xstream.mapper.CannotResolveClassException 
cause-message  : Person : Person 
class    : java.util.ArrayList 
required-type  : java.util.ArrayList 
path    : /list/Person 

ответ

1

Кажется, что XStream не знает, что это Person, что имеет смысл, потому что вы не псевдонимами его в любом месте.

Попробуйте добавить

xStream.alias("Person", Person.class); 
+0

Да, я сделал это слишком, и после этого я получаю Исключение нулевого указателя для Class.Load в XStream. – gizgok

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