Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Wiki Markup
h2. Address Prerequisites

...


# mvn repository: settings.xml

...


# Oracle JDBC Driver

...


{code

...

}
mvn install:install-file -DgroupId=com.oracle -DartifactId=ojdbc14 -Dversion=10.1.0.2.0 -Dpackaging=jar -Dfile=C:/JavaLib/Oracle10.2.0.4JDBC/ojdbc14.jar

...

{code}
# Configure Plugin Directory in *rice-config.xml

...

*
{code

...

:title

...

=/usr/local/rice/rice-config.xml

...

}
<param name="plugin.dir">/usr/local/rice/plugins</param>

...

Build Project

  1. File -> New -> Project -> Maven Project
  2. Create simple project (skip archetype selection)
    Image Removed
  3. Configure Project
    Image Removed
  4. Click Finish
  5. Resulting Project Structure:
    Image Removed

Configure Plugin

...

titlepom.xml

{code}

h2. Build Project
# File -> New -> Project -> Maven Project
# Create simple project (skip archetype selection)
!CreateSimpleProject.jpg|thumbnail!
# Configure Project
!ConfigureProject.jpg|thumbnail!
# Click *Finish*
# Resulting Project Structure:
!ResultingProjectStructure.jpg|thumbnail!

h2. Configure Plugin
# Configure Maven Plugins, Repositories and Dependencies
{code:title=pom.xml}
<project xmlns="http://maven.apache.org/POM/4.0.0" 
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>edu.ucdavis.iet.mw.kuali.rice</groupId>
  <artifactId>KIM-LDAP-institutional-plugin</artifactId>
  <name>KIM-LDAP-institutional-plugin</name>
  <version>0.1</version>
  <description>A Rice plugin that integrates KIM with LDAP</description>
  <build>
  	<plugins>
  		<plugin>
  			<artifactId>maven-compiler-plugin</artifactId>
  			<configuration>
				<source>1.5</source>
				<target>1.5</target>
			</configuration>
  		</plugin>
  		<plugin>
  			<artifactId>maven-assembly-plugin</artifactId>
  			<version>2.1</version>
  			<configuration>
				<descriptors>
					<descriptor>src/main/assembly/plugin.xml</descriptor>
				</descriptors>
			</configuration>
  		</plugin>
  	</plugins>
  </build>
  <repositories>
  	<repository>
  		<id>connector</id>
  		<name>Connector</name>
  		<url>http://julien.dubois.free.fr/maven2/</url>
  	</repository>
  	<repository>
  		<id>kuali</id>
  		<name>Kuali Repository</name>
  		<url>https://test.kuali.org/maven</url>
  	</repository>
  </repositories>
  <dependencies>
  	<dependency>
  		<groupId>org.kuali.rice</groupId>
  		<artifactId>rice-kew</artifactId>
  		<version>0.9.2</version>
  	</dependency>
  </dependencies>
</project>

...


{code}
\\
# Configure Assembly
#* Under /src/main, create a folder named

...

 *assembly*
#* In */assembly*, create a file named *plugin.xml

...

*
#* Edit *plugin.xml*:

...


{code

...

}
<assembly>
  <id>plugin</id>
  <formats>
    <format>zip</format>
  </formats>
  <includeBaseDirectory>false</includeBaseDirectory>
  <fileSets>
    <fileSet>
      <directory>conf/plugin/META-INF</directory>
      <outputDirectory>META-INF</outputDirectory>
    </fileSet>
    <fileSet>
    	<directory>target/classes</directory>
    	<outputDirectory>classes</outputDirectory>
    </fileSet>
    <fileSet>
    	<directory>conf/plugin/lib</directory>
    	<outputDirectory>lib</outputDirectory>
    </fileSet>
  </fileSets>
</assembly>

...


{code}
\\
# Configure Override Resource Loader
#* Under the project root, create a directory named *conf*
#* Under */conf*, create a directory named *plugin*
#* Under */conf/plugin*, create a directory named *META-INF*
#* In */conf/plugin/META-INF*, create a file named *workflow.xml

...

*
#* Edit *workflow.xml*:

...


{code

...

}
<plugin>
  <resourceLoader class="edu.ucdavis.iet.mw.kuali.rice.IdentityManagementOverrideResourceLoader"/>
</plugin>

...

{code}
{info}
This coincides with *<directory>conf/plugin/META-INF</directory>* in *plugin.xml

...

Override Identity Management Resource

  1. Create IdentityManagementOverrideResourceLoader Class
    Image Removed

Reference

*
{info}

h2. Override Identity Management Resource
# Create IdentityManagementOverrideResourceLoader Class
!CreateResourceLoaderClass.jpg|thumbnail!
# Resulting Skeleton Code
{codetitle=IdentityManagementOverrideResourceLoader.java}
package edu.ucdavis.iet.mw.kuali.rice;

import org.kuali.rice.resourceloader.BaseResourceLoader;

public class IdentityManagementOverrideResourceLoader extends BaseResourceLoader {

}
{code}
# Add Constructor and Attributes
{code:title=IdentityManagementOverrideResourceLoader.java}
package edu.ucdavis.iet.mw.kuali.rice;

import javax.xml.namespace.QName;
import org.apache.xbean.spring.context.ClassPathXmlApplicationContext;
import org.kuali.rice.resourceloader.BaseResourceLoader;

public class IdentityManagementOverrideResourceLoader extends BaseResourceLoader {

	public IdentityManagementOverrideResourceLoader(){
		super(new QName("IdentityManagementOverrideResourceLoader"));
	}
	
	private static final String SPRING_FILE = "classpath:SpringBeans.xml";
	
	private ClassPathXmlApplicationContext context;
	
}
{code}

h2. Reference
[https://test.kuali.org/confluence/display/KULRICE/Workflow+Plugin+Guide

...

]
[https://test.kuali.org/confluence/display/KULRICE/JA-SIG+Spring+2008+-+Building+the+Plug-in]