Hi JB, Yes, Aries JAXRS 1.0.10. I suppose it is PAX-WEB, or whatever the default is for Karaf 4.3.0.
The class: import javax.servlet.ServletException; import javax.servlet.annotation.MultipartConfig; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.Part; import javax.ws.rs.Consumes; import javax.ws.rs.DELETE; import javax.ws.rs.GET; import javax.ws.rs.PATCH; import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.Produces; import javax.ws.rs.core.Context; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.SecurityContext; import javax.ws.rs.core.UriInfo; @Component(service = FirmwareResource.class, scope = ServiceScope.PROTOTYPE) @JaxrsResource @Path(ResourceConstants.FIRMWARE_PATH) @JaxrsName("firmware") @JaxrsApplicationSelect(Constants.JAXRS_APP_SELECT) @Produces(Constants.API_MEDIA_TYPE) @Protected @MultipartConfig public class FirmwareResource { @POST @Consumes(MediaType.MULTIPART_FORM_DATA) public void upload(@Context HttpServletRequest request) throws IOException, ServletException { Collection<Part> parts = request.getParts(); ... Thank you for taking a look at this. Best regards, Alex soto > On Dec 1, 2020, at 1:23 AM, Jean-Baptiste Onofre <j...@nanthrax.net> wrote: > > Hi Alex, > > In order for me to reproduce, are you using: > > - Aries JAXRS 1.0.10 still (or did you update) ? > - Pax Web or Felix as HTTP service ? > - Do you have JEE @MultipartConfig annotation on your JAXRS class ? > - @Consumers is set to MediaType.MULTIPART ? > > It could be necessary to mimic the JAXRS tests by adding a fragment to bring > org.apache.cxf.jaxrs.utils.multipart to Aries JAXRS bundle. > > Regards > JB > >> Le 30 nov. 2020 à 19:19, Alex Soto <alex.s...@envieta.com >> <mailto:alex.s...@envieta.com>> a écrit : >> >> Hello, >> >> Anybody has any insight about this? >> >> Best regards, >> Alex soto >> >> >> >> >>> On Nov 13, 2020, at 8:54 AM, Alex Soto <alex.s...@envieta.com >>> <mailto:alex.s...@envieta.com>> wrote: >>> >>> Thank you, João, for your response. >>> >>> Unfortunately, it is not working for me. I tested adding the annotation, >>> and my service look almost identical to yours. >>> >>> I found this thread https://github.com/osgi/osgi.enroute/issues/65 >>> <https://github.com/osgi/osgi.enroute/issues/65> in which Tim Ward >>> explains about the need to set >>> “osgi.http.whiteboard.servlet.multipart.enabled=true” in the configuration >>> PID “org.apache.aries.jax.rs.whiteboard.default” but that is not working >>> either. It still fails with exception: >>> >>> >>> java.lang.IllegalStateException: No multipart config for servlet >>> at org.eclipse.jetty.server.Request.getParts(Request.java:2378) >>> ~[!/:9.4.31.v20200723] >>> at org.eclipse.jetty.server.Request.getParts(Request.java:2366) >>> ~[!/:9.4.31.v20200723] >>> at >>> javax.servlet.http.HttpServletRequestWrapper.getParts(HttpServletRequestWrapper.java:375) >>> ~[!/:3.1.0] >>> >>> >>> >>> Best regards, >>> Alex soto >>> >>> >>> >>> >>>> On Nov 13, 2020, at 4:30 AM, João Assunção <joao.assun...@exploitsys.com >>>> <mailto:joao.assun...@exploitsys.com>> wrote: >>>> >>>> Hello Alex, >>>> >>>> I used Multipart with Aries JAX-RS and I'm almost sure I didn't need to >>>> mess with the configuration. >>>> I annotated the class with @MultipartConfig and placed a >>>> @Consumes(MediaType.MULIPART_FOR_DATA). >>>> >>>> @Path("/firmware") >>>> @Component(service = FirmwareService.class, // >>>> immediate = true, // >>>> scope = ServiceScope.SINGLETON, property = { >>>> JaxrsWhiteboardConstants.JAX_RS_RESOURCE + "=true", >>>> JaxrsWhiteboardConstants.JAX_RS_APPLICATION_SELECT + "=(" + >>>> JaxrsWhiteboardConstants.JAX_RS_NAME + "=myApp)" >>>> }) >>>> @MultipartConfig >>>> public class FirmwareService { >>>> .... >>>> @POST >>>> @Path("/upload") >>>> @Consumes(MediaType.MULTIPART_FORM_DATA) >>>> public Response uploadFirmware(@Context HttpServletRequest request) { >>>> try { >>>> doUploadFirmware(request); >>>> >>>> Hope this helps >>>> >>>> João Assunção >>>> >>>> Email: joao.assun...@exploitsys.com <mailto:joao.assun...@exploitsys.com> >>>> Mobile: +351 916968984 >>>> Phone: +351 211933149 >>>> Web: www.exploitsys.com <http://www.exploitsys.com/> >>>> >>>> >>>> >>>> >>>> On Thu, Nov 12, 2020 at 5:25 PM Alex Soto <alex.s...@envieta.com >>>> <mailto:alex.s...@envieta.com>> wrote: >>>> With Karaf 4.3.0, using Aries JAX-RS 1.0.10, how can I enable multi part >>>> support? >>>> >>>> I am adding configuration file >>>> “org.apache.aries.jax.rs.whiteboard.default.cfg” to the “etc” directory >>>> with property: >>>> >>>> osgi.http.whiteboard.servlet.multipart.enabled=true >>>> >>>> But I am still getting error: >>>> >>>> java.lang.IllegalStateException: No multipart config for servlet >>>> >>>> When getting parts from HttpServletRequest. >>>> Any help will be appreciated. >>>> >>>> Best regards, >>>> Alex soto >>>> >>>> >>>> >>>> >>> >> >