ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

[Lorg/openxmlformats/schemas/spreadsheetml/x2006/main/CTPhoneticRun报错

2021-11-09 16:58:29  阅读:189  来源: 互联网

标签:fastjson ooxml x2006 openxmlformats 报错 poi apache main


目录

前言

使用问题记录

总结



前言

接口自动化中的数据驱动采取的数据载体之一就是excel

其中广泛使用的excel jar包为apache poi相关的jar包,常用poi 、poi-ooxml两个包


使用问题记录

问题1 :

由于类型使用错误导致的报错问题,为了正确读取excel内容,通过cellType的类型获取单元格内容,但是在应该使用字符串类型的时候,错误的没有进行toString()操作,导致我在拼接成map之后,在想要转成jsonObject的时候,报错

case STRING:
    return cell.getRichStringCellValue();


错误信息:
Exception in thread "main" java.lang.NoClassDefFoundError: [Lorg/openxmlformats/schemas/spreadsheetml/x2006/main/CTPhoneticRun;

刚开始以为是缺少解析包,就引入了poi-ooxml-full全部的包

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml-full</artifactId>
    <version>5.0.0</version>
</dependency>

之后发现错误信息变成这个
Exception in thread "main" com.alibaba.fastjson.JSONException: write javaBean error, fastjson version 1.2.76, class org.apache.xmlbeans.impl.schema.SchemaTypeImpl, fieldName : _schema_type, write javaBean error, fastjson version 1.2.76, class org.apache.xmlbeans.impl.schema.SchemaTypeImpl, fieldName : baseType 

 后来把问题聚焦 at com.alibaba.fastjson.serializer.ASMSerializer_1_XSSFRichTextString.write(Unknown Source)
时候,就想到了是拼接map的时候的去内容这块报错了,应该使用

return cell.getRichStringCellValue().toString();


总结

就是不细心引起来的问题,poi 及poi-ooxml包完全够用了

标签:fastjson,ooxml,x2006,openxmlformats,报错,poi,apache,main
来源: https://blog.csdn.net/xwx5250/article/details/121231011

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有