Hello Isomorphic,
I'm getting an error when using BatchUploader. Could you have a look at this seemingly internal class cast error (I'm using v10.1p_2016-02-09).
This is the server log, important rows in bold:
If you say that it is no error on your side, I'll have to dig here what changed since the last working test, but I strongly assume that there is a framework bug - even if the online sample is working.
This is an important one for me.
Thank you & Best regards
Blama
I'm getting an error when using BatchUploader. Could you have a look at this seemingly internal class cast error (I'm using v10.1p_2016-02-09).
This is the server log, important rows in bold:
Code:
=== 2016-02-15 12:25:50,367 [ec-9] DEBUG RPCManager - Processing 1 requests.
=== 2016-02-15 12:25:50,367 [ec-9] DEBUG RPCManager - Request #1 (RPCRequest) data: {
appID:"isc_builtin",
className:"com.isomorphic.tools.BuiltinRPC",
methodName:"setAttributes",
arguments:[
"session",
[
{
name:"dsName",
type:"hidden",
value:"V_LEADUPLOAD"
},
{
name:"delimiter",
type:"hidden",
value:";"
},
{
name:"quoteString",
type:"hidden",
value:"\""
},
{
name:"dataFormat",
type:"hidden",
value:"csv"
}
],
null
],
is_ISC_RPC_DMI:true
}
=== 2016-02-15 12:25:50,367 [ec-9] INFO LMSIDACall - Performing 1 operation(s)
=== 2016-02-15 12:25:50,367 [ec-5] DEBUG RPCManager - Processing 1 requests.
=== 2016-02-15 12:25:50,368 [ec-5] DEBUG RPCManager - Request #1 (DSRequest) payload: {
criteria:{
},
values:{
file:"leadupload.xlsx",
dsName:"V_LEADUPLOAD",
delimiter:";",
quoteString:"\"",
dataFormat:"csv",
_transaction:null
},
operationConfig:{
dataSource:"batchUpload",
repo:null,
operationType:"update",
textMatchStyle:"exact"
},
componentId:"isc_DynamicForm_0",
appID:"builtinApplication",
operation:"upload",
oldValues:{
dsName:"V_LEADUPLOAD",
delimiter:";",
quoteString:"\"",
dataFormat:"csv",
file:null
}
}
=== 2016-02-15 12:25:50,368 [ec-5] INFO LMSIDACall - Performing 1 operation(s)
=== 2016-02-15 12:25:50,368 [ec-9] DEBUG RPCDMI - appConfig: isc.Application.create({
rpcBindings:[
{
ID:"builtin",
className:"com.isomorphic.rpc.BuiltinRPC",
visibleMethods:[
{
name:"downloadWSDL"
},
{
name:"downloadClientContent"
},
{
name:"downloadClientExport"
},
{
name:"xmlToJS"
},
{
name:"uploadProgressCheck"
},
{
name:"saveFile"
},
{
name:"appendToFile"
},
{
name:"loadFile"
},
{
name:"deleteFile"
},
{
name:"loadSharedXML"
},
{
name:"saveSharedXML"
},
{
name:"getAvailableScriptEngines"
},
{
name:"devConsoleEvalServerScript"
},
{
name:"evalJava"
},
{
name:"getLogNames"
},
{
name:"getLogEntries"
},
{
name:"clearLogEntries"
},
{
name:"getLogThresholds"
},
{
name:"setLogThreshold"
},
{
name:"setTemporaryLogThreshold"
},
{
name:"revertTemporaryLogThresholds"
},
{
name:"getPdfObject"
},
{
name:"exportImage"
},
{
name:"areServerTimingsTracked"
},
{
name:"trackServerTimings"
},
{
name:"messagingSend"
},
{
name:"downloadZip"
}
]
},
{
ID:"builtin_tools",
className:"com.isomorphic.tools.BuiltinRPC",
visibleMethods:[
{
name:"getDataSourceFromTable"
},
{
name:"getDataSourceJSONFromTable"
},
{
name:"getDataSourceFromHibernateMapping"
},
{
name:"getDataSourceJSONFromHibernateMapping"
},
{
name:"getTables"
},
{
name:"getFieldsFromTable"
},
{
name:"getBeanFields"
},
{
name:"getHibernateBeans"
},
{
name:"getDatabaseProductNameAndVersion"
},
{
name:"getDatabaseTableTypes"
},
{
name:"setAttributes"
},
{
name:"clearAttributes"
},
{
name:"getAttributes"
},
{
name:"getAttribute"
},
{
name:"getDataSourceConfigFromJavaClass"
},
{
args:"cName",
language:"groovy",
name:"getJavaSource",
script:"\n if (!com.isomorphic.auth.DevModeAuthFilter.devModeAuthorized(request)) throw new Exception(\"Not Authorized\"); \n //import org.apache.bcel.Repository;\n\n try {\n return org.apache.bcel.Repository.lookupClass(cName).toString();\n } catch (Throwable e) {\n return \"Unable to reverse engineer class \"+cName+\": \"+e.getMessage();\n }\n "
},
{
name:"loadDataSource"
},
{
name:"dsFromXML"
},
{
name:"dsConfigFromXML"
},
{
name:"getDefinedDataSources"
},
{
name:"importData"
},
{
name:"checkForTestData"
}
]
},
{
ID:"builtin_adminconsole",
className:"com.isomorphic.tools.AdminConsole",
visibleMethods:[
{
name:"getDefinedDatabases"
},
{
name:"testDB"
},
{
name:"saveDBConfig"
},
{
name:"setDefaultDB"
},
{
name:"importDataSources"
},
{
name:"discoverJNDIDatabases"
}
]
}
]
})
=== 2016-02-15 12:25:50,370 [ec-9] DEBUG RPCDMI - rpc returned data
=== 2016-02-15 12:25:50,370 [ec-9] DEBUG RPCManager - Content type for RPC transaction: text/plain; charset=UTF-8
=== 2016-02-15 12:25:50,370 [ec-9] INFO Compression - /lms/lms/sc/IDACall: 67 -> 73 bytes
=== 2016-02-15 12:25:50,372 [ec-5] DEBUG AppBase - [builtinApplication.null] No userTypes defined, allowing anyone access to all operations for this application
=== 2016-02-15 12:25:50,372 [ec-5] DEBUG AppBase - [builtinApplication.null] No public zero-argument method named '_null' found, performing generic datasource operation
=== 2016-02-15 12:25:50,372 [ec-5] INFO SQLDataSource - [builtinApplication.null] Performing fetch operation with
criteria: {TENANT_ID:4} values: {TENANT_ID:4}
=== 2016-02-15 12:25:50,373 [ec-5] INFO SQLDataSource - [builtinApplication.null] derived query: SELECT $defaultSelectClause FROM $defaultTableClause$defaultAnsiJoinClause WHERE $defaultWhereClause
=== 2016-02-15 12:25:50,374 [ec-5] INFO SQLDataSource - [builtinApplication.null] 271: Executing SQL query on 'Oracle': SELECT T_SETTINGS_LEADIMPORT.ID, T_SETTINGS_LEADIMPORT.TENANT_ID, T_SETTINGS_LEADIMPORT.CREATED_BY, T_SETTINGS_LEADIMPORT.CREATED_AT, T_SETTINGS_LEADIMPORT.MODIFIED_BY, T_SETTINGS_LEADIMPORT.MODIFIED_AT, T_SETTINGS_LEADIMPORT.DSXMLFIELDNAME, T_SETTINGS_LEADIMPORT.CSVFIELDNAME, USER_CREATED_BY.FULLNAME_INITIALS_GIVENNAME AS CREATED_BY_NAME, USER_CREATED_BY.FULLNAME_LEGALENTITYNAME AS CREATED_BY_NAME_TOOLTIP, USER_MODIFIED_BY.FULLNAME_INITIALS_GIVENNAME AS MODIFIED_BY_NAME, USER_MODIFIED_BY.FULLNAME_LEGALENTITYNAME AS MODIFIED_BY_NAME_TOOLTIP FROM T_SETTINGS_LEADIMPORT JOIN MV_USER_DATA USER_CREATED_BY ON T_SETTINGS_LEADIMPORT.CREATED_BY = USER_CREATED_BY.ID JOIN MV_USER_DATA USER_MODIFIED_BY ON T_SETTINGS_LEADIMPORT.MODIFIED_BY = USER_MODIFIED_BY.ID WHERE (T_SETTINGS_LEADIMPORT.TENANT_ID=4)
=== 2016-02-15 12:25:50,375 [ec-5] DEBUG SQLConnectionManager - [builtinApplication.null] Borrowed connection '1220387926'
=== 2016-02-15 12:25:50,375 [ec-5] INFO SQLDriver - [builtinApplication.null] Executing SQL query on 'Oracle' using connection '1220387926': SELECT T_SETTINGS_LEADIMPORT.ID, T_SETTINGS_LEADIMPORT.TENANT_ID, T_SETTINGS_LEADIMPORT.CREATED_BY, T_SETTINGS_LEADIMPORT.CREATED_AT, T_SETTINGS_LEADIMPORT.MODIFIED_BY, T_SETTINGS_LEADIMPORT.MODIFIED_AT, T_SETTINGS_LEADIMPORT.DSXMLFIELDNAME, T_SETTINGS_LEADIMPORT.CSVFIELDNAME, USER_CREATED_BY.FULLNAME_INITIALS_GIVENNAME AS CREATED_BY_NAME, USER_CREATED_BY.FULLNAME_LEGALENTITYNAME AS CREATED_BY_NAME_TOOLTIP, USER_MODIFIED_BY.FULLNAME_INITIALS_GIVENNAME AS MODIFIED_BY_NAME, USER_MODIFIED_BY.FULLNAME_LEGALENTITYNAME AS MODIFIED_BY_NAME_TOOLTIP FROM T_SETTINGS_LEADIMPORT JOIN MV_USER_DATA USER_CREATED_BY ON T_SETTINGS_LEADIMPORT.CREATED_BY = USER_CREATED_BY.ID JOIN MV_USER_DATA USER_MODIFIED_BY ON T_SETTINGS_LEADIMPORT.MODIFIED_BY = USER_MODIFIED_BY.ID WHERE (T_SETTINGS_LEADIMPORT.TENANT_ID=4)
=== 2016-02-15 12:25:50,376 [ec-5] INFO DSResponse - DSResponse: List with 0 items
=== 2016-02-15 12:25:50,376 [ec-5] DEBUG SQLDriver - Freeing SQLDriver dbConnection 1220387926 for SQLDriver instance 95539480
=== 2016-02-15 12:25:50,376 [ec-5] DEBUG SQLConnectionManager - About to close connection with hashcode "1220387926"
=== 2016-02-15 12:25:50,415 [ec-5] DEBUG DataSourceDMI - Invocation threw exception
[B]java.lang.ClassCastException: com.isomorphic.util.LocaleMessage cannot be cast to java.lang.String
at com.isomorphic.tools.BatchUpload.internalBatchUpload(BatchUpload.java:118)
at com.isomorphic.tools.BatchUpload.batchUpload(BatchUpload.java:88)[/B]
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.isomorphic.base.Reflection.adaptArgsAndInvoke(Reflection.java:964)
at com.isomorphic.datasource.DataSourceDMI.execute(DataSourceDMI.java:416)
at com.isomorphic.datasource.DataSourceDMI.execute(DataSourceDMI.java:64)
at com.isomorphic.datasource.DSRequest.execute(DSRequest.java:2689)
at com.isomorphic.servlet.IDACall.handleDSRequest(IDACall.java:228)
at com.lmscompany.lms.server.LMSIDACall.handleDSRequest(LMSIDACall.java:87)
at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:187)
at com.lmscompany.lms.server.LMSIDACall.processRequest(LMSIDACall.java:43)
at com.isomorphic.servlet.IDACall._processRequest(IDACall.java:119)
at com.isomorphic.servlet.IDACall.doPost(IDACall.java:79)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:162)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.isomorphic.servlet.CompressionFilter._doFilter(CompressionFilter.java:260)
at com.isomorphic.servlet.BaseFilter.doFilter(BaseFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:521)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1096)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:674)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)
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)
[B]=== 2016-02-15 12:25:50,415 [ec-5] WARN RequestContext - dsRequest.execute() failed:
java.lang.ClassCastException: com.isomorphic.util.LocaleMessage cannot be cast to java.lang.String
at com.isomorphic.tools.BatchUpload.internalBatchUpload(BatchUpload.java:118)
at com.isomorphic.tools.BatchUpload.batchUpload(BatchUpload.java:88)[/B]
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.isomorphic.base.Reflection.adaptArgsAndInvoke(Reflection.java:964)
at com.isomorphic.datasource.DataSourceDMI.execute(DataSourceDMI.java:416)
at com.isomorphic.datasource.DataSourceDMI.execute(DataSourceDMI.java:64)
at com.isomorphic.datasource.DSRequest.execute(DSRequest.java:2689)
at com.isomorphic.servlet.IDACall.handleDSRequest(IDACall.java:228)
at com.lmscompany.lms.server.LMSIDACall.handleDSRequest(LMSIDACall.java:87)
at com.isomorphic.servlet.IDACall.processRPCTransaction(IDACall.java:187)
at com.lmscompany.lms.server.LMSIDACall.processRequest(LMSIDACall.java:43)
at com.isomorphic.servlet.IDACall._processRequest(IDACall.java:119)
at com.isomorphic.servlet.IDACall.doPost(IDACall.java:79)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
at com.isomorphic.servlet.BaseServlet.service(BaseServlet.java:162)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.isomorphic.servlet.CompressionFilter._doFilter(CompressionFilter.java:260)
at com.isomorphic.servlet.BaseFilter.doFilter(BaseFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:614)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:521)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1096)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:674)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)
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)
=== 2016-02-15 12:25:50,416 [ec-5] DEBUG RPCManager - Content type for RPC transaction: text/html; charset=UTF-8
=== 2016-02-15 12:25:50,416 [ec-5] DEBUG RPCManager - non-DMI response, dropExtraFields: false
=== 2016-02-15 12:25:50,416 [ec-5] INFO Compression - /lms/lms/sc/IDACall: 712 -> 448 bytes
[B][/B]
If you say that it is no error on your side, I'll have to dig here what changed since the last working test, but I strongly assume that there is a framework bug - even if the online sample is working.
This is an important one for me.
Thank you & Best regards
Blama
Comment