Package xml.c1586

Source Code of xml.c1586.TextContentTest

package xml.c1586;

import junit.framework.TestCase;

import org.exolab.castor.mapping.Mapping;
import org.exolab.castor.xml.Marshaller;
import org.exolab.castor.xml.Unmarshaller;
import org.exolab.castor.xml.XMLContext;

import org.xml.sax.InputSource;

import java.io.StringWriter;

/**
* Unit Test
*/
public class TextContentTest extends TestCase {
    private static final String MAPPING_FILE = "mapping.xml";
   
    private XMLContext xmlContext;
    private Mapping mapping;
    private Marshaller marshaller;
    private StringWriter writer;
    private Unmarshaller unmarshaller;   

    /* (non-Javadoc)
     * @see junit.framework.TestCase#setUp()
     */
    protected void setUp() throws Exception {
        super.setUp();
        this.xmlContext = new XMLContext();
        // das Test Objekt vorbereiten
        this.writer = new StringWriter();
    }

    /* (non-Javadoc)
     * @see junit.framework.TestCase#tearDown()
     */
    protected void tearDown() throws Exception {
        super.tearDown();
        this.writer = null;
        this.xmlContext = null;
    }

    /**
     * Will throw exception when setting mapping in unmarshaller
     */        
    public void testTextContentNotWorking() throws Exception {
         // das Mapping laden
        mapping = new Mapping(getClass().getClassLoader());
        mapping.loadMapping(new InputSource(getClass().getResourceAsStream(MAPPING_FILE)));

        // den Marshaller erzeugen
        marshaller = xmlContext.createMarshaller();
        marshaller.setWriter(writer);
//        marshaller = new Marshaller(writer);
        marshaller.setMapping(mapping);
        marshaller.setEncoding("UTF-8");
        marshaller.setValidation(true);
       
        // den Unmarshaller erzeugen
        unmarshaller = xmlContext.createUnmarshaller();
//        unmarshaller = new Unmarshaller();
        unmarshaller.setClassLoader(getClass().getClassLoader());
        unmarshaller.setValidation(false);
        unmarshaller.setMapping(mapping);
        unmarshaller.setWhitespacePreserve(true);

        // den Marshaller erzeugen
        marshaller = xmlContext.createMarshaller();
        marshaller.setWriter(writer);
//        marshaller = new Marshaller(writer);
        marshaller.setMapping(mapping);
        marshaller.setEncoding("UTF-8");
        marshaller.setValidation(true);
    }

    /**
     * Everything works
     */        
    public void testTextContentWorking() throws Exception {
        // das Mapping laden
        mapping = new Mapping(getClass().getClassLoader());
        mapping.loadMapping(getClass().getResource(MAPPING_FILE));

        // den Marshaller erzeugen
        marshaller = xmlContext.createMarshaller();
        marshaller.setWriter(writer);
//        marshaller = new Marshaller(writer);
        marshaller.setMapping(mapping);
        marshaller.setEncoding("UTF-8");
        marshaller.setValidation(true);

        // den Unmarshaller erzeugen
        unmarshaller = xmlContext.createUnmarshaller();
//        unmarshaller = new Unmarshaller();
        unmarshaller.setClassLoader(getClass().getClassLoader());
        unmarshaller.setValidation(false);
        unmarshaller.setMapping(mapping);
        unmarshaller.setWhitespacePreserve(true);
    }
}
TOP

Related Classes of xml.c1586.TextContentTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.