Hi Ivan,
It seems working fine here.

that is a sample:
https://github.com/danielsoro/cxf-upload

To run:
mvn clean install tomee:run

Fileupload dir:
target/apache-tomee/${FILE}

Em ter, 26 de mar de 2019 às 13:06, Ivan Junckes Filho <
ivanjunc...@gmail.com> escreveu:

> Same issues in all scenarios Dani :/
>
> On Tue, Mar 26, 2019 at 11:55 AM Daniel Cunha <daniels...@apache.org>
> wrote:
>
> > Hi Ivan,
> >
> > what happening if you don't define the type?
> > @Multipart(value = "anexo") Attachment anexo
> >
> > Em ter, 26 de mar de 2019 às 11:51, Daniel Cunha <daniels...@apache.org>
> > escreveu:
> >
> > > Have you get same issue with: MultipartBody?
> > > Something like:
> > > @Consumes(MediaType.MULTIPART_FORM_DATA)
> > > public Response upload(MultipartBody body,
> > > @PathParam("idProcesso") Long idProcesso {}
> > >
> > > So you can get the file from: body.getAllAttachments()  or
> > > body.getAttachment("anexo").
> > > I need to try reproduce it locally or see if we have some sample on CXF
> > > side. But, can you try with MultipartBody?
> > >
> > > Em ter, 26 de mar de 2019 às 11:31, Ivan Junckes Filho <
> > > ivanjunc...@gmail.com> escreveu:
> > >
> > >> *CHROME REQUEST:*
> > >>
> > >>    1. Request URL:
> > >>
> > >> http://localhost:8080/crvirtualdemandas/api/processos/anexo/upload/1
> > >>       2. Request Method:
> > >>       POST
> > >>       3. Status Code:
> > >>       415
> > >>       4. Remote Address:
> > >>       [::1]:8080
> > >>       5. Referrer Policy:
> > >>       no-referrer-when-downgrade
> > >>       1. Response Headersview source
> > >>       1. Access-Control-Allow-Credentials:
> > >>       true
> > >>       2. Access-Control-Allow-Origin:
> > >>       http://localhost:8080
> > >>       3. Access-Control-Expose-Headers:
> > >>       Access-Control-Allow-Origin,Access-Control-Allow-Credentials
> > >>       4. Content-Length:
> > >>       0
> > >>       5. Date:
> > >>       Tue, 26 Mar 2019 14:29:27 GMT
> > >>       6. Server:
> > >>       Apache TomEE
> > >>       7. vary:
> > >>       Origin
> > >>       2. Request Headersview source
> > >>       1. Accept:
> > >>       application/json
> > >>       2. Accept-Encoding:
> > >>       gzip, deflate, br
> > >>       3. Accept-Language:
> > >>       en-US,en;q=0.9,pt;q=0.8
> > >>       4. Connection:
> > >>       keep-alive
> > >>       5. Content-Length:
> > >>       213
> > >>       6. Content-Transfer-Encoding:
> > >>       binary
> > >>       7. Content-Type:
> > >>       multipart/form-data;
> > boundary=----WebKitFormBoundaryty8x9JCIl3wCHnkM
> > >>       8. Cookie:
> > >>       Idea-4c26cc00=059851e2-1747-4e5a-8b39-5a15911d851b
> > >>       9. DNT:
> > >>       1
> > >>       10. Host:
> > >>       localhost:8080
> > >>       11. Origin:
> > >>       http://localhost:8080
> > >>       12. Referer:
> > >>       http://localhost:8080/crvirtual_demandas/upload_test.html
> > >>       13. User-Agent:
> > >>       Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like
> > >>       Gecko) Chrome/70.0.3538.102 Safari/537.36
> > >>       14. X-Requested-With:
> > >>       XMLHttpRequest
> > >>       3. Form Dataview sourceview URL encoded
> > >>       1. anexo:
> > >>       (binary)
> > >>
> > >>
> > >>
> > >>
> > >> *LOGS*
> > >>
> > >> 26-Mar-2019 10:58:10.290 SEVERE [http-nio-8080-exec-40]
> > >> org.apache.cxf.jaxrs.utils.JAXRSUtils.logMessageHandlerProblem No
> > message
> > >> body reader has been found for class
> > >> org.apache.cxf.jaxrs.ext.multipart.Attachment, ContentType:
> > >> multipart/form-data;boundary=----WebKitFormBoundaryDsJ1PGRCubchSS8G
> > >> 26-Mar-2019 10:58:10.297 WARNING [http-nio-8080-exec-40]
> > >> org.apache.cxf.jaxrs.impl.WebApplicationExceptionMapper.toResponse
> > >> javax.ws.rs.WebApplicationException: HTTP 415 Unsupported Media Type
> > >> at
> > >>
> > >>
> >
> org.apache.cxf.jaxrs.utils.JAXRSUtils.readFromMessageBody(JAXRSUtils.java:1370)
> > >> at
> > >>
> > >>
> >
> org.apache.cxf.jaxrs.utils.JAXRSUtils.processRequestBodyParameter(JAXRSUtils.java:865)
> > >> at
> > >>
> > >>
> >
> org.apache.cxf.jaxrs.utils.JAXRSUtils.processParameters(JAXRSUtils.java:810)
> > >> at
> > >>
> > >>
> >
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.processRequest(JAXRSInInterceptor.java:214)
> > >> at
> > >>
> > >>
> >
> org.apache.cxf.jaxrs.interceptor.JAXRSInInterceptor.handleMessage(JAXRSInInterceptor.java:78)
> > >> at
> > >>
> > >>
> >
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:308)
> > >> at
> > >>
> > >>
> >
> org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
> > >> at
> > >>
> > >>
> >
> org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:267)
> > >> at
> > >>
> > >>
> >
> org.apache.openejb.server.cxf.rs.CxfRsHttpListener.doInvoke(CxfRsHttpListener.java:258)
> > >> at
> > >>
> > >>
> >
> org.apache.tomee.webservices.CXFJAXRSFilter.doFilter(CXFJAXRSFilter.java:99)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
> > >> at
> > org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
> > >> at org.apache.openejb.server.httpd.EEFilter.doFilter(EEFilter.java:65)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
> > >> at
> > >>
> > >>
> >
> br.com.gbrsistemas.crvirtual.authentication.jwt.JwtFilter.doFilter(JwtFilter.java:35)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
> > >> at
> > >>
> > >>
> >
> br.com.gbrsistemas.crvirtual.authentication.signature.SignatureFilter.doFilter(SignatureFilter.java:47)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
> > >> at
> > >>
> > org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:352)
> > >> at
> org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:171)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
> > >> at
> > >>
> > >>
> >
> org.apache.geronimo.microprofile.opentracing.microprofile.server.OpenTracingFilter.doFilter(OpenTracingFilter.java:126)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
> > >> at
> > >>
> > >>
> >
> org.apache.tomee.microprofile.jwt.MPJWTFilter.doFilter(MPJWTFilter.java:76)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
> > >> at org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:45)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:490)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
> > >> at
> > >>
> > >>
> >
> org.apache.tomee.catalina.OpenEJBSecurityListener$RequestCapturer.invoke(OpenEJBSecurityListener.java:97)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:668)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
> > >> at
> > >>
> > >>
> >
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
> > >> at
> > >>
> >
> org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:408)
> > >> at
> > >>
> > >>
> >
> org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
> > >> at
> > >>
> > >>
> >
> org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:770)
> > >> at
> > >> org.apache.tomcat.util.net
> > >> .NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1415)
> > >> at
> > >> org.apache.tomcat.util.net
> > >> .SocketProcessorBase.run(SocketProcessorBase.java:49)
> > >> at
> > >>
> > >>
> >
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> > >> at
> > >>
> > >>
> >
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> > >> at
> > >>
> > >>
> >
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
> > >> at java.lang.Thread.run(Thread.java:748)
> > >>
> > >> 26-Mar-2019 10:58:10.304 INFO [http-nio-8080-exec-40]
> > >>
> > >>
> >
> org.apache.geronimo.microprofile.opentracing.microprofile.zipkin.ZipkinLogger.onZipkinSpan
> > >>
> > >>
> >
> [{"annotations":[{"timestamp":1553608690289000,"value":"sr"},{"timestamp":1553608690299000,"value":"ss"}],"binaryAnnotations":[{"key":"http.status_code","type":3,"value":415},{"key":"component","type":6,"value":"jaxrs"},{"key":"span.kind","type":6,"value":"server"},{"key":"http.url","type":6,"value":"
> > >> http://localhost:8080/crvirtualdemandas/api/processos/anexo/upload/1
> > >>
> > >>
> >
> "},{"key":"http.method","type":6,"value":"POST"}],"duration":10000,"id":22,"kind":"SERVER","localEndpoint":{"ipv4":"127.0.0.1","port":8080,"serviceName":"ivan-Inspiron-5457_5557"},"name":"POST:br.com.gbrsistemas.crvirtual.demanda.processo.ProcessoFiscalizacaoAnexoService.upload","parentId":0,"tags":{"http.status_code":"415","component":"jaxrs","http.url":"
> > >> http://localhost:8080/crvirtualdemandas/api/processos/anexo/upload/1
> > >> ","http.method":"POST"},"timestamp":1553608690289000,"traceId":21}]
> > >>
> > >> *CODE*
> > >>
> > >> @POST
> > >> @Path("upload/{idProcesso}")
> > >> @Produces(MediaType.APPLICATION_JSON)
> > >> @Consumes(MediaType.MULTIPART_FORM_DATA)
> > >> public Response upload(@Multipart(value = "anexo", type =
> > >> MediaType.APPLICATION_OCTET_STREAM) Attachment anexo,
> > >> @PathParam("idProcesso") Long idProcesso){}
> > >>
> > >>
> > >>
> > >> On Tue, Mar 26, 2019 at 11:27 AM Daniel Cunha <daniels...@apache.org>
> > >> wrote:
> > >>
> > >> > Can you post your stacktrace?
> > >> >
> > >> > Em ter, 26 de mar de 2019 às 11:20, Ivan Junckes Filho <
> > >> > ivanjunc...@gmail.com> escreveu:
> > >> >
> > >> > > Hey guys, I am getting this issue while uploading a file.
> > >> > >
> > >> > > Anyone know why this is happening?
> > >> > >
> > >> > >
> > >> >
> > >>
> >
> https://stackoverflow.com/questions/45075798/cxf-no-message-body-reader-has-been-found-for-class-attachment
> > >> > >
> > >> >
> > >> >
> > >> > --
> > >> > Daniel "soro" Cunha
> > >> > https://twitter.com/dvlc_
> > >> >
> > >>
> > >
> > >
> > > --
> > > Daniel "soro" Cunha
> > > https://twitter.com/dvlc_
> > >
> >
> >
> > --
> > Daniel "soro" Cunha
> > https://twitter.com/dvlc_
> >
>


-- 
Daniel "soro" Cunha
https://twitter.com/dvlc_

Reply via email to