What artifact should I be using? I'm currently using
 cxf-spring-boot-starter-jaxrs and it's only at 3.1.7 (I'd have to have
explicit artifact overrides to get your patch, I think)

On Wed, Aug 17, 2016 at 6:15 AM, Sergey Beryozkin [via CXF] <
[email protected]> wrote:

> I've updated Swagger2Feature to set media types for all the resources
> found in the latest 2.1.8-M1 swagger-ui distro OOB but it is also
> configurable with a map of extension-to-mediaTypes if needed.
>
> Give 3.1.8-SNAPSHOT a try next week please - hopefully it will eliminate
> any issues some browsers have when enforcing the strict mime type control
>
> Sergey
> On 16/08/16 21:25, Sergey Beryozkin wrote:
>
> > Ok, thanks, we can easily enough (I hope) make SwaggerUi jaxrs resource
> > configurable (ex - have it injected with a map of extensions to media
> > types that need to be returned, etc),
> >
> > In fact I'm pretty sure why you see it on some browser versions - when
> > CXF JAX-RS serves it directly it sets application/octet-stream by
> > default while when these UI resources are served by the default servlet
> > (example, when SwaggerUI jar is unpacked) a mapped content-type set...
> >
> > I'll need to look a bit more into it, as I said all works for me but
> > lots of different browsers around; good news though you've made it work
> > with Firefox
> >
> > Cheers, Sergey
> > On 16/08/16 18:37, jcrump wrote:
> >> Well, it's broken for me in Chrome but working in an older version
> >> (41) of
> >> Firefox... so I suppose this is something client-specific.  I'll poke
> >> around with the CORS filters but I seem to remember having similar
> >> problems
> >> with Chrome around CORS support on localhost.
> >>
> >> Thanks so much for your help so far.
> >>
> >> Jeff
> >>
> >> On Tue, Aug 16, 2016 at 12:55 PM, Sergey Beryozkin [via CXF] <
> >> [hidden email] <http:///user/SendEmail.jtp?type=node&node=5771666&i=0>>
> wrote:
> >>
> >>> Hi
> >>>
> >>> I've just tried 3 demos, description_swagger2, spring_boot,
> >>> spring_boot_scan, and linking to SwaggerUi from the services page
> works
> >>> fine (Firefox 48.0, and Chrome (not sure how to check a version there)
> >>> but I suppose it is the latest, Ubuntu updates it)
> >>>
> >>> Check Google for "strict MIME type checking is enabled".
> >>>
> >>> Or can you create a test maven project for me to investigate further ?
> >>> (so that I can reproduce and see if some JSON or CORS filter needs to
> be
> >>> added OOB).
> >>>
> >>> Speaking of CORS. CXF description_swagger2 demo ships ApiOriginFilter
> >>> (CXF has the one it can provide OOB too). The demo works fine for me
> >>> with or without this filter - but I believe Aki added it for good
> reason
> >>> - can you return an instance of that filter from @Bean method and see
> if
> >>> it helps ?
> >>>
> >>> If nothing helps consider creating a test module
> >>>
> >>> Cheers, Sergey
> >>>
> >>> On 16/08/16 17:19, jcrump wrote:
> >>>
> >>>> OK, progress... Yes, I had an auto-scan set on
> >>> 'org.apache.cxf.jaxrs.swagger'
> >>>> in my Spring Boot application.yaml. I removed it, and also removed
> the
> >>>> setBasePath.  I'm down to this:
> >>>>
> >>>>
> >>>>  @Bean
> >>>>     public Swagger2Feature swagger2Feature() {
> >>>>         Swagger2Feature feature = new Swagger2Feature();
> >>>>         feature.setResourcePackage("x.y.z.v1.rs");
> >>>>         feature.setTitle("My API");
> >>>>         return feature;
> >>>>     }
> >>>>
> >>>> which is quite nice.   All the server-side errors are gone, and only
> >>>> one
> >>>> endpoint in the service list:
> >>>>
> >>>> Available RESTful services:
> >>>> Endpoint address: http://localhost:8080/context/
> >>>> Swagger : http://localhost:8080/context/api-docs?url=/context/swagger.
>
> >>> json
> >>>>
> >>>> However, I'm still seeing a bunch of errors in my browser console on
> >>>> the
> >>>> client side when I go to that URL, all like this:
> >>>>
> >>>> Refused to execute script from '
> >>>> http://localhost:8080/context/lib/shred.bundle.js' because its MIME
> >>> type
> >>>> ('application/octet-stream') is not executable, and strict MIME type
> >>>> checking is enabled.
> >>>>
> >>>> So close!
> >>>>
> >>>>
> >>>>
> >>>> On Tue, Aug 16, 2016 at 11:57 AM, Sergey Beryozkin [via CXF] <
> >>>> [hidden email] <http:///user/SendEmail.jtp?type=node&node=5771648&i=0>>
>
> >>> wrote:
> >>>>
> >>>>> Can you check you have no SpringBoot configuration scanning
> >>>>> 'org.apache.cxf.jaxrs.swagger' - the CXF demo does it and picks up
> >>>>> Swagger2Feature automatically - that will explain these warnings.
> >>>>>
> >>>>> Can you also remove
> >>>>> feature.setBasePath("/api-docs") ?
> >>>>>
> >>>>> FYI, Swagger UI resource does listen on this path but this will be
> >>>>> configurable.
> >>>>>
> >>>>> Cheers, Sergey
> >>>>>
> >>>>> On 16/08/16 16:35, jcrump wrote:
> >>>>>
> >>>>>>
> >>>>>> Yes, I am using a SpringBoot starter.  So I took out the @Bean code
> >>> and
> >>>>>> replaced it with this:
> >>>>>>
> >>>>>> @Bean
> >>>>>> public Swagger2Feature swagger2Feature() {
> >>>>>>    Swagger2Feature feature = new Swagger2Feature();
> >>>>>>    feature.setResourcePackage("x.y.z.v1.rs");
> >>>>>>    feature.setTitle("My API");
> >>>>>>    feature.setBasePath("/api-docs");
> >>>>>>    return feature;
> >>>>>> }
> >>>>>>
> >>>>>> The JSON is being generated correctly and I'm only seeing one
> >>>>>> endpoint
> >>>>> on
> >>>>>> the services list:
> >>>>>>
> >>>>>> Available RESTful services:
> >>>>>> Endpoint address: http://localhost:8080/context/
> >>>>>> Swagger :
> >>>>>> http://localhost:8080/context/api-docs?url=/context/swagger.
> >>>
> >>>>> json
> >>>>>>
> >>>>>> When I click on the link, I get the Swagger UI but with no
> >>>>>> content.  I
> >>>>> get a
> >>>>>> whole bunch of messages like this:
> >>>>>>
> >>>>>> WARNING: Both
> >>>>>> org.apache.cxf.jaxrs.swagger.Swagger2Feature$SwaggerUIService#getResource
>
> >>>>>>
> >>>
> >>>>>
> >>>>>> and
> >>>>>> org.apache.cxf.jaxrs.swagger.Swagger2Feature$SwaggerUIService#getResource
>
> >>>>>>
> >>>
> >>>>>
> >>>>>> are equal candidates for handling the current request which can
> lead
> >>> to
> >>>>>> unpredictable results
> >>>>>>
> >>>>>> and a FileNotFoundException:
> >>>>>>
> >>>>>> Caused by: java.io.FileNotFoundException: JAR entry
> >>>>>> META-INF/resources/webjars/swagger-ui/2.1.8-M1/api-docs/lib/swagger-oauth.js
>
> >>>>>>
> >>>
> >>>>>
> >>>>>> not found in
> >>>>>> /Users/jcrump/.m2/repository/org/webjars/swagger-ui/2.1.8-M1/swagger-ui-2.1.8-M1.jar
>
> >>>>>>
> >>>
> >>>>>
> >>>>>> at
> >>>>>> sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:142)
>
> >>>>>>
> >>>
> >>>>>
> >>>>>>
> >>>>>>
> >>>>>> The problem is the "api-docs" in the META-INF path.  I traced this
> in
> >>>>> the
> >>>>>> debugger to Swagger2Feature.SwaggerUIService#getResource; the
> >>>>> resourcePath
> >>>>>> being passed in is prefixed with api-docs whereas the jar entry
> path
> >>> is
> >>>>> not.
> >>>>>> I tried removing the 'setBasePath' call in my @Bean method but it
> >>> didn't
> >>>>>> change anything.
> >>>>>>
> >>>>>> BTW, I'm also getting the warning message when called to generate
> the
> >>>>> JSON,
> >>>>>> but the warning is this:
> >>>>>>
> >>>>>> WARNING: Both io.swagger.jaxrs.listing.ApiListingResource#getListing
>
> >>>>> and
> >>>>>> io.swagger.jaxrs.listing.ApiListingResource#getListing are equal
> >>>>> candidates
> >>>>>> for handling the current request which can lead to unpredictable
> >>> results
> >>>>>>
> >>>>>> Same warning but different class. Sounds like a configuration or
> >>>>> classpath
> >>>>>> thing, but I couldn't detect any libraries duplicated on my
> >>>>>> classpath.
> >>>>>>
> >>>>>> Thanks.
> >>>>>>
> >>>>>>
> >>>>>>> Thanks for making it work so far.
> >>>>>>>
> >>>>>>> The question is, where is the first endpoint coming from, or
> rather
> >>> why
> >>>>>>> do you see two endpoints as opposed to the one you create ?
> >>>>>>>
> >>>>>>> Do use a SpringBoot starter with the auto-scan enabled ? That may
> >>>>> create
> >>>>>>> the endpoint at the "/" address (note for me - make sure this is
> >>>>>>> also
> >>>>>>> configurable in the auto-scan case)
> >>>>>>>
> >>>>>>> I'll need to sign off now as it is getting late but please try to
> >>>>>>> get
> >>>>>>> the only endpoint shown first and then we'll see what happens.
> >>>>>>>
> >>>>>>> FYI, if you use the auto-scan then you can usually remove all the
> >>> code
> >>>>>>> below but only keep a @Bean code returning Swagger2Feature
> >>>>>>> because it
> >>>>> is
> >>>>>>> configured, would not be needed otherwise (another note to myself
> -
> >>> how
> >>>>>>> to auto-configure Swagger2Feature in SpringBoot given that
> >>>>>>> Swagger2Feature can be used without Spring too)
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> --
> >>>>>> View this message in context: http://cxf.547215.n5.nabble.
> >>>>> com/Swagger2Feature-not-finding-Api-annotations-in-
> >>>>> interfaces-tp5771115p5771637.html
> >>>>>> Sent from the cxf-user mailing list archive at Nabble.com.
> >>>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>> ------------------------------
> >>>>> If you reply to this email, your message will be added to the
> >>> discussion
> >>>>> below:
> >>>>> http://cxf.547215.n5.nabble.com/Swagger2Feature-not-
> >>>>> finding-Api-annotations-in-interfaces-tp5771115p5771639.html
> >>>>> To unsubscribe from Swagger2Feature not finding @Api annotations in
> >>>>> interfaces, click here
> >>>>> <
> >>>>> .
> >>>>> NAML
> >>>>> <http://cxf.547215.n5.nabble.com/template/NamlServlet.jtp?
> >>> macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&
> >>> base=nabble.naml.namespaces.BasicNamespace-nabble.view.
> >>> web.template.NabbleNamespace-nabble.view.web.template.
> >>> NodeNamespace&breadcrumbs=notify_subscribers%21nabble%
> >>> 3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_
> >>> instant_email%21nabble%3Aemail.naml>
> >>>>>
> >>>>
> >>>>
> >>>>
> >>>>
> >>>> --
> >>>> View this message in context: http://cxf.547215.n5.nabble.
> >>> com/Swagger2Feature-not-finding-Api-annotations-in-
> >>> interfaces-tp5771115p5771644.html
> >>>> Sent from the cxf-user mailing list archive at Nabble.com.
> >>>>
> >>>
> >>>
> >>>
> >>> ------------------------------
> >>> If you reply to this email, your message will be added to the
> discussion
> >>> below:
> >>> http://cxf.547215.n5.nabble.com/Swagger2Feature-not-
> >>> finding-Api-annotations-in-interfaces-tp5771115p5771648.html
> >>> To unsubscribe from Swagger2Feature not finding @Api annotations in
> >>> interfaces, click here
> >>> <
> >>>
> >>> .
> >>> NAML
> >>> <http://cxf.547215.n5.nabble.com/template/NamlServlet.jtp?
> macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&
> base=nabble.naml.namespaces.BasicNamespace-nabble.view.
> web.template.NabbleNamespace-nabble.view.web.template.
> NodeNamespace&breadcrumbs=notify_subscribers%21nabble%
> 3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_
> instant_email%21nabble%3Aemail.naml>
> >>>
> >>>
> >>
> >>
> >>
> >>
> >> --
> >> View this message in context:
> >> http://cxf.547215.n5.nabble.com/Swagger2Feature-not-
> finding-Api-annotations-in-interfaces-tp5771115p5771650.html
> >>
> >> Sent from the cxf-user mailing list archive at Nabble.com.
> >>
> >
> >
>
>
> --
> Sergey Beryozkin
>
> Talend Community Coders
> http://coders.talend.com/
>
>
> ------------------------------
> If you reply to this email, your message will be added to the discussion
> below:
> http://cxf.547215.n5.nabble.com/Swagger2Feature-not-
> finding-Api-annotations-in-interfaces-tp5771115p5771666.html
> To unsubscribe from Swagger2Feature not finding @Api annotations in
> interfaces, click here
> <http://cxf.547215.n5.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=5771115&code=amNydW1wQGNvbnN0YW50Y29udGFjdC5jb218NTc3MTExNXwtMTU1OTE5MTQ3NA==>
> .
> NAML
> <http://cxf.547215.n5.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>




--
View this message in context: 
http://cxf.547215.n5.nabble.com/Swagger2Feature-not-finding-Api-annotations-in-interfaces-tp5771115p5771819.html
Sent from the cxf-user mailing list archive at Nabble.com.

Reply via email to