Мне удалось создать REST API, который может использовать MULTIPART_FORM_DATA, используя ссылку Как определить службу JAX-RS, которая обрабатывает данные из нескольких частей в JEE?
Ниже мой код для того же самого для справки,
web.xml
<servlet>
<servlet-name>com.test.ApplicationConfig</servlet-name>
<multipart-config>
<max-file-size>104857600</max-file-size>
<max-request-size>209715200</max-request-size>
<file-size-threshold>52428800</file-size-threshold>
</multipart-config>
</servlet>
ApplicationConfig.java
@javax.ws.rs.ApplicationPath("webresources")
public class ApplicationConfig extends Application
{
@Override
@SuppressWarnings("unchecked")
public Set<Class<?>> getClasses()
{
Set<Class<?>> resources = new java.util.HashSet();
resources.add(SampleService.class);
return resources;
}
}
SampleService.java:
@Path("sample")
@Stateless
public class SampleService
{
@POST
@Path("/test")
@Consumes({ MediaType.MULTIPART_FORM_DATA })
@Produces(
{
MimeTypeUtil.MIMETYPE_PDF
})
public Response testCall(@Context HttpServletRequest httpServletRequest) throws Exception {
Все работает отлично, теперь я застрял в бизнес-требованиях, где необходимо настроить «multipart-config» на уровне сервера или приложения.
т.е. настройка max-file-size, max-request-size и & file-size-threshold из переменных среды сервера / системных свойств или динамическое их изменение.
Пожалуйста, кто-нибудь, помогите здесь.