【问题标题】:DataSource and ByteArrayDataSource not compatiable?数据源和 ByteArrayDataSource 不兼容?
【发布时间】:2016-09-28 06:04:58
【问题描述】:

我有以下几点:

InputStream imageStream = classLoader.getResourceAsStream("email/logo.png");
DataSource fds = new ByteArrayDataSource(IOUtils.toByteArray(imageStream), "image/png");

这会引发以下错误:

错误:(65, 30) java:不兼容的类型:javax.mail.util.ByteArrayDataSource 无法转换为 org.apache.poi.poifs.nio.DataSource
错误:(66, 44) java: 没有为 DataHandler(org.apache.poi.poifs.nio.DataSource) 找到合适的构造函数 构造函数 javax.activation.DataHandler.DataHandler(javax.activation.DataSource) 不适用 (参数不匹配;org.apache.poi.poifs.nio.DataSource 无法转换为 javax.activation.DataSource) 构造函数 javax.activation.DataHandler.DataHandler(java.net.URL) 不适用 (参数不匹配;org.apache.poi.poifs.nio.DataSource 无法转换为 java.net.URL)

我在这里做错了什么?

【问题讨论】:

  • 我们不知道您想要达到什么目标,因此很难为您提供帮助。你确定你真的想使用org.apache.poi.poifs.nio.DataSource吗?也许你真的想要javax.activation.DataSource
  • @JonSkeet,就是这样!

标签: java


【解决方案1】:

很可能你有错误的导入。 您正在尝试将 javax.mail.util.ByteArrayDataSource 转换为 org.apache.poi.poifs.nio.DataSource。检查您的导入。

【讨论】:

    猜你喜欢
    • 2022-12-14
    • 1970-01-01
    • 2016-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多