1

我尝试了一个具有 ArrayList 的类的简单示例。见下文:

class EmployeeList {            

        List<String> departmentNames = new ArrayList<String>();

        public EmployeeList(String dept1, String dept2) {
            super();
            departmentNames.add(dept1);
            departmentNames.add(dept2);
        }

        public String toString()
        {
            return "EMPLOYEELIST DETAILS : " + departmentNames.toString();
        }
    }

现在,我正在尝试将 EmployeeList 类型的对象转换为 JSON 字符串,然后使用 jettison 转换回对象。

EmployeeList employeeList1 = new EmployeeList("IT","FINANCE");

XStream xstreamWriteEmployeeList = new XStream(new JettisonMappedXmlDriver());
xstreamWriteEmployeeList.alias("employee", EmployeeList.class);

String jsonStringEmployeeList = xstreamWriteEmployeeList.toXML(employeeList1);

XStream xstreamReadEmployeeList = new XStream(new JettisonMappedXmlDriver());

xstreamReadEmployeeList.alias("employee", EmployeeList.class);

EmployeeList employeeList2 = (EmployeeList)xstreamReadEmployeeList.fromXML(jsonStringEmployeeList);

我已经尝试过并且它正在我的本地系统上运行,但是当我尝试在我的应用程序服务器上部署时,它给出了一个错误。

java.lang.NoSuchMethodError: org.codehaus.jettison.AbstractXMLStreamWriter.getSerializedAsArrays()Ljava/util/ArrayList;

任何想法为什么?我在本地系统和应用程序服务器上使用相同的 java 版本。

4

0 回答 0