# HG changeset patch # User dwinter # Date 1343212585 -7200 # Node ID 938e45fabd7cb9c0de1081dfe09cc1c8417612da # Parent 498b68667ff31b9c87af437ec913c8511754431a version f?r escidoc produktionsversion diff -r 498b68667ff3 -r 938e45fabd7c src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/RestServer.java --- a/src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/RestServer.java Fri Apr 20 15:55:51 2012 +0200 +++ b/src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/RestServer.java Wed Jul 25 12:36:25 2012 +0200 @@ -41,13 +41,13 @@ router.attach("/container/{escidocId}",DisplayContainer.class); router.attach("/resultOverview.css",ResultOverviewCSS.class); router.attach("/docuview/{flavour}/{escidocId}",DocuviewerRedirector.class); // redirected zur ECHO Seite, diese redirected eventuell, direct wieder - router.attach("/echo/{escidocId}",ECHORedirector.class); // redirected zur ECHO Seite, diese redirected eventuell, direct wieder + router.attach("/echo/{escidocId}",ECHORedirector.class); // redirected zur ECHO Seite, diese redirected eventuell, direct wieder, deprecated should use DocuviewerRedirector router.attach("/display/{escidocId}",DisplayRedirector.class); // redirected zur display_url die in ECHO angegeben ist, wenn dort keine steht dann wird der image ordner im generischen viewer angezeigt router.attach("/metadata/{escidocId}",IndexMetaRedirector.class); // zeigt die in ESCIDOC abegespeicherten index_meta an router.attach("/metadata/{escidocId}/origRef",OrigRefRedirector.class); // zeigt die original Quelle der Metadaten an, in der Regel das IndexMeta file auf der Foxridge //router.attach("/{escidocId}",ECHORedirector.class); // redirected zur webseite die in echo angebeben ist router.attach("/{escidocId}",EScidocRedirector.class); // redirected zur webseite die in echo angebeben ist - router.attach("/{escidocId}/images",DigilibRedirector.class); // zeigt den image ordner im digilib standard display an + //router.attach("/{escidocId}/images",DigilibRedirector.class); // zeigt den image ordner im digilib standard display an return router; } } diff -r 498b68667ff3 -r 938e45fabd7c src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/services/redirect/DisplayRedirector.java --- a/src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/services/redirect/DisplayRedirector.java Fri Apr 20 15:55:51 2012 +0200 +++ b/src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/services/redirect/DisplayRedirector.java Wed Jul 25 12:36:25 2012 +0200 @@ -2,7 +2,10 @@ import java.io.IOException; - +@Deprecated +/* + * Should used DocuviewerRedirector + */ public class DisplayRedirector extends ComponentURLRedirector { public DisplayRedirector() throws IOException { diff -r 498b68667ff3 -r 938e45fabd7c src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/services/redirect/DocuviewerRedirector.java --- a/src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/services/redirect/DocuviewerRedirector.java Fri Apr 20 15:55:51 2012 +0200 +++ b/src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/services/redirect/DocuviewerRedirector.java Wed Jul 25 12:36:25 2012 +0200 @@ -162,6 +162,13 @@ Element item = (Element)xp.selectSingleNode(doc); String path = item.getTextTrim(); path= ECHORessource.correct(path); // nur pfad nach online + if (path.equals("")){ + xp= EScidocTools.getESciDocXpath("//metadataRecords:md-record[@xlink:title='mpiwg-admin']/mpiwg:admin/mpiwg:archivePath"); + item = (Element)xp.selectSingleNode(doc); + path = item.getTextTrim(); + path= ECHORessource.correct(path); // nur pfad nach online + path=path+"/pageimg"; + } viewerUrl=String.format(viewerWithImagePathFormatString, path); } catch (Exception e) { setStatus(Status.SERVER_ERROR_INTERNAL); diff -r 498b68667ff3 -r 938e45fabd7c src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/services/redirect/ECHORedirector.java --- a/src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/services/redirect/ECHORedirector.java Fri Apr 20 15:55:51 2012 +0200 +++ b/src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/services/redirect/ECHORedirector.java Wed Jul 25 12:36:25 2012 +0200 @@ -3,7 +3,10 @@ import java.io.IOException; - +@Deprecated +/* + * Should used DocuviewerRedirector + */ public class ECHORedirector extends ComponentURLRedirector{ public ECHORedirector() throws IOException { diff -r 498b68667ff3 -r 938e45fabd7c src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/services/search/SimpleSearch.java --- a/src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/services/search/SimpleSearch.java Fri Apr 20 15:55:51 2012 +0200 +++ b/src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/services/search/SimpleSearch.java Wed Jul 25 12:36:25 2012 +0200 @@ -43,11 +43,14 @@ public class SimpleSearch extends ServerResource{ + private String eScidocServer; private String eScidocPort; private Logger logger= Logger.getRootLogger(); private String eScidocUser; private String eScidocUserPW; + + private String SEARCH_CMM="escidoc:131281"; //TODO: make this configurable, also a list of CMM should be possible public SimpleSearch() throws IOException{ InputStream is = getClass().getResourceAsStream("/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/config/eScidocServer.config"); @@ -113,20 +116,24 @@ String queryString =""; Boolean isSearch=false; if (searchAll!=null && !searchAll.equals("")){ - queryString="escidoc.metadata="+searchAll; + queryString="metadata="+searchAll; isSearch=true; } else if (searchTitle!=null && !searchTitle.equals("")){ - queryString="escidoc.any-title="+searchTitle; + queryString="any-title="+searchTitle; + queryString+=" or meta.archimedes.title="+searchTitle; + queryString+=" or meta.bib.title="+searchTitle; isSearch=true; } else if (searchAuthor!=null && !searchAuthor.equals("")){ - queryString="escidoc.creator="+searchAuthor; + queryString="dc-md.creator="+searchAuthor; + queryString+=" or meta.archimedes.author="+searchAuthor; + queryString+=" or meta.bib.author="+searchAuthor; isSearch=true; } if (!isSearch) return null; String query; try { - query = "/srw/search/escidoc_all?maximumRecords=1000&query="+URLEncoder.encode(queryString,"utf-8"); + query = "/srw/search/escidoc_all?maximumRecords=1000&query="+URLEncoder.encode("content-model.objid="+SEARCH_CMM+" and "+ queryString,"utf-8"); } catch (UnsupportedEncodingException e) { logger.error("do Search, cannot encode:"+queryString); setStatus(Status.SERVER_ERROR_INTERNAL); @@ -179,8 +186,14 @@ //logger.debug(printXML(doc)); Document docresult = out.getDocument(); + + + return new StringRepresentation(printXML(docresult),MediaType.TEXT_HTML); + + + } catch (Exception e) { logger.trace(e); return new StringRepresentation("error"); diff -r 498b68667ff3 -r 938e45fabd7c src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/staticPages/searchResult.xsl --- a/src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/staticPages/searchResult.xsl Fri Apr 20 15:55:51 2012 +0200 +++ b/src/de/mpiwg/itgroup/escidoc/MPIWGServices/Restlet/staticPages/searchResult.xsl Wed Jul 25 12:36:25 2012 +0200 @@ -27,35 +27,51 @@
- + +
Item
+ + +
- .//indexMeta - metaData
+ ./metadata/ + metaData +
+ - + +
@@ -74,7 +90,7 @@ - + @@ -87,6 +103,26 @@ + + +
 
+
 
+ +
 
+ +
+ + + +
 
+
 
+ +
 
+ +
+