There might be a clue in the response headers - it mentions nginx. - Stephen
> On 24 Jun 2019, at 10:58, Kuttaiah Robin <kutta...@gmail.com> wrote: > > Hello, > > I have a usecase for importing zip file into our microservice. Hence below is > the code I have. > > REST RESOURCE > --------------- > @Path("/models") > @Provider > @Produces( {"application/json"} ) > @OpenAPIDefinition( > info = @Info > ( > title = "insightmanager", > version = "1.0.0", > description = "Insight Manager" > ), > servers = { > @Server( > url = "{protocol}//{host}:{port}/{basePath}", > variables = { > @ServerVariable(name = "protocol",defaultValue = "http:"), > @ServerVariable(name = "host", defaultValue = "localhost"), > @ServerVariable(name = "port", defaultValue = "8765"), > @ServerVariable(name = > "basePath",defaultValue="insight-server/api/1.0/") > })} > ) > public class ModelResource { > > > @POST > @Path(value = "{modelId}/version}/importmodel") > @Consumes(MediaType.MULTIPART_FORM_DATA) > @Operation(summary = "import model ", > responses = { > @ApiResponse(responseCode = "200" ,description = "get t2p info", > content = @Content(mediaType = "application/json", > schema = @Schema(implementation = T2PInfo.class))), > @ApiResponse(responseCode = "500", description = "import failed", > content = > @Content(mediaType="application/json",schema=@Schema(implementation = > oracle.insight.server.rest.model.Status.class)))}) > public Response importModel(@Context HttpHeaders headers, > @FormDataParam("file") InputStream uploadedInputStream, > @FormDataParam("file") FormDataContentDisposition fileMetaData, > @PathParam("version") String version, > @QueryParam("overwrite") boolean overwrite, @QueryParam("locale") > String locale) { > > ModelService modelService = > ModelServiceFactory.INSTANCE.getModelService(); > Response response = modelService.importModel(uploadedInputStream, > overwrite, locale); > return response; > } > } > > > I have a Configuration Bundle like; > > public class InsightManagerBundle implements > ConfiguredBundle<DWInsightManagerConfiguration> { > > > @Override > public void run(final DWInsightManagerConfiguration configuration, final > Environment environment) throws Exception { > configureCors(environment); > } > > > @Override > public void initialize(final Bootstrap<?> bootstrap) { > // nothing to do here, we need access to configuration and we won't have > that until run() is executed. > } > > > private void configureCors(Environment environment) { > final FilterRegistration.Dynamic cors = > environment.servlets().addFilter("CORS", CrossOriginFilter.class); > > > // Configure CORS parameters > cors.setInitParameter(CrossOriginFilter.ALLOWED_ORIGINS_PARAM, "*"); > cors.setInitParameter(CrossOriginFilter.ALLOWED_HEADERS_PARAM, "origin, > content-type, accept, authorization"); > cors.setInitParameter(CrossOriginFilter.ALLOWED_METHODS_PARAM, > "OPTIONS,GET,PUT,POST,DELETE,HEAD"); > cors.setInitParameter(CrossOriginFilter.ALLOW_CREDENTIALS_PARAM, "true"); > > > // Add URL mapping > cors.addMappingForUrlPatterns(EnumSet.allOf(DispatcherType.class), true, > "/*"); > > } > } > > > This configuration bundle is being added in Application; > > public final class DWInsightManagerApplication extends > Application<DWInsightManagerConfiguration> { > > > public DWInsightManagerApplication() { > super(); > } > > > @Override > public String getName() { > return DWInsightManagerConfiguration.ROOT_PATH; > } > > > @Override > public void run(final DWInsightManagerConfiguration configuration, final > Environment environment) { > insightManager.customizeRouting(environment.jersey().getResourceConfig()); > } > > > @Override > public void initialize(Bootstrap<DWInsightManagerConfiguration> bootstrap) { > super.initialize(bootstrap); > bootstrap.addBundle(new InsightManagerBundle()); > } > } > > > > I tried adding in our Configuration class or within run method of our > application itself but it is of no use. > > I always get "405 Method Not Allowed" > > Response Headers; > HTTP/1.1 405 Method Not Allowed > Server: nginx > Date: Mon, 24 Jun 2019 09:04:50 GMT > Content-Length: 54 > Connection: keep-alive > allow: DELETE,GET,OPTIONS,PUT > ......... > > > DELETE, GET, PUT works without issues. This POST rest API works in other > framework, so I do not see any issue with that. > > Is there something am missing basic stuff or is it an issue with 2.0.0-rc3 > candidate. > > Any help would be highly appreciated. > -- > You received this message because you are subscribed to the Google Groups > "dropwizard-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to dropwizard-dev+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/dropwizard-dev/54ef6033-ccb2-443d-a42f-0b787f44492a%40googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "dropwizard-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to dropwizard-dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/dropwizard-dev/AEDFB9A1-FFD1-40D8-867B-B5586A4C02F6%40googlemail.com. For more options, visit https://groups.google.com/d/optout.