Tag: restful architecture

在RamlValidationService中获取java.lang.NoSuchFieldError:VALUE

我想创建一个RAMLvalidation器,它将获得RAML URL resturnvalidation结果。 为此我使用raml-java-parser 。 根据其自述文件,我尝试在下面的代码行执行: String sourceUrl = “http://api.apihub.com/onpositive/api/espn-raml-api/espn.raml”; List results = RamlValidationService.createDefault().validate(sourceUrl); 并得到以下错误消息: java.lang.NoSuchFieldError: VALUE 为什么我收到此错误? 在此之前,我得到了一些类未找到的exception,因此我手动应用了下面的jar库。 > juniversalchardet_1.0.3_1.0.0.jar > raml_parser_0.8.11_1.0.0.jar > rhino_1.7R4_1.0.0.jar > snakeyaml-1.16.jar > jackson_databind_2.4.4_1.0.0.jar 我也试过以下的东西。 inputStream是我通过ByteArrayInputStream解析的RAML内容。 但这不是一个无效的RAML因此我可能做错了。

如何处理来自REST服务的大量数据

我们正在使用返回大量数据的REST服务。 在生产中,服务器硬件可以处理它。 我需要通过获取本地计算机上的数据来测试REST服务,这些数据无法处理大量数据。 我的本地机器是4G i5。 每次我点击服务时,我都会出现内存exception。 response.getStatus()返回200状态。 但是在使用输入流读取器收集数据时,我得到了内存不足的exception。 BufferedReader br = new BufferedReader(new InputStreamReader(newByteArrayInputStream(response.getEntity().getBytes()))); 有没有其他方法来收集数据而不会遇到内存exception? 我尝试将我的VM大小推到2G,但它仍然不起作用。

如何捕获RESTEasy Beanvalidation错误?

我正在使用JBoss-7.1和RESTEasy开发一个简单的RESTFul服务。 我有一个名为CustomerService的REST服务,如下所示: @Path(value=”/customers”) @ValidateRequest class CustomerService { @Path(value=”/{id}”) @GET @Produces(MediaType.APPLICATION_XML) public Customer getCustomer(@PathParam(“id”) @Min(value=1) Integer id) { Customer customer = null; try { customer = dao.getCustomer(id); } catch (Exception e) { e.printStackTrace(); } return customer; } } 当我点击URL http:// localhost:8080 / SomeApp / customers / -1时, @ Min约束将失败并在屏幕上显示堆栈跟踪。 有没有办法捕获这些validation错误,以便我可以准备一个带有正确错误消息的xml响应并显示给用户?