Conal-Tuohy / ands-la-trobe

Automatically exported from code.google.com/p/ands-la-trobe
1 stars 1 forks source link

Error uploading excel file with multiple tabs #61

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Upload excel file with multiple tabs

What is the expected output? What do you see instead?

The following errors were found with your submission 
Sorry, we were unable to save: Test Site 01 - Artefacts (id: 6793, DATASET)
Show/Hide Detailed Error Information
Stacktrace 1 of 1
org.tdar.core.exception.TdarRecoverableRuntimeException: Unexpected expection 
while opening input dataset or dumping data at 
org.tdar.db.conversion.converters.DatasetConverter$Base.execute(DatasetConverter
.java:162) at 
org.tdar.core.service.resource.DatasetService.convertDataFile(DatasetService.jav
a:219) at 
org.tdar.core.service.resource.DatasetService$$FastClassByCGLIB$$4d222738.invoke
(<generated>) at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:191) at 
org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoi
npoint(Cglib2AopProxy.java:688) at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveM
ethodInvocation.java:150) at 
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(Transa
ctionInterceptor.java:110) at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveM
ethodInvocation.java:172) at 
org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.inter
cept(Cglib2AopProxy.java:621) at 
org.tdar.core.service.resource.DatasetService$$EnhancerByCGLIB$$ff1fa.convertDat
aFile(<generated>) at 
org.tdar.struts.action.resource.DatasetController.processUploadedFiles(DatasetCo
ntroller.java:453) at 
org.tdar.struts.action.resource.AbstractInformationResourceController.handleUplo
adedFiles(AbstractInformationResourceController.java:231) at 
org.tdar.struts.action.resource.DatasetController.save(DatasetController.java:48
1) at 
org.tdar.struts.action.resource.DatasetController.save(DatasetController.java:54
) at 
org.tdar.struts.action.AbstractPersistableController.save(AbstractPersistableCon
troller.java:205) at sun.reflect.GeneratedMethodAccessor1912.invoke(Unknown 
Source) at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.jav
a:43) at java.lang.reflect.Method.invoke(Method.java:616) at 
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvoca
tion.java:452) at 
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionIn
vocation.java:291) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:254) at 
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(Defau
ltWorkflowInterceptor.java:176) at 
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilt
erInterceptor.java:98) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationIn
terceptor.java:263) at 
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doInte
rcept(AnnotationValidationInterceptor.java:68) at 
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilt
erInterceptor.java:98) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(Convers
ionErrorInterceptor.java:133) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(Parameters
Interceptor.java:207) at 
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilt
erInterceptor.java:98) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(Parameters
Interceptor.java:207) at 
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilt
erInterceptor.java:98) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(Static
ParametersInterceptor.java:190) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterce
ptor.java:314) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDriven
Interceptor.java:100) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterc
eptor.java:145) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterc
eptor.java:171) at 
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilt
erInterceptor.java:98) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigI
nterceptor.java:164) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(Parameters
Interceptor.java:207) at 
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilt
erInterceptor.java:98) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInter
ceptor.java:75) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor
.java:94) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.ja
va:176) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.
java:190) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(Except
ionMappingInterceptor.java:187) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
org.tdar.struts.interceptor.AuthenticationInterceptor.intercept(AuthenticationIn
terceptor.java:65) at 
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.j
ava:248) at 
org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52) at 
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:498) at 
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperatio
ns.java:77) at 
org.apache.struts2.dispatcher.ng.filter.StrutsExecuteFilter.doFilter(StrutsExecu
teFilter.java:88) at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt
erChain.java:235) at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.
java:206) at 
com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.jav
a:129) at 
com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:77)
 at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt
