cancel
Showing results for 
Search instead for 
Did you mean: 

Enter a table name error in OLEDB query

Former Member
0 Kudos

Hi,

I have created an OLEDB query to get PI system data, and getting following exception:

com.sap.xmii.Illuminator.logging.LHException: Enter a table name

Full exception:

com.sap.xmii.Illuminator.logging.LHException: Enter a table name

[EXCEPTION]

com.sap.xmii.Illuminator.logging.LHException: com.sap.xmii.Illuminator.logging.LHException: Enter a table name

at com.sap.xmii.Illuminator.connectors.AbstractConnector.processRequest(AbstractConnector.java:140)

at com.sap.xmii.Illuminator.server.QueryEngine.run(QueryEngine.java:65)

at com.sap.xmii.Illuminator.server.QueryEngine.run(QueryEngine.java:46)

at com.sap.xmii.Illuminator.services.handlers.IlluminatorService.processRequest(IlluminatorService.java:154)

at com.sap.xmii.Illuminator.services.ServiceManager.run(ServiceManager.java:69)

at com.sap.xmii.servlet.Illuminator.service(Illuminator.java:68)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)

at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:202)

at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:103)

at com.sap.xmii.system.SecurityFilter.doFilter(SecurityFilter.java:117)

at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:79)

at com.sap.xsrf.filter.XSRFProtectorFilter.doFilter(XSRFProtectorFilter.java:62)

at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:79)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:441)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:210)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:441)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:430)

at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:38)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:81)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:278)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:81)

at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)

at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)

at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)

at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.SessionSizeFilter.process(SessionSizeFilter.java:26)

at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:57)

at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:43)

at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)

at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)

at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:475)

at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:269)

at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:56)

at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)

at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)

at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:328)

Caused by: com.sap.xmii.Illuminator.logging.LHException: Enter a table name

at com.sap.xmii.Illuminator.connectors.OLEDB.ColumnListProcessor.processRequest(ColumnListProcessor.java:27)

at com.sap.xmii.Illuminator.connectors.OLEDB.OLEDB.doProcessRequest(OLEDB.java:109)

at com.sap.xmii.Illuminator.connectors.AbstractConnector.processRequest(AbstractConnector.java:112)

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

To give more details on this, when I execute the QueryTemplate from WorkBench it runs just fine. But the exception is thrown when the QueryTemplate is used in a Grid.

jcgood25
Active Contributor
0 Kudos

Do you have display columns mapped into your iGrid display template?

You can also see the activities of the applet at runtime (in the java console) by temporarily adding <PARAM NAME="Trace" VALUE="true"> into your applet definition.

Former Member
0 Kudos

Yes, I do have column names mapped to my iGrid template.

jcgood25
Active Contributor
0 Kudos

A bit strange that the query template works fine, but not in an iGrid with mapped column names.  The Trace will help you see the call for data, and you can also use "DEBUG" instead of "TRACE" to see more details as needed to help troubleshoot.

Seeing the "connectors.OLEDB.ColumnListProcessor" mentioned in the stack trace, I am also wondering if perhaps this is actually being caused by the Workbench itself when it does the namespace browsing in the panel for showing a pick list of tables and columns.  The column list would require a Table Name in order to show the list of available columns, but if no table name is selected, this would also be missing and the error message would make perfect sense, and relatively harmless because it would only be a design time / workbench issue putting errors in the log.

Former Member
0 Kudos

I am getting below in my Trace:

What interesting is I can not see Param.1 being set for QueryTemplate. I have set the Param.1 in the object in my irpt like this, <param name="Param.1" value="0">

<iGridName> [SYSTEM] - Creating NEW instance of logger (debug=false, trace=true)

<iGridName> [TRACE] - Set query template to <One Xacute Query>

<iGridName> [TRACE] - Set display template to <iGridName>

<iGridName> [TRACE] - setAsyncRefresh: false

<iGridName> [TRACE] - Post Data : &QueryTemplate=<QueryTemplate>&Trace=true&Param.2=05-29-2015+07%3A00%3A00&DateFormat=MM-dd-yyyy+HH%3Amm%3Ass&Content-Type=raw/xmii

<iGridName> [TRACE] - Query Result [ExecutionTime=606.041288 ms, SD=null, ED=null]

<iGridName> [TRACE] - Post Data : &QueryTemplate=<QueryTemplate>&Trace=true&Param.2=05-29-2015+07%3A00%3A00&DateFormat=MM-dd-yyyy+HH%3Amm%3Ass&Content-Type=raw/xmii

<iGridName> [TRACE] - Query Result [ExecutionTime=611.494908 ms, SD=null, ED=null]

<iGridName> [TRACE] - Post Data : &QueryTemplate=<QueryTemplate>&Trace=true&Param.2=05-29-2015+07%3A00%3A00&DateFormat=MM-dd-yyyy+HH%3Amm%3Ass&Content-Type=raw/xmii

<iGridName> [TRACE] - Query Result [ExecutionTime=387.752125 ms, SD=null, ED=null]

<iGridName> [TRACE] - Post Data : &QueryTemplate=<QueryTemplate>&Trace=true&Param.2=05-29-2015+07%3A00%3A00&DateFormat=MM-dd-yyyy+HH%3Amm%3Ass&Content-Type=raw/xmii

<iGridName> [TRACE] - Query Result [ExecutionTime=496.739454 ms, SD=null, ED=null]

jcgood25
Active Contributor
0 Kudos

Assuming you have no JavaScript attempting to altering anything at runtime, perhaps it makes sense to share the full APPLET text.

Former Member
0 Kudos

Here is the APPLET text:

<object name="xyz" codebase="/XMII/Classes" code="iGrid" archive="illum8.zip"

            width="100%" height="100%">

            <param name="QueryTemplate" value="<XacuteQuery>">

            <param name="DisplayTemplate" value="<Grid>">

            <param name="Trace" value="true">

            <param name="Param.1" value="0">

            <param name="Param.2" value="05-29-2015 07:00:00">

</object>

jcgood25
Active Contributor
0 Kudos

If '0" is saved in your querytemplate as a default setting for Param.1 then I would assume this is expected behavior in the trace window - it is QueryTemplate + changes (and that param would be excluded).  Make it a '1' and you'll likely see it in the trace.

Unrelated to your issue:  I'm not sure how the 100% height/width dimensions will work - combinations of browsers and JRE versions have historically given some rendering challenges, especially if the user resizes the screen and the applet needs to adjust using percentages instead of fixed pixels.

Obviously we still haven't solved your problem...

Assuming you aren't having some form of caching issue (simple test would be from another computer or browser), I see that you have protected some of the names but refer to it as an XacuteQuery, so that may also be adding another dimension of complexity for troubleshooting...

With your QT mapped into your DT, testing the applet from the WB and then doing a view source in the browser's html will give you a nice comparison with the above text to make sure it's not just a simple typo.  (the page can also be saved as a test html or irpt file and run standalone just as a sanity check - of course this only make sense if the applet renders as expected when testing from the WB).