Implement Harvester Registration Servlet
Additional scheduling logic
Changes to Harvester properties
Changes to log entries
Made changes in these three files so that getPrincipal returns back more details about users and groups. Users now contain userDN, user Name and user Email. Groups now contain Group name and Group description. So some function calls which returned single string array earlier now returns multiple string arrays. AuthSession.java called one of these functions - so accordingly changes were made to fix that part of the code.
Fixed a bug which doesn't occur everytime. The bug occurs when lastid in (cfg).lastid is not unique. i.e. there is already a document in the server which has same docid. The earlier algorithm was:
while(not unique){ get accession number; update accession number written in document; (BUG)...
Added extra parameters (cfg & docid) to be passed on to generic response screen.
made changes so that organization name for the site or project is entered beforeany other creater.
Fixed the bug for sessionid storing, revision couldn't be zero and Ldap DN is case sensitive.
Replaced Hash table with Vector of Vector datastructure in getting <param> from Query. This was done so that the results are represented in same order as they appeared in the document.
fixed a bug in reloading of kewords from an eml file for edit-datapackage form.
Fixed bug that version could not be zero in replication.
Minor changes to allow the registry to work in the knb skin, mainly inhow to treat the 'site' field. Now it is a free-text organizationfield in the KNB skin. Need to test, install this on ecoinfo and link itinto the KNB web pages.
Added subroutine for replacing characters that might create problem in HTML.Specifically written for "being used in any text field. This create aproblem in confirmData template, when you specify input name value pair with valuehaving a " in it.
Additional Harvester development
Made changes so that & and other characters dont mess up the url that is passed to metacat.
Additional development of Harvester implementation
Mixed a bug reported by Rick and Dan. The form inserted a organizationName tag with no value. This happened only in NCEAS as the tag was included from the drop down site list which doesnot exsist in NCEAS version. Hence, a empty tag was inserted in the eml document.
Bug 1301 - changes made for a repeatable add keyword button
Made changes to fix bug# 1326. The templateVar are now passed on to the responseTemplate also in case of error - so that it can show a link which will send all the values back to register-dataset.
Harvester source files
Did editing to support changes mentioned in bug 1295
Fixed hardcoded admin account so that it works with more than just OBFSRegistry.
Fixed registry bug involving a string comparison (used numericequality instead of string equality).
Removed unneeded Net::LDAP dependency. Now all authentication occursindirectly through Metacat.
Added skin for the UCNRS data registry based on earlier work. Minormodifications to the templates to accomodate this. Fixed a validationbug in the register-dataset.cgi, and removed an unnecessary Net::LDAPlogin as well because the authentication is handled by metacat.
Restoring AuthLdap to previous search filter. Determined that the problem wasa missing o: attribute in the UCNRS LDAP directory. Adding it in makes the oldmethod work. The change I had made caused some confusion about authenticationbecause using just uid for a filter caused too many return dn's, and it was just...
Fixed validation check for samplingDescription.
Changes to re-enable the nceas admindb access for the production install.
Removed some debugging test code that isn't needed.
Added studyExtent and samplingDescription fields to the registry to accomodateSandy's request for a temporalDescription field. This is a little more thanshe wanted, but it was needed to satisfy EML minimum requirements.
Modified LDAP authentication to support a lookup for the NRS system. Ifthe auth on the provided string fails as a DN, try to look up a newDN based on the UID. If we get a match, use that DN for auth and seeif that works. This allows us to use a referral within the...
Added taxonomic coverage and authority fields, and fixed a bug in reentrywith the methods fields. Now we are collecting information on all of theadditional fields Sandy requested except for a general temporal description,which doesn't fit neatly in EML. Will need to consider how to accomodate...
Added the ability to describe taxonomicCoverage to the registry. Thisallows an arbitrary number of species or other taxa to be listed, and theediting form can dynamically grow through a simple javascript approach(also used in Methods). Need to test thoroughly, and need to test on...
Added geographic description to the fields of data collected, as it isa required field and was being improperly defaulted to an empty string in theXML document. This is a new field for all registries.
Modifications to add "Methods" collection to the data registry, and tomake the forms HTML 4.0.1 valid (in an attempt to figure out some ofthe rendering and layout oddities I'm seeing).
New formatting and text for the NCEAS data registry.
Further changes to the registry scripts to support the NCEAS registrywith access to the project list fromthe admindb. Also, fixed a bug withthe script where creators were getting duplicated in the editing processaccidentally.
Modifications that allow working group entries to be put in as creators, anda whole bunch of re-formatting for horribly formatted code that I need toread to finish this thing up.
Updated registry further for NCEAS-specific needs. Confirm data templatenow handles new wg field. Still need to write WG metadata into EML document.
Additional work on the NCEAS/AdminDB integration. Working Groups nowpresented as a dropdown box for multiple selection. Need to write theinfo to the XML file now and handle it in confirmation template.
Preliminary changes to support the NCEAS data registry connection to theAdminDB to retrieve project lists.
Enabled stylesheet parameters to be passed through metacat even when the'query' function is called. Previously, query would interpret allparameters except a few hardcoded ones to be pathexpressions that should bebuilt into a squery. Now, metacat.properties contains a new configuration...
Updates that allow registry script to update the lastid field more efficientlyby calling the metacat 'getlastdocid' function for a given scope. Also somedebugging support added, and a bug where the error message was inproperlysaved across calls to metacat, resulting in spurious error messages.
Added new function "getLastId" to the Metacat.pm perl Metacat client. Returnsthe hisghest docid in use in a given scope.
Moved the metacat.properties file from the jar file to now be located inthe tomcat context directory in WEB-INF. Now the metacat configuration iseditable in place. This change depends on a new Options.java class in theutilities module, so be sure you do a "clean" build in metacat so that you...
Improvements to Harvester single file upload servlets
Remove email notification from registry script.
This is the merge from the branch WEB_UI_REDESIGN_BRANCH back into the head.The only files that have been removed are those in lib/style/eml2; other filesthat have been cvs removed (only from lib/ and lib/style) have been re-addedelsewhere (i.e. moved from one directory to another)....
Remove unneeded file Upload999.java
If the sessionid is null and user will be treated as public.
Get rid of doctype declare in transfer.
Set system id for transforming.
Modified a method and can be reused.
If db pool size is maxium and no connection is free. The checkout will be wait.
Add a checking for xml_nodes insert finished, then start build index table.
Remove UPPER function for >, < operator.
Add a new search mode not-contains.
Modified a debug Message.
Add a new method to find document from queryspecification.
Revise code so it can be called directly.
Revied the class.
New class will be used in metacat ecogrid impl.
Updated more tests on session reuse. Made the http calls set the sessionidexplicitly rather than relying on cookies being passed around statically.Still need to modify HttpMessage to get rid of the static cookie.
Renamed the upgrade sql files to more understandable names, updated thebuild file to include some new targets for running these files, andupdated the installation docs to clarify which upgrade scripts need tobe run and when.
New versions of the Metacat client API that allow access to the sessionIdso that a session can be reused over several different instances.
Fixed the sessionId handling code to now properly return the sessionIdin the login response message. Updated junit tests to test this issue.
Modified metacat to now provide the session identifier in the responsexml message when a login is called. This has not been fully tested.I removed the HttpMessage class from metacat in favor of using the versionof that class that is found in the utilities module. This may cause some...
Fixed a bug for importing package
Fixed the bug that if path query without xml declaration will cause a non well-formed result doc.
A sample application program to call metacat string service.
Fixed some bugs in this file.
Implementation for the interface.
Add a new client interface with string type for web service.
Drop xml_accesssubtree table before the xml_document table.
in toxml method, add new code to handle dtd.
Add a new constructor to hanlde DTD node.
Add code to handle public id and system id.
Implement logout method.
Add a logout method.
Implemented the update and delete methods in the interface, along with tests.
Implemented the "insert()" method and wrote a test to test it. The new testdepends on the property "newdocid" be set to something unique in the build.xmlfile so that the insert will work properly. Probably need to fix this to besome kind of autoincrement counter or random number so that it can be run...
Refactored to use IOUtil routines. Reformatted for within-file consistency.
Implement query method.
Add metacatinaccessible exception for query.
Implemented the 'read' API call. Some more to go...
Wrote the login() function, the first of the series of API calls forthe metacat client to be implemented. Also wrote a test class totest the API functionality.
If uploading failed, the inline data will be deleted either.
If xml document uploading failed, the inline data file will be deleted either.
Added a new subpackage (edu.ucsb.nceas.metacat.client) which is a clientaccess library for the metacat. There is an interface (Metacat.java) thatprovides simple access methods for the main metacat functions. This is tosupport clients like Morpho and others that want to programatically access...
JAVA 1.3 doesn't support this FileWriter(File fileName, boolean append). But 1.4 does.Change to FileWriter(String fileName, boolean append). Both 1.3 and 1.4 support.
Fixed bug in replication if doctype is null.
Fixed a bug that replication didn't do inline data.
Change a array size from 4*10(testing) to 4*1024.
Using reader replacing string to read inline data.
Using reader to replace string to read inline data.
Change the way to handle inline data.
When character size is greater than 4000, it will write to db.
Change string to stringreader to save memory.