|
From: <yo...@us...> - 2009-11-19 20:29:43
|
Revision: 289
http://treebase.svn.sourceforge.net/treebase/?rev=289&view=rev
Author: youjun
Date: 2009-11-19 20:29:36 +0000 (Thu, 19 Nov 2009)
Log Message:
-----------
modify the formats of output, add null parameter check
Modified Paths:
--------------
trunk/oai-pmh_data_provider/data_provider_web/src/main/java/org/treebase/oai/web/controller/OAIPMHController.java
trunk/oai-pmh_data_provider/data_provider_web/src/main/java/org/treebase/oai/web/validator/OAIPMHValidator.java
trunk/oai-pmh_data_provider/data_provider_web/src/main/webapp/WEB-INF/vmFiles/head.vm
trunk/oai-pmh_data_provider/data_provider_web/src/main/webapp/WEB-INF/vmFiles/oai_dc_record.vm
trunk/oai-pmh_data_provider/data_provider_web/src/test/java/org/treebase/oai/web/controller/OAIPMHControllerTest.java
Modified: trunk/oai-pmh_data_provider/data_provider_web/src/main/java/org/treebase/oai/web/controller/OAIPMHController.java
===================================================================
--- trunk/oai-pmh_data_provider/data_provider_web/src/main/java/org/treebase/oai/web/controller/OAIPMHController.java 2009-11-19 15:16:50 UTC (rev 288)
+++ trunk/oai-pmh_data_provider/data_provider_web/src/main/java/org/treebase/oai/web/controller/OAIPMHController.java 2009-11-19 20:29:36 UTC (rev 289)
@@ -221,10 +221,12 @@
String publisher=null;
//System.out.println("ctype: "+citation.getCitationType());
+ try{
if(citation.getCitationType().toUpperCase().contains("BOOK"))
- publisher=((BookCitation)citation).getPublisher();
+ publisher=((BookCitation)citation).getPublisher();
else publisher=((ArticleCitation)citation).getJournal();
-
+
+
List<Person> authors=citation.getAuthors();
@@ -242,6 +244,10 @@
map.put("identifier", "treebase.org/study/TB2:s"+study.getId());
map.put("datestamp", study.getReleaseDate());
+ }catch(NullPointerException e){
+ //study 253 citation= null, data should be fixed
+ System.err.println("study "+study.getId()+
+ " citation= "+e.getMessage());}
//map.put("type", "text");
//map.put("language", "en");
Modified: trunk/oai-pmh_data_provider/data_provider_web/src/main/java/org/treebase/oai/web/validator/OAIPMHValidator.java
===================================================================
--- trunk/oai-pmh_data_provider/data_provider_web/src/main/java/org/treebase/oai/web/validator/OAIPMHValidator.java 2009-11-19 15:16:50 UTC (rev 288)
+++ trunk/oai-pmh_data_provider/data_provider_web/src/main/java/org/treebase/oai/web/validator/OAIPMHValidator.java 2009-11-19 20:29:36 UTC (rev 289)
@@ -19,16 +19,22 @@
String fPrefix = command.getMetadataPrefix();
ValidationUtils.rejectIfEmptyOrWhitespace(pError, "verb", "empyt verb");
- if(verb=="GetRecord")
+
+
+ if(verb!=null && verb.equals("GetRecord"))
ValidationUtils.rejectIfEmptyOrWhitespace(pError, "identifier", "empyt id");
// check format prefix
-
- if(verb=="GetRecord"||verb=="ListIdentifiers"||verb=="ListRecords"){
- ValidationUtils.rejectIfEmptyOrWhitespace(pError, "metadataPrefix", "cannotDisseminateFormat");
- if(fPrefix!="oai_dc"&fPrefix!="dryad")
- pError.rejectValue("metadataPrefix","cannotDisseminateFormat");
- }
- }
+ if(verb!=null){
+ if(verb.equals("GetRecord")||verb.equals("ListIdentifiers")||verb.equals("ListRecords")){
+
+ ValidationUtils.rejectIfEmptyOrWhitespace(pError, "metadataPrefix", "cannotDisseminateFormat");
+
+ if(fPrefix!=null)
+ if(!(fPrefix.equals("oai_dc")||fPrefix.equals("dryad")))
+ pError.rejectValue("metadataPrefix","cannotDisseminateFormat");
+ }
+ }
+ }
}
Modified: trunk/oai-pmh_data_provider/data_provider_web/src/main/webapp/WEB-INF/vmFiles/head.vm
===================================================================
--- trunk/oai-pmh_data_provider/data_provider_web/src/main/webapp/WEB-INF/vmFiles/head.vm 2009-11-19 15:16:50 UTC (rev 288)
+++ trunk/oai-pmh_data_provider/data_provider_web/src/main/webapp/WEB-INF/vmFiles/head.vm 2009-11-19 20:29:36 UTC (rev 289)
@@ -11,4 +11,4 @@
#if($!requestParams.until)until="$!requestParams.until" #end
#if($!requestParams.resumptionToken)resumptionToken="$!requestParams.resumptionToken" #end
#if($!requestParams.set)set="$!requestParams.set" #end>
-$!identify.BaseURL</request>
\ No newline at end of file
+$!identify.BaseURL</request>
Modified: trunk/oai-pmh_data_provider/data_provider_web/src/main/webapp/WEB-INF/vmFiles/oai_dc_record.vm
===================================================================
--- trunk/oai-pmh_data_provider/data_provider_web/src/main/webapp/WEB-INF/vmFiles/oai_dc_record.vm 2009-11-19 15:16:50 UTC (rev 288)
+++ trunk/oai-pmh_data_provider/data_provider_web/src/main/webapp/WEB-INF/vmFiles/oai_dc_record.vm 2009-11-19 20:29:36 UTC (rev 289)
@@ -61,4 +61,4 @@
#end
</oai_dc:dc>
</metadata>
-</record>
\ No newline at end of file
+</record>
Modified: trunk/oai-pmh_data_provider/data_provider_web/src/test/java/org/treebase/oai/web/controller/OAIPMHControllerTest.java
===================================================================
--- trunk/oai-pmh_data_provider/data_provider_web/src/test/java/org/treebase/oai/web/controller/OAIPMHControllerTest.java 2009-11-19 15:16:50 UTC (rev 288)
+++ trunk/oai-pmh_data_provider/data_provider_web/src/test/java/org/treebase/oai/web/controller/OAIPMHControllerTest.java 2009-11-19 20:29:36 UTC (rev 289)
@@ -64,7 +64,7 @@
StringWriter writer=null;
Template t=null;
try {
- t = ve.getTemplate("\\"+mav.getViewName());
+ t = ve.getTemplate("\\"+mav.getViewName()+".vm");
VelocityContext context = new VelocityContext();
context.put("model", mav.getModel());
@@ -159,8 +159,8 @@
OAIPMHCommand params=new OAIPMHCommand();
params.setVerb("ListRecords");
- params.setFrom("2005-11-15T06:16:15Z");
- params.setUntil("2006-05-15T06:16:15Z");
+ //params.setFrom("2005-11-15T06:16:15Z");
+ params.setUntil("1996-11-04T06:16:15Z");
params.setMetadataPrefix("oai_dc");
Map model=new HashMap();
model.put("identify",identify );
@@ -199,40 +199,40 @@
System.out.println(mav.getViewName()+" "
+mav.getModel().get("error_code")
+": "+mav.getModel().get("error"));
- this.assertEquals("error.vm", mav.getViewName());
+ this.assertEquals("error", mav.getViewName());
params.setVerb("Identify");
mav=call(params);
- this.assertEquals("Identify.vm", mav.getViewName());
+ this.assertEquals("Identify", mav.getViewName());
params.setVerb("ListSets");
mav=call(params);
System.out.println(mav.getViewName()+" "
+mav.getModel().get("error_code")
+": "+mav.getModel().get("error"));
- this.assertEquals("error.vm", mav.getViewName());
+ this.assertEquals("error", mav.getViewName());
params.setVerb("ListMetadataFormats");
mav=call(params);
- this.assertEquals("ListMetadataFormats.vm", mav.getViewName());
+ this.assertEquals("ListMetadataFormats", mav.getViewName());
params.setVerb("GetRecord");
params.setIdentifier("treebase.org/study/TB2:s1225");
params.setMetadataPrefix("oai_dc");
mav=call(params);
- this.assertEquals("GetRecord.vm", mav.getViewName());
+ this.assertEquals("GetRecord", mav.getViewName());
params.setVerb("ListIdentifiers");
params.setFrom("2005-11-15T06:16:15Z");
params.setUntil("2006-05-15T06:16:15Z");
mav=call(params);
- this.assertEquals("oai_dc_ListIdentifiers.vm", mav.getViewName());
+ this.assertEquals("oai_dc_ListIdentifiers", mav.getViewName());
params.setVerb("ListRecords");
params.setFrom("2005-11-15T06:16:15Z");
params.setUntil("2006-05-15T06:16:15Z");
mav=call(params);
- this.assertEquals("ListRecords.vm", mav.getViewName());
+ this.assertEquals("ListRecords", mav.getViewName());
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|