Hi there,
I am still a newby with spring restful webservice...
I wanna use spring restful service to invoke some of the methods I defined which is supposed to initialise birt enigine instance.
>> Here is my method
Code:@RequestMapping(value="/getBirtEngine" ,method={RequestMethod.GET}) public @ResponseBody IReportEngine getBirtEngine(){ IReportEngine iReportEngine = null; try { iReportEngine = ReportEngineUtil.getBirtEngine(); } catch (Exception e) { e.printStackTrace(); } return iReportEngine; }
and
Code:@RequestMapping(value="/openReportDesign/{reportName}" ,method={RequestMethod.GET}) public @ResponseBody IReportRunnable openReportDesign(@PathVariable String reportName){ IReportRunnable runnable = null; try { runnable = ReportEngineUtil.openReportDesign(reportName); } catch (EngineException e) { e.printStackTrace(); } return runnable; }
and this is how I am invoking the methods :
andCode:IReportEngine engineReportEngine = restTemplate.getForObject(getUri("/getBirtEngine", null),IReportEngine.class);
Code:IReportRunnable runnable = restTemplate.getForObject(getUri("/openReportDesign/", reportName), IReportRunnable.class);
and this is am error I am getting
[12/09/27 10:27:34:756 GMT+02:00] 0000003f ServletWrappe E SRVE0068E: Uncaught exception thrown in one of the service methods of the servlet: springds. Exception thrown : org.codehaus.jackson.map.JsonMappingException: Infinite recursion (StackOverflowError) (through reference chain: org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["prototype"]->org.mozilla.javascript.NativeObject["parentScope"]->org.mozilla.javascript.NativeObject["className"])
at org.codehaus.jackson.map.ser.BeanSerializer.serial izeFields(BeanSerializer.java:189)
at org.codehaus.jackson.map.ser.BeanSerializer.serial ize(BeanSerializer.java:142)
at org.codehaus.jackson.map.ser.BeanPropertyWriter.se rializeAsField(BeanPropertyWriter.java:430)
at org.codehaus.jackson.map.ser.BeanSerializer.serial izeFields(BeanSerializer.java:175)
at org.codehaus.jackson.map.ser.BeanSerializer.serial ize(BeanSerializer.java:142)
at org.codehaus.jackson.map.ser.BeanPropertyWriter.se rializeAsField(BeanPropertyWriter.java:430)
at org.codehaus.jackson.map.ser.BeanSerializer.serial izeFields(BeanSerializer.java:175)
at org.codehaus.jackson.map.ser.BeanSerializer.serial ize(BeanSerializer.java:142)
at org.codehaus.jackson.map.ser.BeanPropertyWriter.se rializeAsField(BeanPropertyWriter.java:430)
at org.codehaus.jackson.map.ser.BeanSerializer.serial izeFields(BeanSerializer.java:175)
at org.codehaus.jackson.map.ser.BeanSerializer.serial ize(BeanSerializer.java:142)
at org.codehaus.jackson.map.ser.BeanPropertyWriter.se rializeAsField(BeanPropertyWriter.java:430)
at org.codehaus.jackson.map.ser.BeanSerializer.serial izeFields(BeanSerializer.java:175)
at org.codehaus.jackson.map.ser.BeanSerializer.serial ize(BeanSerializer.java:142)
at org.codehaus.jackson.map.ser.BeanPropertyWriter.se rializeAsField(BeanPropertyWriter.java:430)
at org.codehaus.jackson.map.ser.BeanSerializer.serial izeFields(BeanSerializer.java:175)
at org.codehaus.jackson.map.ser.BeanSerializer.serial ize(BeanSerializer.java:142)
at org.codehaus.jackson.map.ser.BeanPropertyWriter.se rializeAsField(BeanPropertyWriter.java:430)
at org.codehaus.jackson.map.ser.BeanSerializer.serial izeFields(BeanSerializer.java:175)
at org.codehaus.jackson.map.ser.BeanSerializer.serial ize(BeanSerializer.java:142)
Any help will greatly appreciated Thanks


Reply With Quote