Erro estranho na configuração

Olá, sou novato aqui no fórum e novato em programação java para aplicações web.

Ta acontecendo um erro que não consigo resolver de forma satisfatória.

java.lang.IllegalArgumentException: Document base F:\Tomcat 5.5\webapps\DBTest does not exist or is not a readable directory at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:140) at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:3848) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4019) at org.apache.catalina.manager.ManagerServlet.start(ManagerServlet.java:1175) at org.apache.catalina.manager.HTMLManagerServlet.start(HTMLManagerServlet.java:527) at org.apache.catalina.manager.HTMLManagerServlet.doGet(HTMLManagerServlet.java:104)

Eu consigo resolver este problema gerando o *.war da aplicação e fazendo o deploy da mesma no diretório CARALINA_HOME/webapps.

Mas isso não resolve de forma satisfatória meu problema pois estou utilizando o Eclipse com o SYSDEO plugin, e todas as minha outras aplicações web rodam direto do meu workspace sem precisar fazer o deploy pro webapps e eu não quero perder essa facilidade além do que, quando eu gero o .war da aplicação o eclipse não exporta os *.class junto.

Como eu faço para configurar o Eclipse para que ele exporte corretamente toda a minha aplicação, inclusive os .class, em um .war ?

Ou, como eu configuro o Tomcat de forma que ele leia um Context path fora de CATALINA_HOME/webapp ?

Mesmo resolvendo o problema, ainda da erro na conexão com meu banco de dados SQL.

server.xml:

	 <Context path="/DBTest" docBase="DBTest"
        debug="5" reloadable="true" crossContext="true">       
 
	   <Logger className="org.apache.catalina.logger.FileLogger"
              prefix="localhost_DBTest_log." suffix=".txt"
              timestamp="true"/>
 
	   <Resource name="jdbc/TestDB"
                auth="Container"
                type="javax.sql.DataSource"/>
 
	   <ResourceParams name="jdbc/TestDB">
	     <parameter>
      	 <name>factory</name>
	       <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
	     </parameter>
 	
	     <parameter>
      	 <name>maxActive</name>
	       <value>4</value>
 	    </parameter>
 
	     <parameter>
      	 <name>maxIdle</name>
	       <value>3</value>
	     </parameter>
     
	     <parameter>
      	 <name>maxWait</name>
	       <value>10000</value>
	     </parameter>
 	     
 	    <parameter>
	      <name>username</name>
	      <value>user</value>
	    </parameter>

	    <parameter>
	      <name>password</name>
      	<value>user</value>
	    </parameter>      

 	    <parameter>
		<name>driverClassName</name>
	      <value>org.gjt.mm.mysql.Driver</value>
	    </parameter>

	    <parameter>
      	<name>url</name>
	      <value>jdbc:mysql://localhost:3306/test?autoReconnect=true</value>
     	    </parameter>
   </ResourceParams>
 </Context>

      </Host>

    </Engine>

  </Service>

</Server>

o web.xml da aplicação:

<?xml version="1.0" encoding="ISO-8859-1"?>

  <!DOCTYPE web-app PUBLIC
	"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
	"http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
	<display-name>DBTest</display-name>
  
	<description>MySQL Test App</description>	
  <!-- Standard Action Servlet Configuration -->
  <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
      <param-name>config</param-name>
      <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
    <load-on-startup>2</load-on-startup>
 </servlet>


  <!-- Standard Action Servlet Mapping -->
  <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>


  <!-- The Usual Welcome File List -->
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  
  <taglib>
       <taglib-uri>http://java.sun.com/jsp/jstl/core</taglib-uri>
       <taglib-location> /WEB-INF/tlds/c.tld </taglib-location>
  </taglib>
   
  <taglib>
       <taglib-uri>http://java.sun.com/jsp/jstl/sql</taglib-uri>
       <taglib-location>/WEB-INF/tlds/sql.tld</taglib-location>

  </taglib>
  	<resource-ref>
  		<description>DB Connection</description>
	    <res-ref-name>jdbc/TestDB</res-ref-name>
    	<res-type>javax.sql.DataSource</res-type>
	    <res-auth>Container</res-auth>
	</resource-ref>
