2016-07-22 87 views
0

我正在轉換java對象到jaxb上下文marshelling技術的幫助下的xml字符串。當我嘗試運行該程序作爲主要class.it將其轉換爲xml字符串,但是當我在project.it中調用不同類中的方法,引發參數不匹配異常。 我正在使用tomcat 7和jdk 6並在eclipse中運行代碼。 請在下面找到marshelling代碼段。參數類型不匹配異常,而marshelling java對象

JAXBContext context = JAXBContext.newInstance(Test.class); 

       m = context.createMarshaller(); 

       m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); 

sw = new StringWriter(); 

       m.marshal(request, sw); 

請指導爲什麼它失敗時,我運行到一個項目。

回答

0

請按照以下方式編組Java對象並使用XML編寫器製作xml格式。

JAXBContext context = JAXBContext.newInstance(Test.class); 

    Marshaller m = context.createMarshaller(); 

      m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); 

    NamespaceFilter outFilter = new NamespaceFilter(null, false); 
    ByteArrayOutputStream baOPStram = new ByteArrayOutputStream(); 

    //Use XML writer to create the xml file. 
    XMLWriter writer = new XMLWriter(baOPStram); 

    outFilter.setContentHandler(writer); 

    m.marshal(**YourJavaObject**, outFilter); 

    message = new String(baOPStram.toByteArray()); 

如果您希望將xml文件保存到某處,請給出輸出文件的參考。

OutputStream os = new FileOutputStream("xyz.xml"); 
    m.marshal(**YourJavaObject**, outFilter); 

還設置了以下屬性

​​ 前
相關問題