simpleFPL command copytable String index out of range: -8
Moderators: Jon, Steve, Ian, Dave
-
- Ebase User
- Posts: 12
- Joined: Fri Jul 21, 2017 1:49 pm
simpleFPL command copytable String index out of range: -8
Hi all,
hope you can help.
Copy and pasted a table in the Tables area and really nothing else.
No changes made
I want to copy "table a" contents to "table b" using the
copytable command.
And running the script gives above error ?
ebase version 4.5.1.
thank you !
hope you can help.
Copy and pasted a table in the Tables area and really nothing else.
No changes made
I want to copy "table a" contents to "table b" using the
copytable command.
And running the script gives above error ?
ebase version 4.5.1.
thank you !
0 x
-
- Ebase User
- Posts: 12
- Joined: Fri Jul 21, 2017 1:49 pm
-
- Moderator
- Posts: 1342
- Joined: Wed Sep 12, 2007 12:49 pm
-
- Ebase User
- Posts: 12
- Joined: Fri Jul 21, 2017 1:49 pm
-
- Moderator
- Posts: 1342
- Joined: Wed Sep 12, 2007 12:49 pm
Do you have a Java stacktrace - there should be one on the server log at the time of the error. I'm guessing that the problem is caused by a reference to an unhandled column type. Do you have any old (V3) button columns in the table? I don't think copy/paste is relevant. If you can't fix it, you can export the form and send it to support@ebasetech.com and we'll have a look.
0 x
-
- Ebase User
- Posts: 12
- Joined: Fri Jul 21, 2017 1:49 pm
ok many thanks Jon
An extract from the server log is below.
*Observation*: when you copytable and there is a resource on the table I am having this problem. when you create the table to use as the copytable destination for copytable (simply using mouse copy and paste in the tables window), I notice the Resource property is *not* Copied and then when you try to set the Resource property to match the soruce table, it is not on the list or available. If you troubleshoot this and do a copytable of the copy above by clearing its Resource property and then copy/paste and then copytable using that, it works. Is the Resource property possibly related to this error ?
I can send Form export maybe after you look at this if needed, thanks again.
Log extract:
Mon Jul 24 10:51:10: ERROR Unexpected error occurred
java.lang.StringIndexOutOfBoundsException: String index out of range: -8
at java.lang.String.substring(Unknown Source)
at com.ebasetech.ufs.runtime.RuntimeTableHelper.getColumnsByName(RuntimeTableHelper.java:71)
at com.ebasetech.ufs.runtime.RuntimeTableHelper.copyTableData(RuntimeTableHelper.java:16)
at com.ebasetech.ufs.validation.CopyTableCommand.execute(CopyTableCommand.java:45)
at com.ebasetech.ufs.validation.CommandProcessor.process(CommandProcessor.java:2924)
at com.ebasetech.ufs.runtime.events.CommandTextNode.execute(CommandTextNode.java:107)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.validation.Node.execute(Node.java:623)
at com.ebasetech.ufs.validation.Root.execute(Root.java:44)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.ScriptNode.execute(ScriptNode.java:30)
at com.ebasetech.ufs.runtime.events.EventScriptNode.execute(EventScriptNode.java:35)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.BaseEventNode.execute(BaseEventNode.java:32)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.Request.execute(Request.java:436)
at com.ebasetech.ufs.runtime.Request.execute(Request.java:405)
at com.ebasetech.ufs.runtime.Request._execute(Request.java:343)
at com.ebasetech.ufs.runtime.Request.execute(Request.java:308)
at formservlets.FormProcessingUtil.executeRequest(FormProcessingUtil.java:480)
at formservlets.FormProcessor.performExecution(FormProcessor.java:160)
at formservlets.FormProcessor.processRequest(FormProcessor.java:147)
at formservlets.FormProcessor.runForm(FormProcessor.java:45)
at formservlets.FormClient.process(FormClient.java:112)
at formservlets.FormClient.doGet(FormClient.java:46)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at formservlets.EbaseFilter.processHtmlRequest(EbaseFilter.java:291)
at formservlets.EbaseFilter.processRequest(EbaseFilter.java:197)
at formservlets.EbaseFilter.performFilter(EbaseFilter.java:141)
at formservlets.EbaseFilter.doFilter(EbaseFilter.java:94)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2517)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2506)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)
An extract from the server log is below.
*Observation*: when you copytable and there is a resource on the table I am having this problem. when you create the table to use as the copytable destination for copytable (simply using mouse copy and paste in the tables window), I notice the Resource property is *not* Copied and then when you try to set the Resource property to match the soruce table, it is not on the list or available. If you troubleshoot this and do a copytable of the copy above by clearing its Resource property and then copy/paste and then copytable using that, it works. Is the Resource property possibly related to this error ?
I can send Form export maybe after you look at this if needed, thanks again.
Log extract:
Mon Jul 24 10:51:10: ERROR Unexpected error occurred
java.lang.StringIndexOutOfBoundsException: String index out of range: -8
at java.lang.String.substring(Unknown Source)
at com.ebasetech.ufs.runtime.RuntimeTableHelper.getColumnsByName(RuntimeTableHelper.java:71)
at com.ebasetech.ufs.runtime.RuntimeTableHelper.copyTableData(RuntimeTableHelper.java:16)
at com.ebasetech.ufs.validation.CopyTableCommand.execute(CopyTableCommand.java:45)
at com.ebasetech.ufs.validation.CommandProcessor.process(CommandProcessor.java:2924)
at com.ebasetech.ufs.runtime.events.CommandTextNode.execute(CommandTextNode.java:107)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.validation.Node.execute(Node.java:623)
at com.ebasetech.ufs.validation.Root.execute(Root.java:44)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.ScriptNode.execute(ScriptNode.java:30)
at com.ebasetech.ufs.runtime.events.EventScriptNode.execute(EventScriptNode.java:35)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.BaseEventNode.execute(BaseEventNode.java:32)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.events.SuspendableExecutable.execute(SuspendableExecutable.java:47)
at com.ebasetech.ufs.runtime.events.SuspendableContainerExecutable.execute(SuspendableContainerExecutable.java:26)
at com.ebasetech.ufs.runtime.events.RunnableContext.execute(RunnableContext.java:69)
at com.ebasetech.ufs.runtime.Request.execute(Request.java:436)
at com.ebasetech.ufs.runtime.Request.execute(Request.java:405)
at com.ebasetech.ufs.runtime.Request._execute(Request.java:343)
at com.ebasetech.ufs.runtime.Request.execute(Request.java:308)
at formservlets.FormProcessingUtil.executeRequest(FormProcessingUtil.java:480)
at formservlets.FormProcessor.performExecution(FormProcessor.java:160)
at formservlets.FormProcessor.processRequest(FormProcessor.java:147)
at formservlets.FormProcessor.runForm(FormProcessor.java:45)
at formservlets.FormClient.process(FormClient.java:112)
at formservlets.FormClient.doGet(FormClient.java:46)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at formservlets.EbaseFilter.processHtmlRequest(EbaseFilter.java:291)
at formservlets.EbaseFilter.processRequest(EbaseFilter.java:197)
at formservlets.EbaseFilter.performFilter(EbaseFilter.java:141)
at formservlets.EbaseFilter.doFilter(EbaseFilter.java:94)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpoint.java:2517)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:2506)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Unknown Source)
0 x
-
- Ebase User
- Posts: 12
- Joined: Fri Jul 21, 2017 1:49 pm
-
- Ebase User
- Posts: 12
- Joined: Fri Jul 21, 2017 1:49 pm
-
- Ebase User
- Posts: 12
- Joined: Fri Jul 21, 2017 1:49 pm
-
- Moderator
- Posts: 1342
- Joined: Wed Sep 12, 2007 12:49 pm
-
- Ebase User
- Posts: 12
- Joined: Fri Jul 21, 2017 1:49 pm
-
- Ebase User
- Posts: 12
- Joined: Fri Jul 21, 2017 1:49 pm
-
- Moderator
- Posts: 1342
- Joined: Wed Sep 12, 2007 12:49 pm
-
- Moderator
- Posts: 1342
- Joined: Wed Sep 12, 2007 12:49 pm
The problem is caused by on old V3 button column named BUTTON90 - you can see this on page_2 of the form. I think there is also an invisible column in the table representing this button - you can't see this listed in the tables tab.
I'm afraid there isn't a direct solution for this. You could replace this button column with a Button Column Control but you would probably have to change the form to achieve this.
The other solution is to copy the table in code i.e. loop through the rows of the source table and copy each column value across.
Sorry about this.
I'm afraid there isn't a direct solution for this. You could replace this button column with a Button Column Control but you would probably have to change the form to achieve this.
The other solution is to copy the table in code i.e. loop through the rows of the source table and copy each column value across.
Sorry about this.
0 x
-
- Ebase User
- Posts: 12
- Joined: Fri Jul 21, 2017 1:49 pm
Who is online
Users browsing this forum: No registered users and 3 guests