gmantele / vollt

Java libraries implementing the IVOA protocol: ADQL, UWS and TAP
http://cdsportal.u-strasbg.fr/taptuto/
29 stars 28 forks source link

Empty string as table name in TAP_SCHEMA.tables or columns prevents application to run #131

Open gmella opened 2 years ago

gmella commented 2 years ago

Ok this is not a normal situation however this may be improved to be ignored so the service is back again for valid tables ?

Anyway, this is more an opportunity to give a thanks for this nice tool.

Here is the stacktrace ;) `Type Exception Report

Message Impossible to initialize the TAP service!

Description The server encountered an unexpected condition that prevented it from fulfilling the request.

Exception

javax.servlet.ServletException: Impossible to initialize the TAP service! tap.config.ConfigurableTAPServlet.init(ConfigurableTAPServlet.java:131) org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:492) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:1025) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:452) org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1201) org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:654) org.apache.tomcat.util.net.AprEndpoint$SocketWithOptionsProcessor.run(AprEndpoint.java:2468) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) java.lang.Thread.run(Thread.java:748)

Root Cause

java.lang.NullPointerException: Missing ADQL name! adql.db.DBIdentifier.setADQLName(DBIdentifier.java:160) tap.metadata.TAPTable.setADQLName(TAPTable.java:337) adql.db.DBIdentifier.(DBIdentifier.java:81) tap.metadata.TAPTable.(TAPTable.java:180) tap.metadata.TAPTable.(TAPTable.java:229) tap.metadata.TAPTable.(TAPTable.java:276) tap.db.JDBCConnection.loadTables(JDBCConnection.java:1202) tap.db.JDBCConnection.getTAPSchema(JDBCConnection.java:992) tap.config.ConfigurableServiceConnection.initMetadata(ConfigurableServiceConnection.java:533) tap.config.ConfigurableServiceConnection.(ConfigurableServiceConnection.java:276) tap.config.ConfigurableTAPServlet.init(ConfigurableTAPServlet.java:123) org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:492) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:1025) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:452) org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1201) org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:654) org.apache.tomcat.util.net.AprEndpoint$SocketWithOptionsProcessor.run(AprEndpoint.java:2468) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) java.lang.Thread.run(Thread.java:748)

Note The full stack trace of the root cause is available in the server logs.`