fcrepo-exts / fcrepo-camel-toolbox

A collection of ready-to-use messaging applications with fcrepo-camel
Apache License 2.0
13 stars 26 forks source link

Update commons-codec version and include it in shaded jar #193

Closed whikloj closed 1 year ago

whikloj commented 1 year ago

JIRA Ticket: https://fedora-repository.atlassian.net/browse/FCREPO-3892 and #192

What does this Pull Request do?

Updates the version of commons-codec and adds the ServicesResourceTransformer to the shade plugin to ensure the Jena dependencies end up in the final jar.

How should this be tested?

Make a container with some blank nodes (see linked tickets), then try to index it to a triplestore.

Before PR: get a stacktrace with java.lang.NoClassDefFoundError: org/apache/commons/codec/digest/MurmurHash3 in it.

After PR: resource is indexed to triplestore

Additional Notes:

Example:

Interested parties

Tag (@ mention) interested parties or, if unsure, @fcrepo/committers

whikloj commented 1 year ago

Just for clarity in the associated Github issue and Jira the blank nodes are identifier by the underscore colon i.e. _:b1 and _:b0 and _:b2

So this

curl -v -ufedoraAdmin:fedoraAdmin -H"Content-type: text/turtle" -d "<> <http://example.org/somePredicate> _:b0 . _:b0 <http://purl.org/dc/elements/1.1/title> 'Some title' ." -XPOST -H"Slug: testContainer" http://localhost:8080/rest

should generate a resource with a blank node in it.

mikejritter commented 1 year ago

@whikloj I got around to redoing my docker setup this morning for testing this and got the exception to replicate and the verifying the fix. Going to merge this now.