JAX RS - Embedded Jetty and Swagger not getting json -


with below code able call api with:

http://localhost:8080/test/myapi/squareroot?input=2 

and output

{     "action":"square root",     "input":2.0,"output":1.4142135623730951 } 

but when try call

http://localhost:8080/test/swagger.json 

i getting 404 error. please me understand error.

package com.krish.som.controller;  import io.swagger.annotations.api; import io.swagger.annotations.apioperation;  import javax.ws.rs.get; import javax.ws.rs.path; import javax.ws.rs.produces; import javax.ws.rs.queryparam; import javax.ws.rs.core.mediatype;  @path("myapi") @api(value = "/squareroot", description = "web services browse squareroot") public class calculator {       @get     @path("squareroot")     @apioperation(value = "return 1 entity", notes = "returns 1 entity @ random", response = result.class)     @produces(value = mediatype.application_json)     public result squareroot(@queryparam("input") double input){         result result = new result("square root");         result.setinput(input);         result.setoutput(math.sqrt(result.getinput()));         return result;     }      @get     @path("square")     @produces(mediatype.application_json)     public result square(@queryparam("input") double input){         result result = new result("square");         result.setinput(input);         result.setoutput(result.getinput()*result.getinput());         return result;     }      static class result{         double input;         double output;         string action;          public result(){}          public result(string action) {             this.action = action;         }          public string getaction() {             return action;         }          public void setaction(string action) {             this.action = action;         }          public double getinput() {             return input;         }          public void setinput(double input) {             this.input = input;         }          public double getoutput() {             return output;         }          public void setoutput(double output) {             this.output = output;         }     } }     package com.krish.som.controller;  import com.krish.som.controller.calculator; import io.swagger.jaxrs.config.defaultjaxrsconfig; import org.eclipse.jetty.server.server; import org.eclipse.jetty.servlet.servletcontexthandler; import org.eclipse.jetty.servlet.servletholder; import org.glassfish.jersey.servlet.servletcontainer;  public class somserver {     public somserver() {     }      public static void main(string[] args) throws exception {         server server = new server(8080);         servletcontexthandler context = new servletcontexthandler(1);         context.setcontextpath("/test");         server.sethandler(context);         servletholder apiservlet = context.addservlet(servletcontainer.class, "/*");         apiservlet.setinitparameter("jersey.config.server.provider.classnames", calculator.class.getcanonicalname());         apiservlet.setinitorder(0);         apiservlet.setinitparameter("com.sun.jersey.config.property.packages", "com.krish.som.controller;io.swagger.jaxrs.json;io.swagger.jaxrs.listing;io.swagger.resources");         servletholder swaggerservlet = context.addservlet(defaultjaxrsconfig.class, "/swagger-core");         swaggerservlet.setinitorder(1);         server.start();         server.join();     } } <?xml version="1.0" encoding="utf-8"?> <project xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"          xmlns="http://maven.apache.org/pom/4.0.0"          xsi:schemalocation="http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">     <modelversion>4.0.0</modelversion>     <groupid>com.krish</groupid>     <artifactid>som</artifactid>     <version>1.0-snapshot</version>     <dependencies>          <dependency>             <groupid>org.eclipse.jetty</groupid>             <artifactid>jetty-server</artifactid>             <version>9.2.3.v20140905</version>         </dependency>           <dependency>             <groupid>org.eclipse.jetty</groupid>             <artifactid>jetty-servlet</artifactid>             <version>9.2.3.v20140905</version>         </dependency>           <dependency>             <groupid>org.glassfish.jersey.core</groupid>             <artifactid>jersey-server</artifactid>             <version>2.7</version>         </dependency>           <dependency>             <groupid>org.glassfish.jersey.containers</groupid>             <artifactid>jersey-container-servlet-core</artifactid>             <version>2.7</version>         </dependency>           <dependency>             <groupid>org.glassfish.jersey.containers</groupid>             <artifactid>jersey-container-jetty-http</artifactid>             <version>2.7</version>         </dependency>         <dependency>             <groupid>org.glassfish.jersey.media</groupid>             <artifactid>jersey-media-moxy</artifactid>             <version>2.7</version>         </dependency>         <dependency>             <groupid>io.swagger</groupid>             <artifactid>swagger-jersey2-jaxrs</artifactid>             <version>1.5.3</version>         </dependency>         <dependency>             <groupid>org.slf4j</groupid>             <artifactid>slf4j-api</artifactid>             <version>${slf4j-version}</version>         </dependency>         <dependency>             <groupid>org.slf4j</groupid>             <artifactid>slf4j-log4j12</artifactid>             <version>${slf4j-version}</version>         </dependency>     </dependencies>      <properties>         <slf4j-version>1.7.12</slf4j-version>     </properties> </project> 


Comments

Popular posts from this blog

amazon web services - S3 Pre-signed POST validate file type? -

c# - Check Keyboard Input Winforms -