JAVA/POI 2013. 5. 15. 02:01

org.apache.poi.EncryptedDocumentException: Default password is invalid for docId/saltData/saltHash

at org.apache.poi.hssf.record.RecordFactoryInputStream$StreamEncryptionInfo.createDecryptingStream(RecordFactoryInputStream.java:116)

at org.apache.poi.hssf.record.RecordFactoryInputStream.<init>(RecordFactoryInputStream.java:184)

at org.apache.poi.hssf.record.RecordFactory.createRecords(RecordFactory.java:440)

at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:280)

at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:243)

at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:187)

at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:169)

at kr.faz.excelupload.controller.ExceluploadController.parsingTypeByExclude(ExceluploadController.java:496)

at kr.faz.excelupload.controller.ExceluploadController.adminExceluploadInsertFormAction(ExceluploadController.java:115)

at kr.faz.excelupload.controller.ExceluploadController$$FastClassByCGLIB$$7002440e.invoke(<generated>)

at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)

at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)

at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80)

at kr.faz.aop.SessionCheck.adminSessionCheck(SessionCheck.java:57)

at sun.reflect.GeneratedMethodAccessor102.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621)

at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:610)

at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:65)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.framework.Cglib2AopProxy$DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)

at kr.faz.excelupload.controller.ExceluploadController$$EnhancerByCGLIB$$ee8dc86a.adminExceluploadInsertFormAction(<generated>)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:213)

at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:126)

at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:96)

at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:617)

at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:578)

at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)

at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)

at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)

at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)

at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:789)

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

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

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

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:293)

at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)

at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)

at org.apache.jk.common.Socket.invoke(Socket.java:776)

at org.apache.jk.common.Socket.processConnection(Socket.java:705)

at org.apache.jk.common.Socket$SocketConnection.runIt(Socket.java:898)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)

at java.lang.Thread.run(Thread.java:619)

posted by 나는너의힘
:
JAVA/POI 2013. 4. 7. 21:54

CellReference.convertNumToColString  숫자를 엑셀의 숫자 Label 로 표기


CellReference.convertColStringToIndex 엑셀의 Cell Label 을 숫자로 표기. 일종의 Cell 번호.




https://poi.apache.org/apidocs/org/apache/poi/ss/util/CellReference.html




/**

* 엑셀에서 열 이름을 POI 에 맞도록 int 형으로 변환한다. ex) A -&gt; 0, AA -&gt; 26, AB -&gt; 27

* @param cellNo

* @return

*/

public static int convertCellNameToInt(String cellNo){

int rvalue = 0;

char[] c = cellNo.toCharArray();

if ( c.length > 1 ) {

rvalue +=  (int)c[0]+26-65;

rvalue +=  (int)c[1]-65;

return rvalue;

} else {

rvalue = ((int)c[0])-65;

}

return rvalue;

}

posted by 나는너의힘
:
JAVA/POI 2013. 4. 7. 03:06

엑셀의 사용자 정의 서식이 들어가 있는 날짜일경우

POI 관련자료를 찾아봤다...............

if( HSSFDateUtil.isCellDateFormatted(cell)) 이걸 사용하라고 하는데 -_-;;

안되는건지 되는건지...

일부 서식에서는 안된다.

결국 찾음.................


case HSSFCell.CELL_TYPE_NUMERIC:


if( HSSFDateUtil.isCellDateFormatted(cell)){

SimpleDateFormat fommatter = new SimpleDateFormat("yyyyMMdd");

data = fommatter.format(cell.getDateCellValue()); 

} else {

double ddata = cell.getNumericCellValue();

if ( HSSFDateUtil.isValidExcelDate(ddata) ){

SimpleDateFormat fommatter = new SimpleDateFormat("yyyyMMdd");

data = fommatter.format(cell.getDateCellValue()); 

} else {

data = String.valueOf(ddata);

}

}

posted by 나는너의힘
: