Once the marshallDocument method is invoked with sysout as the output stream, sysouts after that stops working.
mctx.marshalDocument(objA, "UTF-8", null, System.out); System.out.println("objA marshall complete"); mctx.marshalDocument(objB, "UTF-8", null, System.out); System.out.println("objB marshall complete"); Its because the jibx is doing the equivalent of System.out.close() somewhere in the code. On a little analysis: org.jibx.runtime.impl.MarshallingContext.endDocument() calls the m_writer.close(), which invokes the UTF8StreamWriter.close() . If the close method in StreamWriterBase is modified as follows then the stream are only closed if it is not the sysout stream. public void close() throws IOException { flush(); if (m_stream != null && m_stream != System.out) { m_stream.close(); m_stream = null; } } I have not tested this fix, just enumerating on one of the possible solutions. I have sent the same mail to the dev user group by mistake regards Varghese ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ jibx-users mailing list jibx-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jibx-users