<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2653.12">
<TITLE>RE: FW: [jdom-interest] Sealing violation</TITLE>
</HEAD>
<BODY>

<P><FONT SIZE=2>Are these for JAXP?</FONT>
</P>

<P><FONT SIZE=2>import javax.xml.parsers.*;</FONT>
<BR><FONT SIZE=2>import javax.xml.transform.*;</FONT>
<BR><FONT SIZE=2>import javax.xml.transform.stream.*;</FONT>
<BR><FONT SIZE=2>import javax.xml.transform.dom.*;</FONT>
<BR><FONT SIZE=2>import javax.xml.parsers.DocumentBuilder;</FONT>
<BR><FONT SIZE=2>import javax.xml.parsers.DocumentBuilderFactory;</FONT>
<BR><FONT SIZE=2>import javax.xml.parsers.ParserConfigurationException;</FONT>
</P>

<P><FONT SIZE=2>I don't think you need JAXP and JDOM both.&nbsp; It's still a classpath issue of some sort.&nbsp; Try moving the JDOM jar up in the CLASSPATH as well, and removing JAXP altogether (including the imports).</FONT></P>
<BR>

<P><FONT SIZE=2>-----Original Message-----</FONT>
<BR><FONT SIZE=2>From: JStalnecker@idssinfo.com [<A HREF="mailto:JStalnecker@idssinfo.com">mailto:JStalnecker@idssinfo.com</A>]</FONT>
<BR><FONT SIZE=2>Sent: Thursday, March 08, 2001 1:59 PM</FONT>
<BR><FONT SIZE=2>To: Steven Smith</FONT>
<BR><FONT SIZE=2>Cc: jdom-interest@jdom.org; jdom-interest-admin@jdom.org</FONT>
<BR><FONT SIZE=2>Subject: Re: FW: [jdom-interest] Sealing violation</FONT>
</P>
<BR>
<BR>

<P><FONT SIZE=2>My JDomServlet2 is not part of a package, however I have written another</FONT>
<BR><FONT SIZE=2>servlet trying to the same thing in a different way.&nbsp; I have included the</FONT>
<BR><FONT SIZE=2>source below, it uses the same CustomerInfo.class.</FONT>
</P>

<P><FONT SIZE=2>import java.io.*;</FONT>
<BR><FONT SIZE=2>import javax.servlet.*;</FONT>
<BR><FONT SIZE=2>import javax.servlet.http.*;</FONT>
<BR><FONT SIZE=2>import org.apache.xalan.*;</FONT>
<BR><FONT SIZE=2>import org.jdom.*;</FONT>
<BR><FONT SIZE=2>import org.jdom.input.*;</FONT>
<BR><FONT SIZE=2>import org.jdom.output.*;</FONT>
<BR><FONT SIZE=2>import javax.xml.parsers.*;</FONT>
<BR><FONT SIZE=2>import javax.xml.transform.*;</FONT>
<BR><FONT SIZE=2>import javax.xml.transform.stream.*;</FONT>
<BR><FONT SIZE=2>import javax.xml.transform.dom.*;</FONT>
<BR><FONT SIZE=2>import javax.xml.parsers.DocumentBuilder;</FONT>
<BR><FONT SIZE=2>import javax.xml.parsers.DocumentBuilderFactory;</FONT>
<BR><FONT SIZE=2>import javax.xml.parsers.ParserConfigurationException;</FONT>
</P>
<BR>

<P><FONT SIZE=2>public class JDomServlet extends HttpServlet {</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp; ServletContext context = null;</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp; // initialize the Servlet.&nbsp; This code is executed once.</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; public void init(ServletConfig config) throws ServletException {</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; super.init(config);</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; context = config.getServletContext();</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; }</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp; // handle a single request from the client</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; public void doGet(HttpServletRequest request,</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HttpServletResponse response) throws IOException,</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ServletException {</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HttpSession session = request.getSession(true);</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String xslURL = request.getParameter(&quot;xslURL&quot;);</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(&quot;inside servlet&quot;);</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; response.setContentType(&quot;text/html&quot;);</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // in a real app, the CreditInfo object would be retrieved</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // from an EJB component</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CustomerInfo ci = new CustomerInfo(&quot;100014&quot;, &quot;123 Main</FONT>
<BR><FONT SIZE=2>Street&quot;, &quot;Suite 12345&quot;,</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &quot;This is the third address line&quot;, &quot;Reading&quot;, &quot;PA&quot;,</FONT>
<BR><FONT SIZE=2>&quot;19607&quot;);</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // convert the JDOM into DOM</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Document jdomDoc = ci.getDocument();</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; org.w3c.dom.Document domDoc =</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; new DOMOutputter().output(jdomDoc);</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; TransformerFactory tFactory = TransformerFactory.newInstance</FONT>
<BR><FONT SIZE=2>();</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp; if (tFactory.getFeature(DOMSource.FEATURE) &amp;&amp;</FONT>
<BR><FONT SIZE=2>tFactory.getFeature(StreamResult.FEATURE))</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; {</FONT>
</P>
<BR>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp; // Use the TransformerFactory to instantiate a Transformer that will</FONT>
<BR><FONT SIZE=2>work with</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp; // the stylesheet you specify. This method call also processes the</FONT>
<BR><FONT SIZE=2>stylesheet</FONT>
<BR><FONT SIZE=2>&nbsp; // into a compiled Templates object.</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp; Transformer transformer = tFactory.newTransformer(new</FONT>
<BR><FONT SIZE=2>StreamSource(xslURL));</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp; // Use the Transformer to apply the associated Templates object to an</FONT>
<BR><FONT SIZE=2>XML document</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp; // (foo.xml) and write the output to a file (foo.out).</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp; transformer.transform(new DOMSource(domDoc), new</FONT>
<BR><FONT SIZE=2>StreamResult(response.getWriter()));</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp; }</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; } catch (Exception ex) {</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ex.printStackTrace();</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; }</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; }</FONT>
<BR><FONT SIZE=2>}</FONT>
</P>

<P><FONT SIZE=2>The funny thing is that this servlet also produces a sealing violation,</FONT>
<BR><FONT SIZE=2>however it manifests itself differently.&nbsp; I have highlighted the statement</FONT>
<BR><FONT SIZE=2>that produces the error.&nbsp; When JDomServlet is run, the before mentioned</FONT>
<BR><FONT SIZE=2>error appears in the browser window.&nbsp; When JDomServlet is run (I am running</FONT>
<BR><FONT SIZE=2>both servlets on Resin1.1),&nbsp; the below error is produced in the DOS prompt</FONT>
<BR><FONT SIZE=2>associated with Resin.</FONT>
</P>

<P><FONT SIZE=2>&nbsp;org.jdom.JDOMException: Exception outputting Document: sealing violation</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp; at org.jdom.output.DOMOutputter.output&lt;DOMOutputter.java, compiled</FONT>
<BR><FONT SIZE=2>code&gt;</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp; at JDomServlet.doGet&lt;JDomServlet.java:50&gt;</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp; etc..</FONT>
<BR><FONT SIZE=2>Root cause: java.lang.SecurityException: sealing violation</FONT>
<BR><FONT SIZE=2>etc...</FONT>
</P>
<BR>

<P><FONT SIZE=2>Thanks again for all your help,</FONT>
<BR><FONT SIZE=2>Joy</FONT>
</P>
<BR>

</BODY>
</HTML>