protected static final List<String> DESCRIPTION_INIT_STRATEGY = Arrays.asList(new String []{\r
"$",\r
"elements.$",\r
- "elements.states.$",\r
+ "elements.annotations",\r
+ "elements.markers",\r
+ "elements.stateData.$",\r
"elements.sources.citation.authorTeam",\r
- "elements.sources.nameUsedInSource.originalNameString",\r
+ "elements.sources.nameUsedInSource",\r
"elements.multilanguageText",\r
"elements.media",\r
+ "elements.kindOfUnit"\r
+ });\r
+\r
+ protected static final List<String> DESCRIPTION_ELEMENT_INIT_STRATEGY = Arrays.asList(new String []{\r
+ "$",\r
+ "annotations",\r
+ "markers",\r
+ "stateData.$",\r
+ "sources.citation.authorTeam",\r
+ "sources.nameUsedInSource",\r
+ "multilanguageText",\r
+ "media",\r
"name.$",\r
"name.rank.representations",\r
"name.status.type.representations",\r
- "sources.$",\r
+ "taxon2.name"\r
});\r
\r
\r
* @return\r
* @throws IOException\r
*/\r
- @RequestMapping(value = "/portal/descriptionElement/find", method = RequestMethod.GET)\r
+ @RequestMapping(value = "//portal/descriptionElement/find", method = RequestMethod.GET) // mapped as absolute path, see CdmAntPathMatcher\r
public Pager<DescriptionElementBase> doFindDescriptionElements(\r
@RequestParam(value = "query", required = true) String queryString,\r
@RequestParam(value = "type", required = false) Class<? extends DescriptionElementBase> type,\r
* @return\r
* @throws IOException\r
*/\r
- @RequestMapping(value = "/portal/descriptionElement/byFeature", method = {RequestMethod.GET, RequestMethod.POST})\r
+ @RequestMapping(value = "//portal/descriptionElement/byFeature", method = {RequestMethod.GET, RequestMethod.POST}) // mapped as absolute path, see CdmAntPathMatcher\r
public Pager<DescriptionElementBase> doPageDescriptionElementsByFeature(\r
@RequestParam(value = "features", required = false) DefinedTermBaseList<Feature> features,\r
@RequestParam(value = "descriptionType", required = true) Class<? extends DescriptionBase> descriptionType,\r
PagerParameters pagerParams = new PagerParameters(pageSize, pageNumber);\r
pagerParams.normalizeAndValidate(response);\r
\r
+ if(features == null){\r
+ features = new DefinedTermBaseList<Feature>();\r
+ }\r
+\r
Pager<DescriptionElementBase> pager = service.pageDescriptionElements(null, descriptionType, features.asSet(),\r
- type, pagerParams.getPageSize(), pagerParams.getPageIndex(), getInitializationStrategy());\r
+ type, pagerParams.getPageSize(), pagerParams.getPageIndex(), DESCRIPTION_ELEMENT_INIT_STRATEGY);\r
\r
return pager;\r
}\r
* @return\r
* @throws IOException\r
*/\r
- @RequestMapping(value = "/portal/descriptionElement/byTaxon", method = {RequestMethod.GET, RequestMethod.POST})\r
+ @RequestMapping(value = "//portal/descriptionElement/byTaxon", method = {RequestMethod.GET, RequestMethod.POST}) // mapped as absolute path, see CdmAntPathMatcher\r
public <T extends DescriptionElementBase> Pager<T> getDescriptionElementsForTaxon(\r
@RequestParam(value = "taxon", required = true) UUID taxon_uuid,\r
@RequestParam(value = "features", required = false) DefinedTermBaseList<Feature> features,\r
}\r
}\r
//TODO it seems as if the InitializationStrategy is not appropriate here !!!\r
- // see #3728 (DescriptionListPortalController.getDescriptionElementsForTaxon() seems to be using inapproptiate init strategy)\r
+ // see #3728 (DescriptionListPortalController.getDescriptionElementsForTaxon() seems to be using in-appropriate init strategy)\r
+ if (logger.isDebugEnabled()){logger.debug("get pager ...");}\r
Pager<T> pager = service.pageDescriptionElementsForTaxon(\r
taxon,\r
(features != null ? features.asSet() : null),\r
type,\r
pagerParams.getPageSize(),\r
pagerParams.getPageIndex(),\r
- getInitializationStrategy()\r
+ DESCRIPTION_ELEMENT_INIT_STRATEGY\r
);\r
-\r
+ if (logger.isDebugEnabled()){logger.debug("get pager - DONE");}\r
return pager;\r
}\r
}
\ No newline at end of file