Embedded Derby - Class not Found Exception

Estou tentando utilizar o derby em um projeto GWT meu, acontece que
quando estou fazendo a chamada do método Class.forName(driver),
ocorre um erro de Class not Found.
Estou usando o plugin do derby no Eclipse, portanto ele mesmo adiciona
as libs ao projeto.
Ao tentar no command window o comando java org.apache.derby.tools.sysinfo
acontece o mesmo problema, mesmo tendo setado as varíaveis de ambiente,
não sei se os erros são relacionados.

Alguma solução para o problema relatado??

Dependendo da forma como você vai usar o Derby, devem ser usados JAR’s diferentes. De forma bem breve:

  • Se sua aplicação vai se comunicar com um servidor que roda Derby, use o arquivo derbyclient.jar;

  • Se sua aplicação vai executar o Derby de forma embutida, como parece ser o seu caso, use o arquivo derby.jar;

  • Se você quer fazer com que máquina atue como servidor do Derby, use os arquivos derby.jar, derbyclient.jar, derbynet.jar, derbyrun.jar e derbytools.jar.

Assim, é bem provável que você tenha de incluir manualmente alguns arquivos JAR na sua aplicação.

Mesmo o plugin do Derby já incluindo os Jar’s eu tenho que incluir manualmente como “external libraries”?

Não uso o plugin do Derby, recomendo que você verifique quais são os arquivos JAR que ele inclui, e eventualmente inclua os que faltarem.

Ele inclui derby.jar, derbyclient.jar, derbynet.jar e derbytools.jar.
Ou seja, não poderia dar o erro de Class not Found.

Inclua o stack trace para analisarmos.

The server is running at http://localhost:8080/
17/09/2009 16:21:50 com.google.appengine.tools.development.ApiProxyLocalImpl log
SEVERE: [1253204510561000] javax.servlet.ServletContext log: Exception while dispatching incoming RPC call
com.google.gwt.user.server.rpc.UnexpectedException: Service method ‘public abstract com.teste.cge.client.OutputBeanPlano com.teste.cge.client.GreetingService.greetServerPlano()’ threw an unexpected exception: java.lang.ExceptionInInitializerError
at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:360)
at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:546)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:166)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost(RemoteServiceServlet.java:86)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:124)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:54)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:313)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:313)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:844)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:644)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
Caused by: java.lang.ExceptionInInitializerError
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at com.teste.cge.server.Conexao.(Conexao.java:25)
at com.teste.cge.server.Conexao.getInstance(Conexao.java:20)
at com.teste.cge.server.DaoPlano.(DaoPlano.java:46)
at com.teste.cge.server.GreetingServiceImpl.greetServerPlano(GreetingServiceImpl.java:25)
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.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:527)
… 27 more
Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission modifyThreadGroup)
at java.security.AccessControlContext.checkPermission(Unknown Source)
at java.security.AccessController.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPermission(Unknown Source)
at com.google.appengine.tools.development.DevAppServerFactory$CustomSecurityManager.checkPermission(DevAppServerFactory.java:128)
at com.google.appengine.tools.development.DevAppServerFactory$CustomSecurityManager.checkAccess(DevAppServerFactory.java:155)
at java.lang.ThreadGroup.checkAccess(Unknown Source)
at java.lang.Thread.init(Unknown Source)
at java.lang.Thread.(Unknown Source)
at org.apache.derby.impl.services.monitor.BaseMonitor.getDaemonThread(Unknown Source)
at org.apache.derby.impl.services.monitor.FileMonitor.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.derby.impl.services.monitor.FileMonitor.getDaemonThread(Unknown Source)
at org.apache.derby.impl.services.monitor.BaseMonitor.runWithState(Unknown Source)
at org.apache.derby.impl.services.monitor.FileMonitor.(Unknown Source)
at org.apache.derby.iapi.services.monitor.Monitor.startMonitor(Unknown Source)
at org.apache.derby.iapi.jdbc.JDBCBoot.boot(Unknown Source)
at org.apache.derby.jdbc.EmbeddedDriver.boot(Unknown Source)
at org.apache.derby.jdbc.EmbeddedDriver.(Unknown Source)
… 38 more