Мой класс маршрутизатора выглядит следующим образом, и я пытаюсь загрузить видеофайл и сохранить его в папке «Файл».
SpringBootRouter.java
package com.camelrest;
import java.util.HashMap;
import java.util.Map;
import org.apache.camel.component.restlet.RestletComponent;
import org.apache.camel.spring.boot.FatJarRouter;
import org.restlet.Component;
import org.restlet.ext.spring.SpringServerServlet;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.embedded.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
@SpringBootApplication
public class MySpringBootRouter extends FatJarRouter {
@Autowired
private MultipartProcessor multipartProcessor;
@Override
public void configure() {
restConfiguration().component("restlet");
rest("/upload").post().to("direct:upload");
from("direct:upload")
.to("file://E:/RestTest");
}
@Bean
public ServletRegistrationBean servletRegistrationBean() {
SpringServerServlet serverServlet = new SpringServerServlet();
ServletRegistrationBean regBean = new ServletRegistrationBean(
serverServlet, "/rest/*");
Map<String, String> params = new HashMap<String, String>();
params.put("org.restlet.component", "restletComponent");
regBean.setInitParameters(params);
return regBean;
}
@Bean
public Component restletComponent() {
return new Component();
}
@Bean
public RestletComponent restletComponentService() {
return new RestletComponent(restletComponent());
}
}
Я пытаюсь загрузить видеофайл с помощью почтальона, как показано на скриншоте ниже:
Мое содержимое файла, который я загружаю, сохраняется с именем файла с некоторым случайным идентификатором верблюда, сгенерированным верблюдом
Однако я хочу имя файла, которое передается в теле
SampleVideo_1280x720_10mb.mp4
, чтобы быть именем файла и удалить следующее содержимое из тела
----------------------------948281627232093197119960
Content-Disposition: form-data; name="file"; filename="SampleVideo_1280x720_10mb.mp4"
Content-Type: video/mp4
Таким образом, окончательным результатом может быть видео, загруженное с именем файла, использованным при загрузке с почтальоном