You are viewing a plain text version of this content. The canonical link for it is here.
Posted to j-users@xerces.apache.org by Neil Sherman <ns...@aimltd.co.uk> on 2003/03/13 15:09:07 UTC

DOMParser & Cannot Inherit from final class exception

Hi all,

I am having a problem creating a DOMParser within a Java Servlet.  I
have the following code

import javax.servlet.*;
import javax.servlet.http.*;
import org.apache.xerces.parsers.DOMParser;

public class xtest extends HttpServlet {
   
    /** Initializes the servlet.
    */  
    public void init(ServletConfig config) throws ServletException 
        {
        super.init(config);
        xercestest();
        }
    public void xercestest()
        {
        DOMParser parser = new DOMParser();
        }

..
..  Servlet doGet and doPost methods which do nothing
...
...

When the servlet starts its init method gets called.  In turn the
xercestest method is then called.  I was hoping that this would simply
create me a new DOMParser and do nothing with it but instead I get the
exception below:

Any ideas what is happening here ?

Many thanks

Neil


javax.servlet.ServletException: Servlet.init() for servlet xtest threw
exception
	at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.jav
a:962)
	at
org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:6
66)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:214)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:643)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
80)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:191)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:643)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
80)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:241
5)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:180)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:643)
	at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherVa
lve.java:170)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:641)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:172)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:641)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
80)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:174)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:643)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
80)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
	at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:43
2)
	at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:386)
	at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:53
4)
	at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:530)
	at java.lang.Thread.run(Thread.java:536)
root cause 
java.lang.VerifyError: Cannot inherit from final class
	at java.lang.ClassLoader.defineClass0(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:502)
	at
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
	at
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappCla
ssLoader.java:1664)
	at
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader
.java:953)
	at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader
.java:1394)
	at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader
.java:1274)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
	at
org.apache.xerces.impl.XMLNSDocumentScannerImpl.createContentDispatcher(
Unknown Source)
	at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.(XMLDocumentFragme
ntScannerImpl.java:249)
	at
org.apache.xerces.impl.XMLDocumentScannerImpl.(XMLDocumentScannerImpl.ja
va:245)
	at org.apache.xerces.impl.XMLNSDocumentScannerImpl.(Unknown
Source)
	at
org.apache.xerces.parsers.IntegratedParserConfiguration.createDocumentSc
anner(Unknown Source)
	at
org.apache.xerces.parsers.DTDConfiguration.(DTDConfiguration.java:367)
	at
org.apache.xerces.parsers.StandardParserConfiguration.(StandardParserCon
figuration.java:198)
	at
org.apache.xerces.parsers.IntegratedParserConfiguration.(Unknown Source)
	at
org.apache.xerces.parsers.IntegratedParserConfiguration.(Unknown Source)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
	at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorA
ccessorImpl.java:39)
	at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingCons
tructorAccessorImpl.java:27)
	at
java.lang.reflect.Constructor.newInstance(Constructor.java:274)
	at java.lang.Class.newInstance0(Class.java:306)
	at java.lang.Class.newInstance(Class.java:259)
	at
org.apache.xerces.util.ObjectFactory.newInstance(ObjectFactory.java:266)
	at
org.apache.xerces.util.ObjectFactory.findJarServiceProvider(ObjectFactor
y.java:360)
	at
org.apache.xerces.util.ObjectFactory.createObject(ObjectFactory.java:185
)
	at
org.apache.xerces.util.ObjectFactory.createObject(ObjectFactory.java:120
)
	at org.apache.xerces.parsers.DOMParser.(DOMParser.java:153)
	at org.apache.xerces.parsers.DOMParser.(DOMParser.java:137)
	at xtest.xercestest(xtest.java:22)
	at xtest.init(xtest.java:18)
	at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.jav
a:934)
	at
org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:6
66)
	at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
e.java:214)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:643)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
80)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
e.java:191)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:643)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
80)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:241
5)
	at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
:180)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:643)
	at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherVa
lve.java:170)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:641)
	at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
:172)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:641)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
80)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
java:174)
	at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
nvokeNext(StandardPipeline.java:643)
	at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
80)
	at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
	at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
	at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:43
2)
	at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
onnection(Http11Protocol.java:386)
	at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:53
4)
	at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
.java:530)
	at java.lang.Thread.run(Thread.java:536)



---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-j-user-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-j-user-help@xml.apache.org


Re: DOMParser & Cannot Inherit from final class exception

Posted by Panos Konstantinidis <gi...@yahoo.com>.
  It's simple. You cannot extend a final class.

--- Neil Sherman <ns...@aimltd.co.uk> wrote:
> Hi all,
> 
> I am having a problem creating a DOMParser within a
> Java Servlet.  I
> have the following code
> 
> import javax.servlet.*;
> import javax.servlet.http.*;
> import org.apache.xerces.parsers.DOMParser;
> 
> public class xtest extends HttpServlet {
>    
>     /** Initializes the servlet.
>     */  
>     public void init(ServletConfig config) throws
> ServletException 
>         {
>         super.init(config);
>         xercestest();
>         }
>     public void xercestest()
>         {
>         DOMParser parser = new DOMParser();
>         }
> 
> ..
> ..  Servlet doGet and doPost methods which do
> nothing
> ...
> ...
> 
> When the servlet starts its init method gets called.
>  In turn the
> xercestest method is then called.  I was hoping that
> this would simply
> create me a new DOMParser and do nothing with it but
> instead I get the
> exception below:
> 
> Any ideas what is happening here ?
> 
> Many thanks
> 
> Neil
> 
> 
> javax.servlet.ServletException: Servlet.init() for
> servlet xtest threw
> exception
> 	at
>
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.jav
> a:962)
> 	at
>
org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:6
> 66)
> 	at
>
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv
> e.java:214)
> 	at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
> nvokeNext(StandardPipeline.java:643)
> 	at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
> 80)
> 	at
>
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> 	at
>
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv
> e.java:191)
> 	at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
> nvokeNext(StandardPipeline.java:643)
> 	at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
> 80)
> 	at
>
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> 	at
>
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:241
> 5)
> 	at
>
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java
> :180)
> 	at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
> nvokeNext(StandardPipeline.java:643)
> 	at
>
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherVa
> lve.java:170)
> 	at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
> nvokeNext(StandardPipeline.java:641)
> 	at
>
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
> :172)
> 	at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
> nvokeNext(StandardPipeline.java:641)
> 	at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
> 80)
> 	at
>
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> 	at
>
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
> java:174)
> 	at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.i
> nvokeNext(StandardPipeline.java:643)
> 	at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:4
> 80)
> 	at
>
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> 	at
>
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
> 	at
>
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:43
> 2)
> 	at
>
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC
> onnection(Http11Protocol.java:386)
> 	at
>
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:53
> 4)
> 	at
>
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool
> .java:530)
> 	at java.lang.Thread.run(Thread.java:536)
> root cause 
> java.lang.VerifyError: Cannot inherit from final
> class
> 	at java.lang.ClassLoader.defineClass0(Native
> Method)
> 	at
>
java.lang.ClassLoader.defineClass(ClassLoader.java:502)
> 	at
>
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
> 	at
>
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappCla
> ssLoader.java:1664)
> 	at
>
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader
> .java:953)
> 	at
>
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader
> .java:1394)
> 	at
>
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader
> .java:1274)
> 	at
>
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:315)
> 	at
>
org.apache.xerces.impl.XMLNSDocumentScannerImpl.createContentDispatcher(
> Unknown Source)
> 	at
>
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.(XMLDocumentFragme
> ntScannerImpl.java:249)
> 	at
>
org.apache.xerces.impl.XMLDocumentScannerImpl.(XMLDocumentScannerImpl.ja
> va:245)
> 	at
>
org.apache.xerces.impl.XMLNSDocumentScannerImpl.(Unknown
> Source)
> 	at
>
org.apache.xerces.parsers.IntegratedParserConfiguration.createDocumentSc
> anner(Unknown Source)
> 	at
>
org.apache.xerces.parsers.DTDConfiguration.(DTDConfiguration.java:367)
> 	at
>
org.apache.xerces.parsers.StandardParserConfiguration.(StandardParserCon
> figuration.java:198)
> 	at
>
org.apache.xerces.parsers.IntegratedParserConfiguration.(Unknown
> Source)
> 	at
>
org.apache.xerces.parsers.IntegratedParserConfiguration.(Unknown
> Source)
> 	at
>
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
> 	at
>
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorA
> ccessorImpl.java:39)
> 	at
>
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingCons
> tructorAccessorImpl.java:27)
> 	at
>
java.lang.reflect.Constructor.newInstance(Constructor.java:274)
> 	at java.lang.Class.newInstance0(Class.java:306)
> 	at java.lang.Class.newInstance(Class.java:259)
> 	at
>
org.apache.xerces.util.ObjectFactory.newInstance(ObjectFactory.java:266)
> 	at
>
org.apache.xerces.util.ObjectFactory.findJarServiceProvider(ObjectFactor
> y.java:360)
> 	at
>
org.apache.xerces.util.ObjectFactory.createObject(ObjectFactory.java:185
> )
> 	at
>
org.apache.xerces.util.ObjectFactory.createObject(ObjectFactory.java:120
> 
=== message truncated ===


__________________________________________________
Do you Yahoo!?
Yahoo! Web Hosting - establish your business online
http://webhosting.yahoo.com

---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-j-user-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-j-user-help@xml.apache.org