Tag: jersey

泽西岛2.26和春季4.3.10但没有HK2

是否可以配置Jersey 2.26.x,它完全取决于注射用Spring而不是HK2? 我知道Jersey现在与Spring兼容,但它是否也可以完全摆脱HK2?

如何使用@PathParam的自定义类型?

我想使用非spring bean类对象作为jersey web服务类方法的参数。 但它在构建时给出了缺少的依赖性错误。 我的代码是: @Component @Path(“/abcd”) public class ActorServiceEndpoint { @POST @Path(“/test/{nonspringBean}”) @Produces(MediaType.APPLICATION_XML) public void addActor(@PathParam(“nonspringBean”) MyNonSpringBeanClass nonspringBean){ } }

尝试构建Web服务时的ContainerException

我收到一个ERROR ,表示Resource Config没有root resource class 。这是我的网络服务代码: public class MapErpService { //first a URI for each resource,create using PUT DBUtils db; MapErpService() { db=new DBUtils(“zmaperp”, “root”, “root”); } @PUT @Path(“/{objtype}/{objkey}”) @Consumes(MediaType.APPLICATION_JSON) public Response createGeometry(@PathParam(“objtype”) String objtype,@PathParam(“objkey”) String objkey,JSONObject obj) { //generate gisuniqkey here JSONObject geo=(JSONObject) obj.get(“geometry”); String gisuniqkey=(String) obj.get(“gisuniqkey”); String wkt=db.convertToWKT(geo.toJSONString()); if(db.insertGeometryValues(gisuniqkey, objkey, objtype, wkt)) { […]

如何从jersey servlet中的curl请求中提取参数?

我正在向表格中的我的jerseyservlet发送一个curl post restful请求 curl -i -X POST -d “debit_user_id=/custome/mobile_number:917827448775″http://localhost:8080/switch/apikongcall.do/transactions 我需要在我的servlet中获取debit_user_id,我的Post方法的代码是 @POST //@Path(“/transactions”) //@Consumes(MediaType.APPLICATION_JSON) public Response createTrackInJSON(@QueryParam(“debit_user_id”) String debit_user_id) { //Log logger = null; this.logger = LogFactory.getLog(getClass()); this.logger.info(“Inside post method”+debit_user_id); String response = debit_user_id; //String response = “testParam is: ” + recipient_id + “\n”; //String result = “Track saved : ” + track; return Response.status(200).entity(response).build(); 但是我的debit_user_id是空的。 […]

swagger – 没有API的空列表

我试图使用swagger来记录我的Rest API。 我正在开发一个Tomcat / Spring服务器,其余的apis是使用Jersey开发的。 我按照招摇指南并将所需数据添加到我的web.xml: resources com.sun.jersey.spi.container.servlet.ServletContainer com.sun.jersey.config.property.packages com.wordnik.swagger.jersey.listing;app.servlet.resources.jersey;org.codehaus.jackson.jaxrs swagger.api.basepath http://localhost:8080/main/resources/ api.version 1 1 http://:8080 / main / resources / api-docs返回以下内容: {“apiVersion”:”0.0″,”swaggerVersion”:”1.2″} 知道我在这里什么?

404访问Tomcat 7中的Jersey应用程序时

我是Web开发的新手,我正在努力创建一个简单的restWeb服务,使用jersey,打包为独立的war文件,部署在tomcat 7上。 我已经按照本教程创建了简单的hello world restful web服务。 我使用intelij来创建war文件(war文件和它的爆炸版本)并将它们部署在tomcat \ webapps文件夹中。 启动tomcat时,我无法访问url( http://localhost:8080/rest/hello ) – 获得404。 查看tomcat的日志,我找不到任何exception或错误,除了下一组行: INFO: Scanning for root resource and provider classes in the packages: sample εαΘ 30, 2013 11:24:38 PM com.sun.jersey.api.core.ScanningResourceConfig logClasses INFO: Root resource classes found: class sample.Hello εαΘ 30, 2013 11:24:38 PM com.sun.jersey.api.core.ScanningResourceConfig init INFO: No provider classes found. 我已经搜索了很多,并试图遵循所有解决方案,但没有任何效果。 由于我的新生,我觉得我错过了一些非常基本的东西。 […]

无法访问Spring Boot和Jersey应用程序中的某些控制器

我有一个小问题来访问一些控制器。 当我向/发送请求时,我得到一个HTTP 404,并且对于movies路径也是如此。 package com.emo.server; @Configuration @ComponentScan({“com.emo.server”, “com.emo.server.controller”}) @EnableAutoConfiguration public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } @Path(“/”) public String home() { return “Hello World”; } @Configuration @EnableResourceServer protected static class ResourceServer extends ResourceServerConfigurerAdapter { @Override public void configure(HttpSecurity http) throws Exception { // @formatter:off http .authorizeRequests().antMatchers(“/movies”).permitAll() .and() .authorizeRequests() .antMatchers(“/test”) […]

使用Jersey客户端重置连接

我在生产中看到很多连接重置。可能有多种原因,但我想确保代码中没有连接泄漏。我在代码中使用Jersey客户端 Client this.client = ApacheHttpClient.create(); client.resource(“/stores/”+storeId).type(MediaType.APPLICATION_JSON_TYPE).put(ClientResponse.class,indexableStore); 最初我用以下方式实例化客户端客户端this.client = Client.create(),我们将其更改为ApacheHttpClient.create()。 我没有在响应上调用close()但我假设ApacheHttpClient会在内部执行,因为HttpClient executeMethod被调用,它会为我们处理所有的样板。 编写代码的方式是否存在潜在的连接泄漏?

Jackson JsonParseExceptionMapper和JsonMappingExceptionMapper阴影自定义映射器

我的项目使用Spring Boot + Jersey 2。 我为JsonParseException创建了自定义Jackson映射器,但它没有被调用,而是使用标准的Jackson JsonParseExceptionMapper。 我的自定义映射器: package com.rmn.gfc.common.providers; import … @Provider public class JsonParseExceptionHandler implements ExceptionMapper { @Override public Response toResponse(JsonParseException exception) { return Response .status(Response.Status.BAD_REQUEST) // entity … .build(); } } 我像这样注册我的映射器: @Component public class OrderServiceResourceConfig extends ResourceConfig { public OrderServiceResourceConfig() { packages(“com.rmn.gfc.common.providers”); } } 我确信mapper注册很好,因为这个包中的其他自定义映射器正在工作,但是JsonParseException的一个被Jersey标准JsonParseExceptionMapper遮蔽。 我怎么能用我的实现覆盖标准的Jackson JsonParseExceptionMapper?

如何为使用JSON JAXB绑定的Jersey REST API生成文档?

现在我已经想出如何使用JAXB生成JSON我可以在我的服务器上请求/响应它,我想弄清楚如何为不使用Java的人生成有用的文档。 我的服务器代码如下所示: @POST @Path(“apath”) @Consumes(MediaType.APPLICATION_JSON) public String postAPath(InstanceWithXmlRootElementAnnotation instanceWithXmlRootElementAnnotation) { 如果有人使用Java,这一切都很好。 我只是给它们带有InstanceWithXmlRootElementAnnotation类的Jar,并告诉他们发送它(是的,还有一些工作,忽略那些细节)。 如果他们使用其他语言,我不知道如何告诉他们有效负载的格式以及如果它返回InstanceWithXmlRootElementAnnotation会对服务器产生什么期望。 如何生成解释JSON有效负载的预期格式的文档?