Apache camel Apache Camel FOP组件未传播头
FOP组件似乎不是传播头。在下面的路径中,XSLT组件可以使用头文件,并且它会通过另一端传递头文件。但在fop之后,他们都走了 这是虫子吗?。有人能提出解决办法吗Apache camel Apache Camel FOP组件未传播头,apache-camel,apache-fop,eip,Apache Camel,Apache Fop,Eip,FOP组件似乎不是传播头。在下面的路径中,XSLT组件可以使用头文件,并且它会通过另一端传递头文件。但在fop之后,他们都走了 这是虫子吗?。有人能提出解决办法吗 <route> <from uri="direct:render"/> <to uri="xslt:file:{{rootDir}}/Report.xsl"/> <to uri="fop:application/pdf"/> <log message
<route>
<from uri="direct:render"/>
<to uri="xslt:file:{{rootDir}}/Report.xsl"/>
<to uri="fop:application/pdf"/>
<log message="Headers after fop ${headers}"/>
</route>
谢谢好的,我的解决方法如下:
<route>
<from uri="direct:render"/>
<!-- Retain header value in property before it's lost -->
<setProperty propertyName="lostHeader">
<simple>${header.lostHeader}</simple>
</setProperty>
<to uri="xslt:file:{{rootDir}}/Report.xsl"/>
<to uri="fop:application/pdf"/>
<!-- Restore it again -->
<setHeader headerName="lostHeader">
<simple>${property.lostHeader}</simple>
</setHeader>
<log message="Headers after fop ${headers}"/>
<!-- Now it's available again here -->
<to uri="jms:jms/happyQueue"/>
</route>
${header.lostHeader}
${property.lostHeader}
正如我所说,这是一种变通方法,当然,您必须单独处理所需的任何标题。我可能会在fop组件上记录一个jira错误。是的,看起来像个错误。请随时登录JIRA票证:我已登录票证,因此我们将记住修复它: