当前位置: 首页 > 知识库问答 >
问题:

quartzendpoint和文件到字符串转换器出现以下异常

支彭亮
2023-03-14
java.lang.IllegalArgumentException: Cannot apply transformer FileToString{this=2e93ba04,
name='File_to_String', ignoreBadInput=false, 
returnClass=SimpleDataType{type=java.lang.String, mimeType='*/*'}, 
sourceTypes=[SimpleDataType{type=java.io.File, mimeType='*/*'}, 
SimpleDataType{type=java.io.FileInputStream, mimeType='*/*'}]}
on source payload: class org.mule.transport.AbstractConnector$7.

以下是我们代码的片段。

<quartz:inbound-endpoint responseTimeout="10000"
            doc:name="Quartz" cronExpression="0 0/3 * * * ? *" repeatInterval="0"
            jobName="ApptioStart" >
            <quartz:endpoint-polling-job>
                <quartz:job-endpoint ref="fileConnector"/>
            </quartz:endpoint-polling-job>

        </quartz:inbound-endpoint>
        <logger message="#[message.outboundProperties]" level="INFO" doc:name="Logger"/>

        <!-- Read file from predefined folder path <file:inbound-endpoint path="${csv.folder.path}" 
            responseTimeout="10000" doc:name="File" /> -->
        <file:file-to-string-transformer
            doc:name="File to String" />

共有1个答案

戴建义
2023-03-14

问题就在这里:

<quartz:job-endpoint ref="fileConnector"/>

ref 应该引用全局终结点,而不是连接器。这就是为什么消息的有效负载是 org.mule.transport.AbstractConnector,这会导致异常。

因此,通过将其置于流之外来创建全局文件endpoint:

<file:endpoint name="csvFileEndpoint"
      path="${csv.folder.path}" 
      responseTimeout="10000"
      doc:name="CSV Files" />

然后在Quartzendpoint中使用它:

<quartz:job-endpoint ref="csvFileEndpoint"/>

引用:

  • https://developer.mulesoft.com/docs/display/current/Quartz 传输引用#QuartzTransportReference-EndpointPollingJob
  • https://github.com/mulesoft/mule/blob/mule-3.6.2/transports/quartz/src/test/resources/quartz-polling-functional-test.xml#L34
 类似资料:
  • 问题内容: 嗨,我想将此BufferedInputStream放入我的字符串中,我该怎么做? 问题答案: BufferedInputStream in = new BufferedInputStream(sktClient.getInputStream()); byte[] contents = new byte[1024];

  • 本文向大家介绍python实现字符串和字典的转换,包括了python实现字符串和字典的转换的使用技巧和注意事项,需要的朋友参考一下 一、把一个字符串的内容提取出来,并放到字典中 流程如下: 1、得到字符串s,通过分割提取得到s1(是个列表) s=”name=lyy&age=3&sex=women&boyfriend=czt” 2、需要再对s1进行拆分,此时s1只有4个元素,对s1进行遍历,拿到类似

  • 我遇到了这样一个java字符串,其中以下内容是错误的: 我想这是因为字符串构造函数默认将主体字节[]的编码视为UTF-8,我不是100%确定。我如何能够将此字符串存储在字节[]中,并能够稍后将其转换回来?我想我需要能够确定字节[]的编码方式。我该怎么做呢? 一些上下文:我需要字节[],以便压缩数据,将其存储在数据库中,然后解压缩并将未压缩的字节[]转换回原始字符串。这个字符串最初来自某个下载了网页

  • 问题内容: 转换为的最佳方法是什么? 问题答案:

  • 我想将以下字符串转换为对象: 要将其转换为对象,我创建了以下类: 我使用Jackson库转换到。以下是我如何使用杰克逊转换: 问题是,在转换上面的中User对象始终是空的。我做错了什么? 提前谢谢。

  • 问题内容: 如何在JavaScript中执行以下操作? 将“ 1”,“ 2”,“ 3”连接为“ 123” 将“ 123”转换为123 加123 + 100 = 223 将223转换为“ 223” 问题答案: 您想熟悉和。 在您的工具箱中有用的是查看变量以找出它是什么类型的: