Child pages
  • v1.4 Release Notes
Skip to end of metadata
Go to start of metadata
Unable to render {include} The included page could not be found.

Release Notes for Grouper v1.4.2

Grouper v1.4.2 includes 38 fixes and improvements.  See the full list here.

   Release

Description of Feature Adds, Improvements, Changes, Revisions, & Fixes

     Date

Grouper v1.4.2

Release v1.4.2 includes the following fixes and improvements:

5-June-2009

To upgrade from v1.4.1 grouper to v1.4.2, follow these instructions: (note the change log)

Generally all you need to upgrade from 1.4.1 to 1.4.2 is the new grouper jars: grouper.jar, grouper-ws.jar, etc.  You will need to build the UI.  There are some config file changes that you should merge so you have up to date documentation in the config files, though all new config file changes should be optional.  You can enable caching in the API for improved performance.

Grouper
  • 2009/6/4: v1.4.2 GROUPER_1_4_BRANCH:
    • compare sources.xml with sources.example.xml.  Get new section on improved jdbc source.  If you are interested in improving the free-form subject search (e.g. from UI), switch to new subject adapter based on example: GrouperJdbcSourceAdapter2
    • compare grouper.properties with grouper.example.properties: get new loader hook and org management section (can be commented out).
    • compare ldappc.xml with ldappc.example.xml, get list-empty-value documentation
  • 2009/4/25: v1.4.2 GROUPER_1_4_BRANCH:set this to true in grouper.hibernate.properties:
    hibernate.cache.use_query_cache       = true
    Compare and merge the new ehcache.example.xml with ehcache.xml.  There are stem/group/member caches defined
Grouper-ui
  • 2009/6/4: v1.4.2 GROUPER_1_4_BRANCH: compare your media.properties with the new media.properties, get new settings
  • 2009/04/11: v1.4.2 (GROUPER_UI_V1_4_BRANCH): there is now a grouper-ui.jar, so do a clean build (or delete the deployed WEB-INF/classes/edu dir), and use the new grouper-ui.jar, and the new struts.jar)
Grouper client
  • 2009/6/4: v1.4.2 GROUPER_1_4_BRANCH: compare grouper.client.usage.txt with grouper.client.usage.example.txt, fix typos

Release Notes for Grouper v1.4.1

Grouper v1.4.1 now includes Ldappc, and also has some minor fixes and improvements.  See the full list here.

   Release

Description of Feature Adds, Improvements, Changes, Revisions, & Fixes

     Date

Grouper v1.4.1

Release v1.4.1 includes the following fixes and improvements:

2-February-2009

Release Notes for Grouper v1.4.0

Grouper v1.4.0 has substantial new integration, automation, and diagnostic capabilities, enabling deployers to meet more requirements with less implementation effort. This page highlights some of the new features and fixes. Download Grouper v1.4.0 on the main Download page. Further below are instructions for upgrading from version 1.3.X and the log of changes from v1.3.1 to v1.4.0.

Details on the improvements and outstanding issues for this version can be found in the Internet2 Jira issue tracker for the API, the UI, and the WS.

Note: With release v1.4.0, building Grouper from source requires the ant compiler v1.7.0 or later.

   Release

Description of Feature Adds, Improvements, Changes, Revisions, & Fixes

     Date

Grouper v1.4.0

Release v1.4.0 includes the following fixes and improvements:

  • New: Programmatic hooks for local extensions to Grouper.
  • New: Automatically maintain groups and memberships from external sources with Grouper Loader.
  • Added: A binary form of the Grouper Toolkit.
  • Improved: Grouper Shell, a comprehensive command line interface to Grouper and its allied utilities, is now a core part of the Grouper distribution. And there are correspondingly fewer ant targets in the source distribution.
  • Improved: Transaction support to ensure relational consistency of logical group operations.
  • Improved: XML import and export capabilities are incorporated into Grouper Shell.
  • New: Group type to automatically create include & exclude groups.
  • New: Configuration directives that provide more granular system administration and security.
  • New: Ability to merge two Members formerly thought to be distinct.
  • New: Regex-style validation of group attributes.
  • Improved: Faster, more efficient Grouper relational database schema.
  • New: Configuration checking, daily health report, views, and other diagnostic aids.
  • Fixed: Circumstances in which composites and circular membership loops could produce incorrect membership information.
  • Improved: API internal design and packaging of classes.
  • Improved: UI tooltips for group types and custom attributes.
  • Improved: Support for group details and privileges via Grouper Web Services.

4-January-2009

Upgrading from v1.3.X

To upgrade from v1.4.0 grouper to v1.4.1, follow these instructions: (note the changelog)

 API / Web Service / User Interface / Extensions

  • Ldappc is now included with grouper, if you are going to use ldappc then get the latest binary or source release of grouper, setup the config files similar to how you did for 1.3.*, and kickoff ldappc with gsh -ldappc
  • If you are upgrading from 1.3.* to 1.4.1, and you have already compared the grouper.properties file with grouper.example.properties, and run the ddl command, then you are done.
  • If you upgraded to 1.4.0, and now you are upgrading to 1.4.1, continue:
  • Get the latest grouper.jar, e.g. from the binary release
  • Merge grouper.properties with grouper.example.properties, adding properties: junit.test.loader, junit.test.ldappc, junit.test.ddl
  • Database conversion.  The only change is the index on the name column of grouper_stems is now unique.  Here are 3 options for upgrade, pick one
    • Run: grouper_home/bin/gsh -registry -check
      • Then look at the result script, and execute that script, perhaps with:
        grouper_home/bin/gsh -registry -runsqlfile C:/mchyzer/isc/dev/grouper_v1_4/grouper/ddlScripts/grouperDdl_20090125_08_39_44_148.sql
    • -or- you can do this manually, change the stem name index to unique, and update grouper_ddl table Grouper entry DB_VERSION to 13:
      update grouper_ddl set db_version = 13 where object_name = 'Grouper'
    • -or- (not recommended) you could export the registry to backup, rebuild the registry with:
      • gsh -xmlexport GrouperSystem /whatever/20090125_1_4.xml
      • grouper_home/bin/gsh -registry -drop -runscript 
      • gsh -xmlimport GrouperSystem /whatever/20090125_1_4.xml

Web Services

  • Get the latest grouper-ws.jar file

Grouper Client

  •  Merge the grouper.client.properties with grouper.example.properties.  Note new entries for SSL, custom operations, and the new client version

To upgrade from v1.3.* grouper to v1.4, follow these instructions: (note the changelog)

 API / Web Service / User Interface / Extensions

  • Turn off access to your registry
  • Backup your database and export your registry to XML as a backup: (e.g. ant xml-export -Dcmd="GrouperSystem export.xml")
  • The libraries (jar file) have largely been renamed and upgraded.  Delete all jars specific to grouper, and replace with the new list.  You can get the latest jars from the lib subdirs of the binary release
  • Merge all of your config files with the new example config files (you can obtain these from the conf directory of the binary release).  While merging, read about the new settings, and pick your values.
    • Use a tool such as WinMerge (freeware), or Eclipse to make the task easy.  Or, use the new example files, rename, and put your customizations in them
    • Merge grouper.properties with grouper.example.properties
      • Note that grouper.properties was re-organized, so the order of the settings has changed
    • Merge grouper.hibernate.properties with grouper.hibernate.example.properties
    • Merge log4j.properties with log4j.example.properties
    • Merge sources.xml with sources.example.xml
    • Note you dont have to have JDBC credentials in this file if they are the same as grouper.hibernate.properties
    • Merge ehcache.xml with ehcache.example.xml
    • Merge grouper.ehcache.properties with grouper.ehcache.example.properties
    • Add grouper-loader.properties
    • Add morphString.properties
  • If you have a custom subject source, recompile it, there are new methods to implement
  • In general recompile any code you have that uses Grouper/Subject references: e.g. package structure has changed, and MemberFinder no longer throws MemberNotFound exception...
  • You should probably update your database driver jar... there are examples of recent ones in lib/jdbcSamples... e.g. the error "composite_composite_idx in table grouper_composites references the undefined column "owner"" is fixed by updating the postgres driver

Database conversion (try in test env first) TRACK 1 (do this or track 2)

  • This is probably the easier way to go, though possibly more time consuming for large registries.  Also, you can try track 2, and if it isnt working for you, then switch to track 1.
    • Note, if you are using HSQL, you should get the newest driver available (e.g. from GROUPER_HOME/lib/jdbcSamples).  Upgrade your hsql probably.  And do track 1 and not track 2.
  • After exporting your data to xml (mentioned above), drop all the objects in your schema.  Note, all your UUID's will change
  • Run: gsh -registry -runscript
  • This will create all the tables
  • Then import your XML (e.g.):
gsh -xmlimport GrouperSystem /opt/grouper/1.3.1rc1/grouper/20081117-1.3.1.xml

Database conversion (try in test env first) TRACK 2 (do this or track 1)

Note, if you are using HSQL, you should get the newest driver available (e.g. from GROUPER_HOME/lib/jdbcSamples).  Upgrade your hsql probably.  And do track 1 and not track 2.

    • This track will convert your data and structures to the new format
    • Look in your database (oracle or postgres only, not necessary for mysql) for unique constraints (not unique indices) on grouper tables (not necessary if Oracle).  If any exist, remove them
      • For oracle, execute the script generated by this query:
select 'alter table ' || table_name || ' drop constraint ' || constraint_name || ';' as the_command from user_constraints
where constraint_type in ('R', 'U')
and (table_name like 'GROUPER_%' or table_name like 'SUBJECT%')
 order by constraint_type, table_name;
      • For postgres, execute the script generated by this query (note, substitute in your schema (public in case below), and catalog (grouper in the case below)
        SELECT 'alter table ' || table_name || ' drop constraint ' || constraint_name || ';' as the_command
           FROM information_schema.table_constraints where constraint_type in ('FOREIGN KEY', 'UNIQUE')
          and lower(table_name) like 'grouper%' and lower(table_schema) = 'public' and lower(table_catalog) = 'grouper'
          order by constraint_type, table_name;
        
      • For mysql, it shouldnt be necessary, but here is the script to generate the drop script (change table_schema to match your schema, currently it is grouper):
SELECT concat(concat(concat(concat('alter table ', table_name), ' drop foreign key '), constraint_name), ';') as the_command
   FROM information_schema.table_constraints where constraint_type in ('FOREIGN KEY')
  and lower(table_name) like 'grouper%' and lower(table_schema) = 'grouper'
  order by constraint_type, table_name;

    • Run: gsh -registry -check (this command is in the bin dir of the binary release... make sure all your config files are configured)
      • Note: Seeing some errors here about tables missing, columns missing, ddl version mismatch is expected. 
    • It will give output like this:
C:\dev_inst\eclipse\workspace_v33\grouper\bin>gsh -registry -check
Using GROUPER_HOME:  C:\dev_inst\eclipse\workspace_v33\grouper\bin\..
Using GROUPER_CONF:  C:\dev_inst\eclipse\workspace_v33\grouper\bin\../conf
Using JAVA:          "c:\dev_inst\java/bin/java"
using MEMORY:        64m-512m
Grouper starting up: version: 1.4.0 build date: 2008/11/13 14:42:25
grouper.properties read from: C:\dev_inst\eclipse\workspace_v33\grouper\conf\grouper.properties
Grouper current directory is: C:\dev_inst\eclipse\workspace_v33\grouper\bin
log4j.properties read from:   C:\dev_inst\eclipse\workspace_v33\grouper\conf\log4j.properties
Grouper is logging to file:   C:\dev_inst\eclipse\workspace_v33\grouper\bin\..\logs\grouper_error.log, at min level WARN
 for package: edu.internet2.middleware.grouper, based on log4j.properties
grouper.hibernate.properties: C:\dev_inst\eclipse\workspace_v33\grouper\conf\grouper.hibernate.properties
grouper.hibernate.properties: grouper@jdbc:mysql://localhost:3306/grouper
sources.xml read from:        C:\dev_inst\eclipse\workspace_v33\grouper\conf\sources.xml
sources.xml groupersource id: g:gsa
sources.xml jdbc source id:   jdbc: GrouperJdbcConnectionProvider

Based on grouper.properties: ddlutils.schemaexport.installGrouperData=true
(note, might need to type in your response multiple times (Java stdin is flaky))
(note, you can whitelist or blacklist db urls and users in the grouper.properties)
Are you sure you want to schemaexport all tables (dropThenCreate=F,writeAndRunScript=F) in db user 'grouper', db url 'jd
bc:mysql://localhost:3306/grouper'? (y|n):
y
Continuing...
Grouper ddl object type 'Grouper' has dbVersion: 0 and java version: 12
Grouper ddl object type 'Subject' has dbVersion: 0 and java version: 1
Grouper database schema DDL requires updates
(should run script manually and carefully, in sections, verify data before drop statements, backup/export important data
 before starting, follow change log on confluence, dont run exact same script in multiple envs - generate a new one for
each env),
script file is:
C:\dev_inst\eclipse\workspace_v33\grouper\bin\..\ddlScripts\grouperDdl_20081114_01_11_45_007.sql
Note: this script was not executed per the grouper.properties: ddlutils.schemaexport.writeAndRunScript
To run script via gsh, carefully review it, then run this:
gsh -registry -runsqlfile C:\\dev_inst\\eclipse\\workspace_v33\\grouper\\ddlScripts\\grouperDdl_20081114_01_11_45_007.sql

C:\dev_inst\eclipse\workspace_v33\grouper\bin>
  • Database conversion (continued)
    • Carefully examine the script (or have a SQL expert do this if you are not one) in that file (in this case: grouperDdl_20081114_01_11_45_007.sql
    • Make sure all operations are ok.  e.g. it should not drop any tables, or truncate tables, or anything else that looks bad.
    • Run this script in your DB IDE or grouper can do it with: gsh -registry -runsqlfile /wherever/filename.sql
    • Note: If it has trouble dropping constraints or indexes, you can manually remove those. All the proper indexes (unless you had custom ones) will be recreated. Then continue the script where it left off. 
  • Turn on grouper, it should work.  Look in the logs, make sure no configuration errors or warnings are thrown. If they are, address them.
  • If you are using a source release of grouper, you should get the new source release (including build.xml, build.properties etc), and copy your properties files into the /conf dir.  Merge the new build.example.properties with your version
  • The database conversion script removed some cols, and relinked some foreign keys.  The old data is still in the table.  After you are satisfied grouper works correctly, you can remove these cols by changing the grouper.properties keys:
# after you have converted id's, and are happy with the conversion of removing the uuid col,
# this will remove the backup uuid cols when running the gsh command: registryInitializeSchema()
ddlutils.dropBackupUuidCols = true

# after you have converted field id foreign keys, and are happy with the conversion of removing the attribute name,
# membership list name, and type cols,
# this will remove the backup field name/type cols when running the gsh command: registryInitializeSchema()
ddlutils.dropBackupFieldNameTypeCols = true
    • Then generate the DDL again (the -deep option will examine the DB structure, not the DB version from the grouper_ddl table): gsh -registry -deep
      • Then examine the resultant script carefully.  Make sure the important operations (e.g. dropping/adding views are innocuous) are dropping the backup columns from the table
      • Turn off access to grouper
      • Backup your registry by database or xml export
      • Run that script
      • Verify the columns are removed
      • Grouper should work

Web services

  • Axis jars have changed.  Remove the old ones, add new ones from the grouper-ws release in the lib/axis dir
  • Nothing important has changed with grouper-ws.properties, but you may want to merge yours with grouper-ws.example.properties to be sure
  • Replace or merge the axis.xml with the one from grouper-ws distribution
  • Replace or merge the /services and /modules dirs from the grouper-ws distribution
  • Two data changes were made to existing services:
    • Added two more fields to the wsGroupDetail object, adjust your clients appropriately (should only matter for SOAP clients or REST which are not coded correctly)
      • compositeType (should be UNION, COMPLEMENT, INTERSECTION, or blank for non-composite)
      • params
    • There was a weird situation where the result code was transmitted as an object...this is not transmitted anymore
<WsDeleteMemberLiteResult>
  <resultMetadata>
    <wsResultCode
class="edu.internet2.middleware.grouper.ws.soap.WsDeleteMemberLiteResult$WsDeleteMemberLiteResultCode">SUCCESS</wsResultCode>
    <resultCode>SUCCESS</resultCode>
    <resultMessage></resultMessage>
    <success>T</success>
  • Merge grouper-ws build.properties with example, and note the group.lib.dir has changed 

User Interface

  • Merge the grouper nav.properties with yours.  Note new properties about tooltips in types and attributes.

Grouper Change Log

This document lists instructions for people with existing groups installations on how to upgrade to newer versions of grouper (or grouper related products).  If you notice something missing please let us know.  The instructions are in descending order based on date/release.  You will find instructions below for Grouper, Grouper-ws, Grouper-ui, GSH, USDU, etc.  It is assumed if you are running grouper-ui that you will perform both the grouper upgrade notes, and the grouper-ui upgrade notes.  It is understood that you will get the new source/javadoc/etc files, this document addresses configurations, jars, etc.

Grouper

  • 2010/03/26: v1.4.3 GROUPER_1_4_BRANCH: compare the grouper.properties with the grouper.example.properties and get the readonly property
  • 2009/6/4: v1.4.2 GROUPER_1_4_BRANCH:
    • compare sources.xml with sources.example.xml.  Get new section on improved jdbc source.  If you are interested in improving the free-form subject search (e.g. from UI), switch to new subject adapter based on example: GrouperJdbcSourceAdapter2
    • compare grouper.properties with grouper.example.properties: get new loader hook and org management section (can be commented out).
    • compare ldappc.xml with ldappc.example.xml, get list-empty-value documentation
  • 2009/4/25: v1.4.2 GROUPER_1_4_BRANCH:set this to true in grouper.hibernate.properties:
    hibernate.cache.use_query_cache       = true
    Compare and merge the new ehcache.example.xml with ehcache.xml.  There are stem/group/member caches defined
  • 2009/1/25: v1.4.1 GROUPER_1_4_BRANCH: the stem name index was changed to unique from non-unique.  Note, if you have problems adding this index, you need to remove stems with duplicate names from the registry.  Obviously this needs to be done with care, and you might want to backup before attempting, or contact grouper-dev for help
    • Run: grouper_home/bin/gsh -registry -check
      • Then look at the result script, and execute that script, perhaps with:
        grouper_home/bin/gsh -registry -runsqlfile C:/mchyzer/isc/dev/grouper_v1_4/grouper/ddlScripts/grouperDdl_20090125_08_39_44_148.sql
    • -or- you can do this manually, change the stem name index to unique, and update grouper_ddl table Grouper entry DB_VERSION to 13
    • -or- (not recommended) you could export the registry to backup, rebuild the registry with run:
      • gsh -xmlexport GrouperSystem /whatever/20090125_1_4.xml
      • grouper_home/bin/gsh -registry -drop -runscript
      • gsh -xmlimport GrouperSystem /whatever/20090125_1_4.xml
  • 2009/1/25: v1.4.1 GROUPER_1_4_BRANCH: merge grouper.properties with grouper.example.properties, adding properties: junit.test.loader, junit.test.ldappc, junit.test.ddl
  • 2008/11/14: v1.4 HEAD: compare and merge all config files with examples, things were rearranged, organized, etc
  • 2008/10/29: v1.4 HEAD: update morphString.jar, algorithm changed
  • 2008/10/14: v1.4 HEAD: update jars for config checking:
    • delete lib/grouper/commons-discovery-0.4.jar
    • delete lib/grouper/jamon-2.7.jar
    • update invoker.jar
    • add commons-discovery.jar
    • add jamon.jar
    • update morphString.jar
    • update p6spy.jar
    • update subject.jar : note, if you have a custom source, you need to implement some new methods and recompile
  • 2008/09/30: v1.4 HEAD: all jars have their version number removed, might want to delete old, and get new.  e.g. from quartz-1.6.0.jar to quartz.jar
  • 2008/09/23: v1.4 HEAD: numParameters is now optional in sources.xml.  You can remove any numParameters params in sources.xml:       <param><param-name>numParameters</param-name><param-value>1</param-value></param>
  • 2008/09/15: v1.4 HEAD: Subject API converted to use C3P0 pooling instead of DBCP.
    • delete: lib/commons-dbcp.jar
    • delete: lib/commons-pool.jar
    • update: lib/commons-logging.jar
    • delete: lib/subject-0.3.0-rc1-cvs.jar
    • add: lib/subject.jar
    • compare the sources.xml with the sources.example.xml, and add the elements and comments about jdbcConnectionProvider.  You can leave the value blank for C3P0, or fill it in.  If you are using the same credentials for grouper and a subject source, remove the credentials from sources.xml and put edu.internet2.middleware.grouper.subj.GrouperJdbcConnectionProvider  as the jdbcConnectionProvider
  • 2008/09/14: v1.4 HEAD: Passwords encrypted in external files.  Add the jar: morphString.jar.  Add morphString.example.properties, and morphString.properties.  In sources.xml, replace the sourceadapter classes
        - FROM: edu.internet2.middleware.subject.provider.JDBCSourceAdapter    TO: edu.internet2.middleware.grouper.subj.GrouperJdbcSourceAdapter
        - FROM: edu.internet2.middleware.subject.provider.JNDISourceAdapter     TO: edu.internet2.middleware.grouper.subj.GrouperJndiSourceAdapter
    If you want to take advantage of external encrypted passwords (optional):
        - In morphString.properties, set the encrypt.key entry to a random alphanumeric string, or a pathname of a file containing the alphanumeric string
        - In sources.xml, and grouper.hibernate.properties, encrypt the passwords with: java -jar morphString.jar, and put results in a file, and put the file path where the passwords were in sources.xml or grouper.hibernate.properties
  • 2008/08/14: v1.4 HEAD: UUID/ID cols reduced, and Field foreign key is now field_id.  Delete any check constraints you have in your database.  E.g. on the grouper_fields table.  Start grouper to see in the logs a message that says to run a script, or do an: ant schemaexport.  You should review the script before running it, as sometimes ddlutils does weird things.  Also, in prod you should export your data before running.  Once you are comfortable with the result after running the script and checking your grouper data, set grouper.properties ddlutils.dropBackupUuidCols to true, and ddlutils.dropBackupFieldNameTypeCols to true, then: ant schemaexport, to get the script to drop the backup uuid/id cols.  I would run all db scripts in prod with a DB ide (e.g. toad) or manually so that you can address any issues (see link for example issues)
  • 2008/07/27: v1.4 HEAD: DDL management changed.
       - Copy the DDL section from the grouper.example.properties into your grouper.properties, configure them
       - Add the jar: ant-1.7.1.jar
       - run: ant schemaexport to sync everything up (or generate the script to sync everything up, depending on grouper.properties)
       - Remove any schema-export.sql files
  • 2008/07/22: v1.4 HEAD: If you were already using grouper loader, rename the table grouploader_log to grouper_loader_log.  If you already had the grouper_ddl table, delete the java_version column
  • 2008/07/21: v1.4 HEAD: Add these jars: quartz-1.6.0.jar, commons-cli-1.1.jar, bsh-2.0b4.jar.  GSH, loader, and usdu are in grouper now, with start scripts in grouper_home/bin.  See this jira report
  • 2008/07/21: v1.4 HEAD: The java package structure was refactored.  If you have code that doesnt compile, organize your imports.  See this jira report
  • 2008/07/20: v1.4 HEAD: Compare the grouper.properties with the grouper.example.properties, and add the section regarding group attribute validation via regex
  • 2008/07/09: v1.4 HEAD: Everyone needs to tweak your log4j.properties:

Change FROM (remove .ErrorLog and .DebugLog):

log4j.logger.edu.internet2.middleware.grouper.ErrorLog              = ERROR, grouper_error
#log4j.logger.edu.internet2.middleware.grouper.DebugLog              = INFO, grouper_debug

TO:

log4j.logger.edu.internet2.middleware.grouper              = ERROR, grouper_error
#log4j.logger.edu.internet2.middleware.grouper              = INFO, grouper_debug

and REMOVE these lines entirely:

## Grouper Test Logging
log4j.logger.edu.internet2.middleware.grouper.TestLog               = INFO, grouper_stdout

(probably doesnt affect you, but) If you have code that used the classes ErrorLog, DebugLog, or TestLog, these are removed, see GRP-105.

  • 2008/07/07: v1.4 HEAD: Merge your grouper.properties with the grouper.example.properties.  Pick up the new property: grouper.setters.dont.cause.queries
    • If you set this to true, refactor your the following methods:
      • group.setAttribute(), group.setExtension(), group.setDescription(), group.setDisplayExtension() to call group.store() afterwards (could be after multiple calls)
      • stem.setDescription(), stem.setExtension(),  stem.setDisplayExtension(),  to call stem.store() afterwards (could be after multiple calls)
      • member.setSubjectSourceId(), member.setSubjectId(), to call member.store() afterwards (could be after multiple calls)

e.g. if the code is:

someGroup.setAttribute("whatever", "something");

change to:

someGroup.setAttribute("whatever", "something");
someGroup.store();

  • 2008/06/30: v1.4 HEAD: Merge your grouper.properties with the grouper.example.properties.  Pick up the new hooks configs, but leave the grouper.setters.dont.cause.queries setting out for now (or set to false).
  • 2008/06/05: v1.4 HEAD: Remove the jar: i2mi-common-0.1.0.jar
  • 2008/06/05: v1.4 HEAD: Add the jars (note these dont have version numbers since they were extracted from i2mi-common and Im not 100% sure of the version number...  replacements will though):
    • commons-beanutils.jar
    • commons-collections.jar
    • commons-dbcp.jar
    • commons-digester.jar
    • commons-logging.jar
    • commons-pool.jar
    • dom4j.jar
    • odmg.jar

Grouper-ui

  • 2009/6/4: v1.4.2 GROUPER_1_4_BRANCH: compare your media.properties with the new media.properties, get new settings
  • 2009/04/11: v1.4.2 (GROUPER_UI_V1_4_BRANCH): there is now a grouper-ui.jar, so do a clean build (or delete the deployed WEB-INF/classes/edu dir), and use the new grouper-ui.jar, and the new struts.jar)
  • 2008/09/23: v1.4 HEAD: You can add tooltips to your group types and attributes if you like.  Add something like this to the custom nav.properties, though substitute the type name and attribute name for "grouperLoader" and "grouperLoaderdbName"

tooltipTargetted.groupTypes.grouperLoader=Group membership automatically managed via an external source, e.g. SQL query
tooltipTargetted.groupFields.grouperLoaderDbName=For sql based loader, this is the name of the db connection.

Grouper-ws

  • 2009/06/26: v1.4.2: note that 1.4.2 web.xml in grouper-ws was accidentally committed with the authentication stuff commented out.  The web services wont work since the user isnt there.  You need to use the web.xml of the previous version (or latest 1.4 branch).  e.g. here.  If you have built from CVS in the 1.4+ branch you shouldnt have this problem.
  • 2008/12/4: v1.4.0rc1 HEAD: added WsSubject.identifierLookup.  Note, for REST less than 1.4, this field will not be sent.  Also, in wsAssignGrouperPrivilegesLiteResult, there was a privilegeResults field, which shouldne be there, it was removed.  In wsAssignGrouperPrivilegesLiteResult the privilege type was all caps, it was changed to be all lower
  • 2008/12/4: v1.4.0rc1 HEAD: Changed result codes for groupSave and stemSave.  Instead of SUCCESS, it will be either: SUCCESS_INSERTED, SUCCESS_UPDATED, SUCCESS_NO_CHANGES_NEEDED.  Note, this is only for client version of 1.4+
  • 2008/12/2: v1.4.0rc1 HEAD: Added two properties to grouper-ws.properties, compare with the example file
  • 2008/11/6: v1.4 HEAD: Added two more fields to the wsGroupDetail object, adjust your clients appropriately:
    • compositeType (should be UNION, COMPLEMENT, INTERSECTION, or blank for non-composite)
    • params
  • 2008/10/28: v1.4 HEAD: some changes in conjunction with adding the privilege services
    • merge grouper-ws build.properties with example, and note the group.lib.dir has changed
    • there was a weird situation where the result code was transmitted as an object...

<WsDeleteMemberLiteResult>
  <resultMetadata>
    <wsResultCode class="edu.internet2.middleware.grouper.ws.soap.WsDeleteMemberLiteResult$WsDeleteMemberLiteResultCode">SUCCESS</wsResultCode>
    <resultCode>SUCCESS</resultCode>
    <resultMessage></resultMessage>
    <success>T</success>

     I fixed this so it is not transmitted... clients should not have been using that element, but if so, check them.  I believe this was only REST formats...

  • 2008/10/21: v1.4 HEAD:Axis2 1.3 was upgraded to Axis2 1.4,
    • you need to get all the lib/axis jars, and delete old dupes
    • replace or merge the axis.xml
    • replace or merge the /services and /modules dirs
  • 2008/10/12: v1.4 HEAD: The grouper lib dir changed, so did this property in the grouper-ws.properties (note its not lib/grouper anymore):
    #e.g. from grouper-ws: lib

Grouper-loader

  • 2008/12/12: v1.4.0: Merge grouper-loader.properties with grouper-loader.example.properties, there is a new setting for daily report directory
  • 2008/12/9: v1.4.0 RC2 HEAD: if you are using grouper loader, and you are not auto creating types and attributes in grouper config, then add this new attribute with GSH:
    • subj=SubjectFinder.findById("GrouperSystem")
      sess=GrouperSession.start(subj)
      type=GroupType.createType(sess, "grouperLoader")
      read=Privilege.getInstance("read")
      admin=Privilege.getInstance("admin")
      type.addAttribute(sess, "grouperLoaderGroupQuery", read, admin, false)
  • fd

Grouper client

  • 2009/6/4: v1.4.2 GROUPER_1_4_BRANCH: compare grouper.client.usage.txt with grouper.client.usage.example.txt, fix typos

LDAPPC

  • 2009/7/7: v1.4.2 : An error was made in the configuration schema whereby the "grouper-attribute" is required regardless of structure (either "flat" or "bushy") and is no longer restricted to "id" or "name". The "grouper-attribute" should only be required when the structure is flat. The affected schema element in conf/edu/internet2/middleware/ldappc/schema/ldappcConfig.xsd should look like :
    <!-- ========================== GROUPS ELEMENT ======================== -->
    <xs:element name="groups">
     ...
     <xs:attribute name="grouper-attribute">
      <xs:simpleType>
       <xs:restriction base="xs:string">
        <xs:enumeration value="id" />
        <xs:enumeration value="name" />
       </xs:restriction>
      </xs:simpleType>
     </xs:attribute>
    

     (question) Questions or comments? (info) Contact us.

Unable to render {include} The included page could not be found.
  • No labels