</web-app>

Estou utilizando uma generelização código fonte para os JSPs e JAVAs do tópico
http://www.guj.com.br/posts/list/48649.java

Meu framework:
Eclipse 3.2 com o SYSDEO plugin
Tomcat 5.5
MySQL 5.1

Agradeço qualquer ajuda.

Ta dando esse erro também:

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: Unable to get connection, DataSource invalid: "org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'"
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:512)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

root cause

javax.servlet.ServletException: Unable to get connection, DataSource invalid: "org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'"
	org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:843)
	org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:776)
	org.apache.jsp.pages.testDB_jsp._jspService(testDB_jsp.java:89)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:334)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

Ele não esta achando as configurações da minha conexão com o MySQL mas elas estão definidas no server.xml.

[quote=Bill_BsB]Ta dando esse erro também:


javax.servlet.ServletException: Unable to get connection, DataSource invalid: "org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'"

Ele não esta achando as configurações da minha conexão com o MySQL mas elas estão definidas no server.xml.
[/quote]
Com relaçao a esse dá uma olhada aqui
http://www.crazysquirrel.com/computing/java/connection-pooling.jspx
talvez te ajude

Obrigado pela dica Furutani!
Vou tentar aqui as modificações, e se funcionar eu aviso.

aee mano esta acontecendo o mesmo erro comigo, vc conseguiu arrumar, pode postar??
vlws amigo!!

pelo q o erro do Datasourse esta informando nem a url nem a classe do driver foram informados…

Ae, apareceu esse problema denovo um dia desses e resolvi de um jeito meio inusitado.
No server.xml eu modifiquei o a tag Context colocando todos os valores como atributos da tag e tava dando problema com a factory.
Dai eu coloquei algumas coisas como atributos e outras como parametros.
Eu vou postar o código assim q eu tiver com ele em mãos.

Como eu disse a cima, aqui vai a minha solução inusitada para o erro do DataSource do server.xml

<Context path="/OptimediaSpiaTV" docBase="OptimediaSpiaTV"
                                debug="5" reloadable="true" crossContext="true">                    
                    <Resource name="jdbc/dao"
                              auth="Container"
                              type="javax.sql.DataSource"                              
                              maxActive="10"
                              maxIdle="3"
                              maxWait="10000"
                              username="root"
                              password="1234"
                              driverClassName="com.mysql.jdbc.Driver"
                              url="jdbc:mysql://localhost:3306/optimediaspiatv?autoReconnect=true"
                              />    
                    <ResourceParams name="jdbc/dao">
                        <parameter>
                            <name>factory</name>
                            <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
                        </parameter>
                        
                        <parameter>
                            <name>maxActive</name>
                            <value>10</value>
                        </parameter>
                        
                        <parameter>
                            <name>maxIdle</name>
                            <value>3</value>
                        </parameter>
                        
                        <parameter>
                            <name>maxWait</name>
                            <value>10000</value>
                        </parameter>
                        
                        <!-- MySQL dB username and password for dB connections -->
                        <parameter>
                            <name>username</name>
                            <value>root</value>
                        </parameter>
                        <parameter>
                            <name>password</name>
                            <value>1234</value>
                        </parameter>
                        
                        <!-- Class name for the official MySQL Connector/J driver -->
                        <parameter>
                            <name>driverClassName</name>
                            <value>com.mysql.jdbc.Driver</value>
                        </parameter>
                        
                        <parameter>
                            <name>url</name>
                            <value>jdbc:mysql://localhost:3306/optimediaspiatv?autoReconnect=true</value>
                        </parameter>
                    </ResourceParams>    
                </Context>

O que tava dando erro era no parâmetro “factory”. Ele tem que ficar definido na tag e não como atributo de , dai o resto ficou igual.
Como isso é possível? Não faço a menor idéia mas só sei que ta funcionando.
Minha versão do struts é a 1.2.9 que vem com o NetBeans.

Espero que ajude alguém.