Hi Steinar,

The xsd stacktrace can be explained by this liquibase-issue I think :
https://github.com/liquibase/liquibase/issues/2817

They closed it incorrectly imho

Kind regards,
Steven

On Sun, Aug 14, 2022 at 8:31 AM Steinar Bang <s...@dod.no> wrote:

> >>>>> Steven Huypens <steven.huyp...@gmail.com>:
>
> > 1) The exception "No Common Superclass:javax/crypto/SecretKey
> > javax/crypto/SecretKeyFactory" is from the liquibase pro package, as
> > you can see in the stacktrace. But I do not understand that, because
> > that package is not part of the 4.9.1 liquibase-core.jar. It might be
> > however that we are not seeing that error because we do not use the
> > Liquibase class.
>
> Thanks for the info.
>
> I'd put that one off for later, since it didn't seem to affect the rest
> of the operation.  So I hadn't studied it closesly.
>
> Maybe it'll disappear when I stop using the Liquibase class...? :-)
>
> > 2) The XSDLookUpException is because liquibase cannot find the xsd's
> > located in liquibase-core-4.9.1.jar\www.liquibase.org
> \xml\ns\dbchangelog,
> > it's a classLoader issue I guess.
>
> Yep! The OSGi class loader only loads classes from other bundles. All
> resources are local bundle only.
>
> I've actually used that to good effect in bundles where I've used
> Liquibase, but I've landed on having each project having its own unique
> file naming, when I had to load two liquibase-loading bundles as normal
> jar files in a unit test, and the changelog files suddenly
> overlapping...
>
> > 3) The spifly startlevel seems to be important indeed. Since I lowered
> it's
> > startLevel in our own code, the exception did not occur anymore.
>
> Yep!
>
> > 4) I don't know which approach you're supposed to use, sorry.
>
> I'll figure it out eventually, I'm too stubborn to give up. :-)
>
> > 5) fyi, I'm using this to assert the exception. Maybe it's useful for you
> > as well ..
>
> > Stream<String> lines = Files.lines(Paths.get("data/log/karaf.log"));
> > lines.forEach(l -> System.out.println(l));
> > Assert.assertFalse(lines.anyMatch(line -> line.contains("Exception")));
>
> Ah! Clever! Thanks for the tip!
>
>

Reply via email to