We have recently installed dspace 7.5 on RHEL 8 server.
I have added a couple of additional conditions and statements to the example doi-filter in item-filters.xml and set up
and the DOIIdentifierProvider with the filter property (uncommented the existing example in indentifier-service.xml).
[dspace]$ [dspace]/bin/dspace dsrun
org.dspace.content.logic.TestLogicRunner -f doi-filter -i 123456789/105577
Starting impl of main() test spring logic item filter
true
but for some reason on item install/archive the identifier service is always evaluating items as false according to the dspace log and no items are added to the doi table:
e.g.
2023-06-28 17:55:49,566 WARN
4d31b166-1d54-4149-b159-6a74a9e84b64
f21e0307-bfd2-42f8-9281-53c7dd41663f
org.dspace.identifier.IdentifierServiceImpl @ Identifier not registered
(inapplicable): Item 123456789/105577 was evaluated as 'false' by the item
filter, not minting
I've tried removing the identifiers.submission.filter.install = doi-filter config line and only having the filter referenced in identifier-service.xml DOIIdentifierProvider section and also tried the opposite (removing the filter property line in DOIIdentifierProvider). Have tried alternatively uncommenting both seemingly identical versions of the DOIIdentifierProvider in the spring config file but both give the same result - all items rejected by the filtering.
Removing both the filtering parameters, all archived items go in to the doi table with status of 7 as expected.
I'm a bit stumped - it feels like the IdentifierServiceImpl isn't finding and using the doi-filter in item-filters.xml whereas the test logic runner is. The log output doesn't give me details of what item filter the identifier service is actually evaluating (if any - the same error message seems to be used in various bits of the else if loop in the code). Be grateful for any advice on this as we would love to get the doi filtering working.
If it makes any difference we have not set
identifiers.submission.register to true as we plan to just use the register doi button to do adhoc minting of items still in the submission process. The register doi button works well :) - many thanks to the developers for that.