erChain.java:235) at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.
java:206) at 
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter.doFilter(StrutsPrepa
reFilter.java:82) at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt
erChain.java:235) at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.
java:206) at 
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInter
nal(OpenSessionInViewFilter.java:198) at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilte
r.java:76) at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt
erChain.java:235) at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.
java:206) at 
org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestCont
extFilter.java:83) at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilte
r.java:76) at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt
erChain.java:235) at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.
java:206) at 
org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164) 
at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141) at 
org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90
) at 
org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.jav
a:417) at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilt
erChain.java:235) at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.
java:206) at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:2
33) at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:1
91) at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 
at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 
at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109
) at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857) at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Pr
otocol.java:588) at 
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at 
java.lang.Thread.run(Thread.java:636) Caused by: java.lang.Exception: 
org.apache.poi.ss.formula.eval.NotImplementedException: Error evaluating cell 
Artefacts!R2 at 
org.tdar.db.conversion.converters.ExcelConverter.dumpData(ExcelConverter.java:11
1) at 
org.tdar.db.conversion.converters.DatasetConverter$Base.execute(DatasetConverter
.java:155) ... 100 more Caused by: 
org.apache.poi.ss.formula.eval.NotImplementedException: Error evaluating cell 
Artefacts!R2 at 
org.apache.poi.ss.formula.WorkbookEvaluator.addExceptionInfo(WorkbookEvaluator.j
ava:321) at 
org.apache.poi.ss.formula.WorkbookEvaluator.evaluateAny(WorkbookEvaluator.java:2
88) at 
org.apache.poi.ss.formula.WorkbookEvaluator.evaluate(WorkbookEvaluator.java:221)
 at 
org.apache.poi.xssf.usermodel.XSSFFormulaEvaluator.evaluateFormulaCellValue(XSSF
FormulaEvaluator.java:257) at 
org.apache.poi.xssf.usermodel.XSSFFormulaEvaluator.evaluateFormulaCell(XSSFFormu
laEvaluator.java:150) at 
org.apache.poi.ss.usermodel.DataFormatter.formatCellValue(DataFormatter.java:588
) at 
org.tdar.db.conversion.converters.ExcelConverter.processSheet(ExcelConverter.jav
a:196) at 
org.tdar.db.conversion.converters.ExcelConverter.dumpData(ExcelConverter.java:10
5) ... 101 more Caused by: 
org.apache.poi.ss.formula.eval.NotImplementedException: PROPER at 
org.apache.poi.hssf.record.formula.functions.NotImplementedFunction.evaluate(Not
ImplementedFunction.java:42) at 
org.apache.poi.ss.formula.OperationEvaluatorFactory.evaluate(OperationEvaluatorF
actory.java:132) at 
org.apache.poi.ss.formula.WorkbookEvaluator.evaluateFormula(WorkbookEvaluator.ja
va:456) at 
org.apache.poi.ss.formula.WorkbookEvaluator.evaluateAny(WorkbookEvaluator.java:2
79) ... 107 more

Please use labels and text to provide additional information.

NB I removed the additional tabs and it uploaded fine. It would be good if 
there were a plain english error message associated with this upload issue.

Original issue reported on code.google.com by pennycro...@gmail.com on 5 Nov 2011 at 4:29

GoogleCodeExporter commented 9 years ago
Penny, judging from the stacktrace the actual problem was an invalid character 
in cell R2 of the Artifacts tab.

Can you try removing that row and reuploading the dataset (with tabs)?

Original comment by tosello....@gmail.com on 30 Nov 2011 at 2:51

GoogleCodeExporter commented 9 years ago
Also... Can you attach a copy of the file? If there's a character encoding 
issue in the excel converter we'll need to catch it to solve this bug.

Original comment by tosello....@gmail.com on 30 Nov 2011 at 10:59

GoogleCodeExporter commented 9 years ago
Just tried again and it uploaded fine. When you go to map columns, both show up 
(the same as if you've uploaded an Access db). The file is now in tdar: 
http://andsdb-sc18-dev.latrobe.edu.au/dataset/6800/columns. R2 should be blank.

Original comment by pennycro...@gmail.com on 1 Dec 2011 at 3:21

GoogleCodeExporter commented 9 years ago
Weird... I'd still like to work out why that happened.

At the moment i'm happy to call this resolved.

Original comment by tosello....@gmail.com on 1 Dec 2011 at 4:47