找不到媒体类型= application / xml的MessageBodyWriter,type = class java.util.ArrayList,genericType = java.util.List

时间:2016-09-08 16:11:54

标签: java xml list parsing dom

我使用Jersey构建REST服务并希望将List作为XML返回。 我不知道这个错误来自哪里,对这些人有任何想法吗?

public class ProduitImportXml {

public static List<Produit> getProduits() {

    List<Produit> produitsList = new ArrayList<Produit>();

    try {   
         File inputFile = new File("ProduitData.xml");
         DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
         DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
         Document doc = dBuilder.parse(inputFile);
         doc.getDocumentElement().normalize();
         System.out.println("Root element :" + doc.getDocumentElement().getNodeName());
         NodeList nList = doc.getElementsByTagName("produits"); 
         for (int i = 0; i < nList.getLength(); i++) {
             Node nNode = nList.item(i);
            System.out.println("\nCurrent Element :" + nNode.getNodeName());
            if (nNode.getNodeType() == Node.ELEMENT_NODE) {
                Element el = (Element) nNode;
                NodeList childNodes = el.getChildNodes();
                for (int j = 0,len = nList.getLength();j<len; j++) {
                Produit p=new Produit(
              el.getElementsByTagName("idProduit").item(j).getTextContent(),
                produitsList.add(p);    
                        }
                    }
            }
      } catch (Exception e) {
         e.printStackTrace();
      }
    return produitsList;
}

我收到了以下控制台消息:

MessageBodyWriter not found for media type=application/xml, type=class java.util.ArrayList, genericType=java.util.List

0 个答案:

没有答案