簡體   English   中英

在OSGi中使用Servlet時如何禁用駱駝HTTP端點流緩存

[英]How To Disable Camel HTTP Endpoint Stream Caching When Using Servlet in OSGi

我正在使用Apache Camel路由來使用Servlet組件接收傳入的HTTP通信。 路線很簡單:

<camel:route id="peopleSoftServletService" errorHandlerRef="errorHandler">
  <camel:from uri="servlet:///PeopleSoftService" />
  <camel:setHeader headerName="origin">
    <camel:simple>PeopleSoft Server: ${in.header.X-Forwarded-For}</camel:simple>
  </camel:setHeader>
  <camel:inOnly uri="activemq:peoplesoft" />
</camel:route>

我在使用流緩存時遇到問題。 我沒有明確使用流緩存,但似乎通過使用servlet組件,在幕后隱式創建了Camel HTTPConsumer並通過CamelServlet.connect(HttpConsumer Consumer)向servlet注冊。 我想做的是在該使用者的HTTP端點上禁用流緩存(默認情況下處於打開狀態),這通常是使用URI參數(“ disableStreamCache”)完成的。 由於在這種情況下我沒有明確創建該端點,因此我不知道該怎么做。 servlet URI參數沒有任何可用於定制隱式端點的參數。

可以在駱駝2.10.0中完成嗎?

如果要禁用流緩存,則需要設置交換屬性以禁用流緩存 ,但是無法從HttpConsumer設置交換屬性,因此我剛剛為其創建了JIRA並很快提交了快速修復,您可以直接自己移植補丁,因為我們不再提供駱駝2.10.x的社區支持。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM