Search DrupalHybrid.com

ISLANDORA installation


ISLANDORA Installation GUIDE 






1. Step by Step installation Guide RUNNING DRUPAL WITH WAMP

Once you have Drupal installed and properly configured with:
  • Clean URLs enabled
  • The Drupal file system set to public (Administer > Site configuration > File system)
2.  Step by Step Guide: Installing Fedora Commons Repository

3.  Step by Step installation Guide: FedoraGSearch (with ant)  

4.    Install the DrupalFilter servlet filter
        Installation Steps
  1.  Download the latest version of the Drupal Servlet Filter from the Islandora 
       github distribution site (https://github.com/Islandora/Islandora-dist/)
       ( I am using fedora 3.4.1 copied drupalFilter3.4)
        and placed it in $FEDORA_HOME/tomcat/webapps/fedora/WEB-INF/lib

 

       Ensure you choose the correct jar file for    a) your version of Fedora and                 b) your authentication type (FeSL or legacy).
  2.   Make the Fedora Repository aware of the new filter for either a) Legacy  
        Authentication, or b) FeSL Authentication: Mine is Legacy Authentication

   a )   New XML elements must be added in order to configure Fedora's 
           servlet filtering.
          Edit the web.xml file located in $FEDORA_HOME/tomcat/webapps
          /fedora/WEB-INF/ to include a reference to the Drupal Servlet Filter.
  • A  <filter> element immediately after the XmlUserfileFilter filter element and
  • A  <filter-mapping> element  after the XmlUserfileFilter filter-mapping element.
<filter>
     <filter-name>XmlUserfileFilter</filter-name>
     <filter-class>fedora.server.security.servletfilters.xmluserfile.FilterXmlUserfile</filter-class>
</filter>
<filter>
     <filter-name>DrupalFilter</filter-name>
     <filter-class>ca.upei.roblib.fedora.servletfilter.FilterDrupal</filter-class>
</filter>
<filter>
      <filter-name>RestApiAuthnFilter</filter-name>
      <filter-class>org.fcrepo.server.security.servletfilters.FilterRestApiAuthn</filter-class>
</filter>
<filter>
      <filter-name>RestApiFlashFilter</filter-name>
      <filter-class>org.fcrepo.server.security.servletfilters.FilterRestApiFlash</filter-class>
</filter>
<filter>
      <filter-name>EnforceAuthnFilter</filter-name>
      <filter-class>fedora.server.security.servletfilters.FilterEnforceAuthn</filter-class>
</filter>
 ================ And here  =====================

<filter-mapping>
     <filter-name>XmlUserfileFilter</filter-name>
     <url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
      <filter-name>DrupalFilter</filter-name>
      <url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
      <filter-name>EnforceAuthnFilter</filter-name>
      <servlet-name>AxisServlet</servlet-name>
</filter-mapping>


b)   Enable the Drupal Servlet Filter by creating the file filter-drupal.xml 
       in $FEDORA_HOME/server/config.

 BE CAREFUL in some documentations it is filter_dupal.xml or filter-dupal.xml

      Modify the attributes of the <connection>  tag to match the server, port, database name, username and password of your site's Drupal database. (copy and paste if getting wrong user or pass error, red text is my working filter-dupal.xml file )

<?xml version="1.0" encoding="UTF-8"?>
<!--Place this file in $FEDORA_HOME/server/config

Drupal connection info for the FilterDrupal servlet filter.
For multisite drupal installs you can include multiple connection elements.
We will query all the databases and assume any user in any drupal db with
the same username and password are the same user.

We will gather all roles for that user from all databases. This is a
potential security risk if a user in one drupal database has the same
username and password as another user in a seperate drupal database.
We are also assuming all drupal dbs to be mysql. -->
<FilterDrupal_Connection>
    <!-- The values to be inserted below can be found in your drupal site's
settings.php file at the line:

$db_url = 'mysqli://root:root@localhost/fedora3';

Note that 3306 is the default mysql port.
-->
    <connection server="localhost" port="3306" dbname="drupal" user="root" password="mypass">
    <sql>
        <!--Different sql statement for each connection. This is for drupal
multisites that are setup using one database with table prefixes.
We don't do this but some people might.-->
       SELECT DISTINCT u.uid AS userid, u.name AS Name, u.pass AS Pass,r.name AS Role FROM (users u LEFT JOIN users_roles ON u.uid=users_roles.uid) LEFT JOIN role r ON r.rid=users_roles.rid WHERE u.name=? AND u.pass=?;
    </sql>
    </connection>
  
</FilterDrupal_Connection>

5.   Stop and restart Fedora to enable the Drupal Servlet Filter.

6.   Test the Drupal Servlet Filter by accessing your Fedora Admin client 
      using your Drupal login credentials.
       (mine says user name admin 
                               pass  5dd131f053a41ea53b8c4553089d83f1 
        use this to access fedora )

7.   Edit the fedora-users.xml file.  Optional but recommended, if you want to
      allow anonymous access to  Fedora through Islandora this will have to be 
      done. 

8.   Install or configure php. From wamp server Wamp>PHP>php extensions>                        select   PHP5-curl,
PHP5-soap,
PHP5-xsl 

Run Tomcat to make sure that extensions work 

9.   Install the Drupal Imageapi module.  
      This module is used by some Islandora content models. LINK
     
10.   Download and install the fedora_repository module. 
        The module enables viewing and management of Fedora objects.
        Download the latest version of the module from 
        http://www.github.com/islandora  
        rename it to fedora_repository and place the uncompressed contents of 
        the module in your sites/all/modules or the sites/default/modules
        directory.

11.   Enable the fedora repository module.  Optionally enable the 
         fedora_imageapi module. 
Drupal > Administer > Modules

Note: If there are missing dependent Drupal modules (Tabs, ImageAPI, and CCK), ensure you have installed and enabled these to properly utilize Islandora.

First, enable Depends on : modules first save it, other modules  work when all its required modules were enabled.
Now, enable all Fedora Repository modules and save configuration

12.   Create Drupal roles to assign to users.  One role you should create for 
        sure is administrator.  This role has special rights in Fedora so don't 
        assign this to anyone but an actual administrator. For users to
        authenticate to Fedora they must have a role. The default roles are not 
        enough. You must assign a  role that has been created. 

For Permissions GO TO -> User management -> Roles -> 
                ->  Enter Role name (any name) -> ADD ROLE ->
                ->  Edit Permissions -> mark everything           (including fedora repository ) .

                 NOW after setting role  GO TO->
                 User management ->
                 Users -> (go to operations of user you want to give those roles you have just set) 
                 EDIT ->
                 Roles (add role name to the list)

    Now when you make any user you can give these set of roles to that user


(Tomcat must be running)

13.  You have now enabled the Islandora module. Navigate to your newly 
       created Digital Repository menu item to view the objects from your 
       Fedora repository through your web site. no objects are found in your 
       Digital Repository, you can quickly populate Fedora with some demo
       objects. To do this, go to 
       Administer > Site Configuration > Fedora Collection List. Check 
       the default information that populates the collection list form fields 
       and your connection to the Fedora database. Then, select the Solution
       Packs tabs at the top of your page AND install objects

        (Firefox works pretty well with Islandora)

14.   Ingest object from drupal > Home > Digital repository > Islandora demo 
        collection > Islandora Demo pdf collection> add> …… Ingest   
        (only for pdf stuff) 
        drupal > Home > Digital repository > Islandora demo collection >   
        Demo image collection>  add> …… Ingest  (only for JPEG)


for Metadata > Home > Digital repository > Islandora demo collection 
                     > Demo Image Collection > (ingested demo name)
 (for second time it didn't work I didn't get Content model available by Add button, so when I tried to purge this object and on purge window clicked on Add button I got “Content model available” to Ingest objects)


And Now, The Fun Really Begins…



Add Collection View,  Collection Policies blah blah datastream files to Object Details 
            -->  Detailed list of contents
            --> Add Datastream 
            --> Collection_Policy
                  (to test download files from other collections :-)
(Tomcat must start correctly otherwise you may get an error in your Digital Repository)

Well SEE YA LATER! ...
                                            WORKING WITH  ISLANDORA CONTINUE..  HERE! 
           http://computersciencetechie.blogspot.com/2012/02/integration-of-web-features-with_20.html

1 comment:

Cliff Whitworth said...

Thanks for sharing this! Look forward to trying this out and comparing notes. ;)

best regards,