1 | ABSTRACT: |
---|
2 | --------- |
---|
3 | This package implements the server-side part of the SRU/CQL protocol (SRU/S) |
---|
4 | and conforms to SRU version 1.1 and 1.2. The library will handle most of the |
---|
5 | protocol related tasks for you and you'll only need to implement a few classes |
---|
6 | to connect you search engine. However, the library will not save you from |
---|
7 | doing your SRU/CQL homework (i.e. you'll need to have at least some |
---|
8 | understanding of the protocol and adhere to the protocol semantics). |
---|
9 | Furthermore, you need to have at least some basic understanding of Java web |
---|
10 | application development (Servlets in particular) to use this library. |
---|
11 | |
---|
12 | More Information about SRU/CQL: |
---|
13 | http://www.loc.gov/standards/sru/ |
---|
14 | Forthcoming standardization of SRU/CQL 2.0 (includes description of 1.2) |
---|
15 | http://www.loc.gov/standards/sru/oasis/ |
---|
16 | |
---|
17 | |
---|
18 | HOW TO USE: |
---|
19 | ----------- |
---|
20 | The implementation is designed to make very minimal assumptions about the |
---|
21 | environment it's deployed in. For interfacing with your search engine, you |
---|
22 | need to implement the SRUSearchEngine interface. At minimum, you'll need |
---|
23 | to implement at least the search() method. Please check the Java API |
---|
24 | documentation for further details about this interface. |
---|
25 | The SRUServer implements the SRU protocol an used your supplied search engine |
---|
26 | implementation to talk to your search engine. The SRUServer is configured |
---|
27 | using a SRUServerConfig instance. The SRUServerConfig reads an XML document, |
---|
28 | which contains the (static) server configuration. It must conform to the |
---|
29 | "sru-server-config.xsd" schema in the "src/main/resources/META-INF" directory. |
---|
30 | You can either write your own Servlet implementation to drive the SRUServer or |
---|
31 | can use supplied SRUServerServlet from the "de.clarin.sru.server.utils" |
---|
32 | package. If you do so, your search engine needs to inherit from the abstract |
---|
33 | class SRUSearchEngineBase. Check the Java API documentation (and the code) of |
---|
34 | these classes for more information. |
---|
35 | Of course, you can use frameworks like Spring or similar to assemble your |
---|
36 | web application. |
---|
37 | An usage example for this library is available from: |
---|
38 | http://clarin.ids-mannheim.de/downloads/clarin/ |
---|
39 | NB: you cannot deploy and use it, because it uses internal IDS services, but |
---|
40 | it should give you a basic idea how to use the library. |
---|
41 | |
---|
42 | |
---|
43 | HOW TO BUILD: |
---|
44 | ------------- |
---|
45 | 1. Build the library with the following command: |
---|
46 | $ mvn package |
---|
47 | |
---|
48 | 2a. Either install the artifact in your own repository with the following |
---|
49 | command, if you use Maven for you project: |
---|
50 | $ mvn install |
---|
51 | |
---|
52 | 2b. Or use the "sru-server-$VERSION.jar" file created within the |
---|
53 | "target/" directory, if you do not use Maven for your project. |
---|
54 | |
---|
55 | The Java API documentation is created within the "target/apidocs" directory |
---|
56 | and is also zipped up into the "sru-server-$VERSION-javadoc.jar" archive. |
---|