github phax/phoss-smp phoss-smp-parent-pom-8.6.1
v8.6.1

4 hours ago
  • Added an opt-in cache for the responses of the read-only REST API endpoints GET /{ServiceGroupId} and GET /{ServiceGroupId}/services/{DocumentTypeId}, enabled via smp.rest.cache.enabled=true.
    Cached Service Metadata responses are stored already signed, so a cache hit neither queries the backend nor signs again.
    All cached responses of a participant are invalidated as soon as anything of that participant is modified on the same SMP instance; other instances of a multi-instance setup see the modification at the latest after smp.rest.cache.ttl (default 60s).
    The storage can be replaced via the new SPI interface ISMPRestResponseCacheSPI - by default an in-memory cache with at most smp.rest.cache.maxitems (default 10000) entries is used.
    See #555
  • The response of the REST API Service Group import (PUT /exchange/import/xml/v1/{UserId}) now honours the Accept header.
    application/json results in a JSON response, in all other cases - including unsupported values - the existing XML response is returned.
  • Added a dry run mode to the Service Group import, both in the UI (Dry run checkbox) and in the REST API (URL parameter dry-run).
    In a dry run the uploaded file is only analyzed and the actions that would be performed are reported - nothing is changed, neither locally nor in the SML or the Directory.
    An import that overwrites existing Service Groups now explicitly reports that all existing Service Information and Redirects of those Service Groups will be deleted.
    Stored owners that cannot be resolved and are therefore replaced by the default owner are now reported in the import result as warnings instead of only in the log.
    The new method overload ServiceGroupImport.importXMLVer10 takes the additional bDryRun parameter.
  • Updated the predefined document types to include Peppol eDEC Code Lists v9.7
  • Fixed a memory leak in the REST API statistics, that made the heap grow with every distinct requested path (via ph-oton 10.7.0).
    The $func and $timer statistics of the REST API were keyed by the concrete requested path, and never evicted, so every distinct Participant ID and Document Type ID ever requested - including unauthenticated and unmatched requests - permanently added new entries.
    They are now keyed by the route template (e.g. /{ServiceGroupID}/services/{DocumentTypeID}).
    See phax/ph-oton#57 - thx @ismailbennani
    ismailbennani
  • (XML) A data file that exists but cannot be parsed as XML now results in an error, instead of being ignored (via ph-commons 12.5.1).
    Previously the SMP silently continued without the content of that file, and the next write replaced the file and therefore deleted the only copy of the data - for the user, user group and role files a single broken file locked everybody out.
    See phax/ph-oton#11
  • The page Administration / Monitoring / Audit Items now has three tabs: the latest entries, all entries of a selected day, and a search over the last 1 to 30 days with a per-day summary (via ph-oton-bootstrap5 1.0.0).
    Failed audit entries are highlighted in red.
    The tabs Entries by date and Search are not supported by the MongoDB backend - an info message is shown instead.
  • Added the new page Administration / App Information / CSS and JS that lists all included CSS and JS resources (via ph-oton-bootstrap5 1.0.0)

Full Changelog: phoss-smp-parent-pom-8.6.0...phoss-smp-parent-pom-8.6.1

Don't miss a new phoss-smp release

NewReleases is sending notifications on new releases.