Searching External Datasources with Z39.50
Make the following changes in OLE to enable searching of external datasources with Z39.50 protocol
Setting up external dependencies for jz3950 library for connecting to Z39.50 datasources.
Get source code from https://jz3950.svn.sourceforge.net/svnroot/jz3950/trunk and build the jar file.
Dependency Resolution
While building if you encounter any dependency resolution issues, it would be most likely due to the fact that Kuali developers have a local maven settings.xml file that forces dependencies to be resolved from our internal Nexus repository. If you have it, uncomment the mirrors/servers section in the settings.xml and then re-run the build. It should get all the necessary plugins and dependent jar files down. Don't forget to un-comment the portions in the settings.xml after a successful build as it will be needed for regular Kuali development.Create maven dependency for the above created jar file using below command;
mvn install:install-file -DgroupId=net.sf.jz3950 -DartifactId=jz3950 -Dversion=1.0-SNAPSHOT -Dfile=<path_to_your_jar_file> -Dpackaging=jar -DgeneratePom=true
You may do these two steps in this way:
svn checkout https://svn.code.sf.net/p/jz3950/code/trunk/ jz3950 cd jz3950/ mvn clean install -DskipTests=true
Changes in ole-docstore-search project
File pom.xml
Uncomment the following lines.
<!-- <dependency> <groupId>net.sf.jz3950</groupId> <artifactId>jz3950</artifactId> <version>1.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.jzkit</groupId> <artifactId>a2j</artifactId> <version>2.0.4</version> </dependency> -->
Class Z3950DataSource
Uncomment the code in this class ( /* code */ ).
Changes in ole project
Class ImportBibController
Uncomment the following code.
/* try { results = externalDataSource.searchForBibs(searchParams, dataSourceConfig); } catch (Exception e){ LOG.error("Error occurred while fetching the records :ImportBibController"+e); GlobalVariables.getMessageMap().putError(KRADConstants.GLOBAL_ERRORS, OLEConstants.DATA_IMPORT_ERROR); } */
File ImportBibSearchPage.xml
Uncomment the commented line in the following snippet.
<!--<ref bean="ExternalSourceSearch-Buttons"/>--> <!--<ref bean="ExternalSourceResults-Section"/>--> <!--<ref bean="externalNext-Button"/>-->
Creating an external data source:
Open OLE home page (http://dev.ole.kuali.org/portal.do or http://tst.ole.kuali.org/portal.do)
Navigate to Admin tab
Click “External Data Source” link in “Global Configuration Settings” section.
Create an external data source. E.g.(
1)
z3950.loc.gov | |
z3950.loc.gov | |
z3950.loc.gov | |
7090 | |
VOYAGER | |
Empty/Empty |
Abertay Dundee University-voyager | |
Abertay Dundee University | |
catalogue.abertay.ac.uk | |
10790 | |
kuali/voyager | |
Note : Domain Name, Port Number ,Database Name are mandatory . Format for Login Id/Database Name is kuali/voyager . If we are not mentioning with '/' it will consider as Database Name .
For more info about external data sources, please refer to http://www.loc.gov/z3950/lcserver.html , http://staff.library.mun.ca/staff/toolbox/z3950hosts.htm
Importing records from external source:
Navigate to Describe tab in OLE home page.
Click “Import Bib” link.
Select tab “Import from External Data Source”.
Select the source which you are created.
Enter the search criteria and click “Search” button.
Operated as a Community Resource by the Open Library Foundation