Sorry, corrected package. Same result though

beanConfig.setResourcePackage("com.api.resources");
beanConfig.setResourcePackage("io.swagger.jaxrs.json");
beanConfig.setResourcePackage("io.swagger.jaxrs.listing");
beanConfig.setResourcePackage("com.coreservices.servlets");
beanConfig.setResourcePackage("com.coreservices.datatypes");
beanConfig.setScan(true);
beanConfig.setPrettyPrint(true);


On Thursday, 22 December 2016 16:03:57 UTC-5, janet vanderpuye wrote:
>
> Thanks Ron. I tried that and no success. The new code for the bootstrap 
> class was 
>
> beanConfig.setResourcePackage("com.api.resources");
> beanConfig.setResourcePackage("io.swagger.jaxrs.json");
> beanConfig.setResourcePackage("io.swagger.jaxrs.listing");
> beanConfig.setResourcePackage("com.gh.cive.coreservices.servlets");
> beanConfig.setResourcePackage("com.gh.cive.coreservices.datatypes");
> beanConfig.setScan(true);
> beanConfig.setPrettyPrint(true);
>
>
> Looking at the logs, it shows that at least it picked up my servlet 
> package for scanning. Could it be an error in the way I declared the 
> annotations? Log output is:
>
>> 308 [main] INFO Main  - User profile server initialized.
>>
>> Dec 22, 2016 3:57:50 PM com.sun.jersey.api.core.PackagesResourceConfig 
>>> init
>>
>> INFO: Scanning for root resource and provider classes in the packages:
>>
>>   com.api.resources
>>
>>   io.swagger.jaxrs.json
>>
>>   io.swagger.jaxrs.listing
>>
>>   com.coreservices.servlets
>>
>>   com.coreservices.datatypes
>>
>> Dec 22, 2016 3:57:50 PM com.sun.jersey.api.core.ScanningResourceConfig 
>>> logClasses
>>
>> INFO: Root resource classes found:
>>
>>   class io.swagger.jaxrs.listing.AcceptHeaderApiListingResource
>>
>>   class io.swagger.jaxrs.listing.ApiListingResource
>>
>> Dec 22, 2016 3:57:50 PM com.sun.jersey.api.core.ScanningResourceConfig 
>>> logClasses
>>
>> INFO: Provider classes found:
>>
>>   class io.swagger.jaxrs.listing.SwaggerSerializers
>>
>> Dec 22, 2016 3:57:50 PM 
>>> com.sun.jersey.server.impl.application.WebApplicationImpl _initiate
>>
>> INFO: Initiating Jersey application, version 'Jersey: 1.19.1 03/11/2016 
>>> 02:08 PM'
>>
>> 2277 [main] INFO Main  - user profile service started
>>
>>
> On Thursday, 22 December 2016 15:47:24 UTC-5, Ron wrote:
>>
>> Looking back, you have a Bootstrap class with the line 
>>
>>     beanConfig.setResourcePackage("io.swagger.resources");
>>
>>  
>>
>> Change “io.swagger.resources” to the package(s) of your resources and 
>> that should allow it to pick them up and scan them.
>>
>>  
>>
>>  
>>
>>  
>>
>> *From: *<[email protected]> on behalf of janet vanderpuye <
>> [email protected]>
>> *Reply-To: *"[email protected]" <
>> [email protected]>
>> *Date: *Thursday, 22 December 2016 at 12:28
>> *To: *Swagger <[email protected]>
>> *Subject: *Re: Cant locate swagger.json on java + embedded jetty + 
>> httpservlet + swagger integration
>>
>>  
>>
>> Yeah the Api calls work. I can make calls to my servlets without error. 
>> Its just the swagger documentation is not generating any of my annotations.
>>
>> On Thursday, 22 December 2016 15:25:14 UTC-5, Ron wrote: 
>>
>> Okay, so it should work.
>>
>>  
>>
>> Is your API itself accessible? Can you make any of the API calls 
>> successfully?
>>
>>  
>>
>>  
>>
>>  
>>
>> *From: *<[email protected]> on behalf of janet vanderpuye <
>> [email protected]>
>> *Reply-To: *"[email protected]" <
>> [email protected]>
>> *Date: *Thursday, 22 December 2016 at 11:37
>> *To: *Swagger <[email protected]>
>> *Subject: *Re: Cant locate swagger.json on java + embedded jetty + 
>> httpservlet + swagger integration
>>
>>  
>>
>> In my pom file, I have *1.19.1*
>>
>>  
>>
>> <dependency>
>>     <groupId>io.swagger</groupId>
>>     <artifactId>swagger-annotations</artifactId>
>>     <version>1.5.10</version>
>> </dependency>
>> <dependency>
>>     <groupId>com.google.code.gson</groupId>
>>     <artifactId>gson</artifactId>
>>     <version>2.7</version>
>> </dependency>
>> <dependency>
>>     <groupId>io.swagger</groupId>
>>     <artifactId>swagger-jaxrs</artifactId>
>>     <version>1.5.10</version>
>> </dependency>
>> <dependency>
>>     <groupId>com.sun.jersey</groupId>
>>     <artifactId>jersey-servlet</artifactId>
>>     <version>1.19.1</version>
>> </dependency>
>>
>>
>> On Thursday, 22 December 2016 14:34:08 UTC-5, Ron wrote: 
>>
>> Which version of Jersey do you use?
>>
>>  
>>
>>  
>>
>>  
>>
>> *From: *<[email protected]> on behalf of janet vanderpuye <
>> [email protected]>
>> *Reply-To: *"[email protected]" <
>> [email protected]>
>> *Date: *Thursday, 22 December 2016 at 11:10
>> *To: *Swagger <[email protected]>
>> *Subject: *Re: Cant locate swagger.json on java + embedded jetty + 
>> httpservlet + swagger integration
>>
>>  
>>
>> So for my servlets, I just tried: 
>>
>>  
>>
>> apiservlet = servletContextHandler.addServlet(ProfileServlet.class, 
>> "/user/*");
>> apiservlet.setInitOrder(3);
>> apiservlet.setInitParameter("com.sun.jersey.config.property.packages", 
>> "com.coreservices.servlets;package com.coreservices.datatypes");
>>
>>  
>>
>> and  
>>
>>  
>>
>> apiservlet = servletContextHandler.addServlet(ProfileServlet.class, 
>> "/user/*");
>> apiservlet.setInitOrder(3);
>> apiservlet.setInitParameter("com.sun.jersey.config.property.packages", 
>> "com.api.resources;io.swagger.jaxrs.json;io.swagger.jaxrs.listing;com.coreservices.servlets;package
>>  
>> com.coreservices.datatypes");
>>
>>  
>>
>> I am still getting the default swagger response 
>>
>> *{"swagger":"2.0","info":{"version":"1.0.0","title":""}}*
>>
>> Am I missing any annotation or configuration in the files?
>>
>> Secondly to access the swagger ui annotation for my custom servlet 
>> "ProfileServlet.class", do I use the same url as "
>> http://host:7000/api/swagger.json";? 
>>
>>  
>>
>> Really appreciate the quick feedback on this
>>
>>
>> On Thursday, 22 December 2016 13:52:18 UTC-5, tony tam wrote: 
>>
>> Sounds like the issue then is how it’s scanning your code.  Put your API 
>> package here: 
>>
>>  
>>
>>     apiservlet.setInitParameter("com.sun.jersey.config.property.packages", 
>> "com.api.resources;io.swagger.jaxrs.json;io.swagger.jaxrs.listing");
>>
>> so they can be scanned.
>>
>>  
>>
>> On Dec 22, 2016, at 10:50 AM, janet vanderpuye <[email protected]> wrote:
>>
>>  
>>
>> Quick update. After modifying the initializeAPI method to the original 
>> Servlet class in the blog(see below),  I was able to get some response from 
>> the swagger-ui on http://host:7000/api/swagger.json. But I it seems like 
>> swagger wasnt able to parse my servlet annotations 
>>
>> http://host:7000/api/swagger.json ===> 
>> *{"swagger":"2.0","info":{"version":"1.0.0","title":""}}*
>>
>>  
>>
>> private static Server initializeApi(Properties properties) {
>>     *logger*.info("Initializing user profile server...");
>>     new UserDao();
>>     Server server = new 
>> Server(Integer.*parseInt*(properties.getProperty(Config.*JETTY_SERVICE_PORT*)));
>>     ServletContextHandler servletContextHandler = new 
>> ServletContextHandler(ServletContextHandler.*SESSIONS*);
>>     servletContextHandler.setContextPath("/");
>>     server.setHandler(servletContextHandler);
>>     //Setup APIs
>>     ServletHolder apiservlet = 
>> servletContextHandler.addServlet(ServletContainer.class, "/api/*");
>>     apiservlet.setInitOrder(1);
>>     apiservlet.setInitParameter("com.sun.jersey.config.property.packages", 
>> "com.api.resources;io.swagger.jaxrs.json;io.swagger.jaxrs.listing");
>>
>>     apiservlet = servletContextHandler.addServlet(ProfileServlet.class, 
>> "/user/*");
>>     //apiservlet.setInitOrder(1);
>>     apiservlet.setInitParameter("com.sun.jersey.config.property.packages", 
>> "com.api.resources;io.swagger.jaxrs.json;io.swagger.jaxrs.listing");
>>     *logger*.info("User profile server initialized.");
>>
>>     // Setup Swagger servlet
>>     ServletHolder swaggerServlet = 
>> servletContextHandler.addServlet(DefaultJaxrsConfig.class, "/swagger-core");
>>     swaggerServlet.setInitOrder(2);
>>     swaggerServlet.setInitParameter("api.version", "1.0.0");
>>
>>     // Setup Swagger-UI static resources
>>     String resourceBasePath = 
>> Main.class.getResource("/webapp").toExternalForm();
>>     servletContextHandler.setWelcomeFiles(new String[] {"index.html"});
>>     servletContextHandler.setResourceBase(resourceBasePath);
>>     servletContextHandler.addServlet(new ServletHolder(new 
>> DefaultServlet()), "/*");
>>
>>     return server;
>> }
>>
>>
>> On Thursday, 22 December 2016 13:31:03 UTC-5, janet vanderpuye wrote: 
>>
>> I recently followed this blog 
>> <https://gist.github.com/nosmokingpistol/302c4c3ef30f183cf70e> to 
>> integrate swagger in my embedded jetty project but after running, I'm not 
>> able to access the swagger.json file on any path combination. Accessing the 
>> servlets for the resources work with no error but I get the following 
>> errors when I try to get the swagger.json file
>>
>> http://host:7000/swagger-core  ===> HTTP ERROR 405
>>
>> http://host:7000/swagger-core/swagger.json ===> HTTP ERROR 404
>>
>> http://host:7000/user/swagger.json ===> HTTP ProfileServlet response, not 
>> swagger.json
>>
>> http://host:7000/user ===> HTTP ProfileServlet response, not swagger.json
>>
>> http://host:7000/swagger.json ===> HTTP ERROR 404
>>
>> http://host:7000/api/swagger.json ===> HTTP ERROR 404
>>
>> http://host:7000/ ===> Static swagger sample page (Pet store), not 
>> swagger.json
>>
>> Main.java
>>
>>  public static void main(String[] args) throws Exception {
>>
>>    Server server = initializeApi(properties);
>>
>>     server.start();
>>
>>     logger.info("Api resource service started");
>>
>>     server.join();
>>
>>  }
>>
>>  
>>
>>  private static Server initializeApi(Properties properties) {
>>
>>     logger.info("Initializing user profile server...");
>>
>>     new UserDao();
>>
>>     Server server = new 
>> Server(Integer.parseInt(properties.getProperty(Config.JETTY_SERVICE_PORT)));
>>
>>     ServletContextHandler servletContextHandler = new 
>> ServletContextHandler(ServletContextHandler.SESSIONS);
>>
>>     servletContextHandler.setContextPath("/");
>>
>>     server.setHandler(servletContextHandler);
>>
>>     //Setup APIs
>>
>>  
>>
>>     ServletHolder apiservlet = 
>> servletContextHandler.addServlet(ProfileServlet.class, "/user/*");
>>
>>     apiservlet.setInitOrder(1);
>>
>>     apiservlet.setInitParameter("com.sun.jersey.config.property.packages", 
>> "com.api.resources;io.swagger.jaxrs.json;io.swagger.jaxrs.listing");
>>
>>     logger.info("User profile server initialized.");
>>
>>  
>>
>>         // Setup Swagger servlet
>>
>>         ServletHolder swaggerServlet = 
>> servletContextHandler.addServlet(DefaultJaxrsConfig.class, "/swagger-core");
>>
>>         swaggerServlet.setInitOrder(2);
>>
>>         swaggerServlet.setInitParameter("api.version", "1.0.0");
>>
>>  
>>
>>         // Setup Swagger-UI static resources
>>
>>         String resourceBasePath = 
>> Main.class.getResource("/webapp").toExternalForm();
>>
>>         servletContextHandler.setWelcomeFiles(new String[] {"index.html"});
>>
>>         servletContextHandler.setResourceBase(resourceBasePath);
>>
>>         servletContextHandler.addServlet(new ServletHolder(new 
>> DefaultServlet()), "/*");
>>
>>  
>>
>>         return server;
>>
>>     }
>>
>> }
>>
>> ProfileServlet.java
>> <pre style="backg
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"Swagger" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to