[ https://issues.apache.org/jira/browse/DERBY-2367?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12475357 ]
Raymond H commented on DERBY-2367: ---------------------------------- Thanks guys, for giving me the jumstart: changing: public String getCanonicalServiceName(String name) throws StandardException { String protocolLeadIn = getType() + ":"; int colon = name.indexOf( ':'); if( colon > 1) // Subsubprotocols must be at least 2 characters long to: public String getCanonicalServiceName(String name) throws StandardException { String protocolLeadIn = getType() + ":"; int colon = name.indexOf( ':'); if( colon > 128) // Subsubprotocols must be at least 2 characters long in org.apache.derby.impl.services.monitor.StorageFactoryService fixes the problem. Of course this is only a fix in our case, and might not make people happy which use subsubprotocols... > Derby fails to connect to a formerly properly created DB on NetWare > ------------------------------------------------------------------- > > Key: DERBY-2367 > URL: https://issues.apache.org/jira/browse/DERBY-2367 > Project: Derby > Issue Type: Bug > Components: JDBC > Affects Versions: 10.2.2.0 > Environment: Novell NetWare 6.0 Novell NetWare 6.5 > Reporter: Raymond H > > We try to use Derby inside a Tomcat WebAPP on NetWare which seemed to work > pretty good at first. > But as soon as we restart the server, Derby failed to connect to the DB: > This is the contents of the derby log file: > Apache Derby Network Server - 10.2.2.0 - (485682) started and ready to accept > connections on port 1527 at 2007-02-21 23:28:43.687 GMT > ---------------------------------------------------------------- > 2007-02-21 23:29:32.577 GMT: > Booting Derby version The Apache Software Foundation - Apache Derby - > 10.2.2.0 - (485682): instance c013800d-0110-e6a2-a26e-000000319ee0 > on database directory > SYS:\tomcat\4\webapps\RetainServer\WEB-INF\ebdb\RetainDB > Database Class Loader started - derby.database.classpath='' > 2007-02-21 23:38:38.927 GMT: > Shutting down instance c013800d-0110-e6a2-a26e-000000319ee0 > ---------------------------------------------------------------- > Here is the exception we get: > org.apache.derby.client.am.SqlException: DERBY SQL error: SQLCODE: -1, > SQLSTATE: XJ040, SQLERRMC: Failed to start database > '\tomcat\4\webapps\RetainServer\WEB-INF\ebdb\RetainDB', see the next > exception for details.::SQLSTATE: XJ001Java exception: ': > java.lang.NullPointerException'. > at org.apache.derby.client.am.Connection.completeSqlca(Unknown Source) > at > org.apache.derby.client.net.NetConnectionReply.parseRdbAccessFailed(Unknown > Source) > at > org.apache.derby.client.net.NetConnectionReply.parseAccessRdbError(Unknown > Source) > at > org.apache.derby.client.net.NetConnectionReply.parseACCRDBreply(Unknown > Source) > at > org.apache.derby.client.net.NetConnectionReply.readAccessDatabase(Unknown > Source) > at > org.apache.derby.client.net.NetConnection.readSecurityCheckAndAccessRdb(Unknown > Source) > at > org.apache.derby.client.net.NetConnection.flowSecurityCheckAndAccessRdb(Unknown > Source) > at > org.apache.derby.client.net.NetConnection.flowUSRIDPWDconnect(Unknown Source) > at org.apache.derby.client.net.NetConnection.flowConnect(Unknown Source) > at org.apache.derby.client.net.NetConnection.(Unknown Source) > at > org.apache.derby.client.net.ClientJDBCObjectFactoryImpl.newNetConnection(Unknown > Source) > at org.apache.derby.jdbc.ClientDriver.connect(Unknown Source) > at java.sql.DriverManager.getConnection(DriverManager.java:512) > at java.sql.DriverManager.getConnection(DriverManager.java:171) > at com.maintainet.cfg.ASConfig.getEbdCon(ASConfig.java:88) > at org.apache.jsp.db_jsp._jspService(db_jsp.java:52) > at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > at > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:210) > at > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295) > at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2422) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) > at > org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:163) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > 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.invokeNext(StandardPipeline.java:643) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) > at > org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:199) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:828) > at > org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:700) > at > org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:584) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683) > at java.lang.Thread.run(Thread.java:534) > Some background info: > We use the network server variant of Derby. > The first ( creating ) connect is always successful. > The folders log and seg0 are created and populated successfully. > We can create tables and data without a problem. > We checked that by copying the folder to windows and connecting > and seeing our data being there. > But all other ( i.e. a second ) connection attempts to an existing DB foilder > fail > with forementioned exception. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.