如何使用camel rest DSL解析多部分请求?
我正在使用带有servlet组件的camel java rest DSL。骆驼版是2.19.3。
在camel版本2.15.2中,多部分请求解析正在使用以下内容:
web.xml
<servlet>
<servlet-name>CamelServlet</servlet-name>
<servlet-class>org.apache.camel.component.servlet.CamelHttpTransportServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- Camel servlet mapping -->
<servlet-mapping>
<servlet-name>CamelServlet</servlet-name>
<url-pattern>/api/rest/*</url-pattern>
</servlet-mapping>
<filter>
<filter-name>MultipartFilter</filter-name>
<filter-class>org.eclipse.jetty.servlets.MultiPartFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>MultipartFilter</filter-name>
<servlet-name>CamelServlet</servlet-name>
</filter-mapping>
休息DSL:
rest("/file")
.bindingMode(RestBindingMode.off)
.consumes("multipart/form-data")
.produces("application/json")
.post("/upload")
.route().process(caCertificateUploadProcessor);
处理器:
Message in = exchange.getIn();
System.out.println("Size:"+in.getAttachments().size());
对于骆驼版本2.15.2,我根据我的多部分请求获取附件地图大小。但是当我更新骆驼版本2.19.3时,这总是给我附件大小为零。看起来在一些骆驼更新中已经改变了对多部分请求的处理。我需要知道如何在最新的驼峰版本中获取附件。