tomee-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From freeway <...@qad.com>
Subject Webdav loading error on Tomcat startup
Date Fri, 22 Jan 2010 19:50:58 GMT

When starting Tomcat 5.5 with embedded OpenEJB 3.1.2 deployed along with a
number of legacy webapps, the following error is raised in the Tomcat log as
OpenEJB scans the webapps.

ERROR - Unable to process annotation in /myWebapp: Exception: Unable to load
servlet class: org.apache.catalina.servlets.WebdavServlet:
org.apache.catalina.servlets.WebdavServlet
org.apache.openejb.OpenEJBException: Unable to load servlet class:
org.apache.catalina.servlets.WebdavServlet:
org.apache.catalina.servlets.WebdavServlet
        at
org.apache.openejb.config.AnnotationDeployer$ProcessAnnotatedBeans.deploy(AnnotationDeployer.java:849)
        at
org.apache.openejb.config.AnnotationDeployer.deploy(AnnotationDeployer.java:202)
        at
org.apache.openejb.tomcat.catalina.TomcatWebAppBuilder.createWebModule(TomcatWebAppBuilder.java:662)
        at
org.apache.openejb.tomcat.catalina.TomcatWebAppBuilder.loadApplication(TomcatWebAppBuilder.java:541)
        at
org.apache.openejb.tomcat.catalina.TomcatWebAppBuilder.start(TomcatWebAppBuilder.java:242)
        at
org.apache.openejb.tomcat.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:58)
        at ...



The above webapp does not require or use OpenEJB at all, but does use
Tomcat's Webdav classes.  Here are the relevant settings from its web.xml
file, which I believe are standard for webapps using Webdav.

  <servlet>
    <servlet-name>webdav</servlet-name>
   
<servlet-class>org.apache.catalina.servlets.WebdavServlet</servlet-class>
    <init-param>
      <param-name>debug</param-name>
      <param-value>0</param-value>
    </init-param>
    <init-param>
      <param-name>listings</param-name>
      <param-value>true</param-value>
    </init-param>
    <!-- Uncomment this to enable read and write access -->
    <init-param>
      <param-name>readonly</param-name>
      <param-value>false</param-value>
    </init-param>
    <!--load-on-startup>1</load-on-startup-->
  </servlet>
  ...
  <servlet-mapping>
    <servlet-name>webdav</servlet-name>
    <url-pattern>/webdav/*</url-pattern>
  </servlet-mapping>


The Tomcat Webdav classes are deployed in ${catalina.base}/server/lib/,
which I understand implies that they are accessed only by the Catalina
classloader and not available to webapps.  However, the above error is
raised only when OpenEJB is deployed, and regardless whether or not the
OpenEJB listener has been installed in the environment.

How can I prevent the above error from occurring, through either OpenEJB or
other webapp configuration?


Thx in advance,
Fred

-- 
View this message in context: http://n4.nabble.com/Webdav-loading-error-on-Tomcat-startup-tp1117836p1117836.html
Sent from the OpenEJB User mailing list archive at Nabble.com.

Mime
View raw message