¿Cómo habilitar el controlador de base de datos mysql en tomcat 7?

Estoy creando un servicio web de descanso usando JAX-RS. las clases de back-end se ejecutan normalmente cuando lo ejecuto como una aplicación java. Pero cuando lo ejecuto en el servidor e intento acceder a un recurso como:

http://localhost:8080/WS/rest/metric/10  

Me sale la siguiente excepción:

ERROR [http-bio-8080-exec-3] (Database.java:42) - Exception occured: No suitable driver found for jdbc:mysql://localhost:3306/
ERROR [http-bio-8080-exec-3] (Database.java:42) - Exception occured: No suitable driver  found for jdbc:mysql://localhost:3306/
Jun 19, 2012 11:27:29 AM com.sun.jersey.spi.container.ContainerResponse  mapMappableContainerException
SEVERE: The RuntimeException could not be mapped to a response, re-throwing to the HTTP  container
java.lang.NullPointerException
.....

Las dos primeras líneas son registros que tengo en mi método de conexión de base de datos:

public static Connection connect()
{
    try
    {
        return DriverManager.getConnection(domain, username, password);
    }

    catch (Exception e)
    {
        logger.error("Exception occured: "+ e.getMessage());
        return null;
    }
}

el hecho de no encontrar el controlador está causando NullPointerException. Copié el archivo jar del controlador a WEB-INF / lib. Pero aún así el problema es el mismo.

Aquí está el rastro de excepción completo:

 Jun 19, 2012 11:27:29 AM com.sun.jersey.spi.container.ContainerResponse mapMappableContainerException
SEVERE: The RuntimeException could not be mapped to a response, re-throwing to the HTTP container
java.lang.NullPointerException
at com.hp.silas.dao.EstimationDAOImpl.getLatestResult(EstimationDAOImpl.java:126)
at com.hp.silas.ws.EstimationResource.getLastEstimation(EstimationResource.java:40)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$TypeOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:185)
at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288)
at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1483)
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1414)
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1363)
at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1353)
at com.sun.jersey.spi.container.servlet.WebComponent.service(WebComponent.java:414)
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:537)
at com.sun.jersey.spi.container.servlet.ServletContainer.service(ServletContainer.java:708)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:999)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Respuesta 1

La parte que faltaba era registrar el controlador usando esta línea:

Class.forName("com.mysql.jdbc.Driver"); 

entonces el método de conexión se verá así:

public static Connection connect()
{
    try
    {
        Class.forName("com.mysql.jdbc.Driver");   
        return DriverManager.getConnection(domain, username, password);
    }

    catch (Exception e)
    {
        logger.error("Exception occured: "+ e.getMessage());
        return null;
    }
}
Respuesta: 2

Tengo una lista de matrices con el nombre de quién paga algo, y otra lista de matrices con el costo de cada pago. Por ejemplo: nameArray = Nicola, Raul, Lorenzo, Raul, Raul, Lorenzo, Nicola priceArray = ...

Estoy tratando de desarrollar un diagrama de Gantt en iReport, pero el rango de tiempo se muestra en meses. Quiero que sea en fecha o semana. ¿Es esto posible en iReport?

Este método en la clase BitSet se usa para devolver el índice del primer bit que se establece en false import java.util.BitSet; clase pública BitSetDemo {public static void main (String [] args) {...

Tengo un requisito de pasar parámetros de línea de comandos al montar .dmg en MAC para esto. He usado JNLP, que está compuesto dinámicamente usando JSP con tipo de contenido de respuesta como application / x-java -...