Skip to content

IllegalAccessException in CatalogSafetyInitializer #2129

@sbrossie

Description

@sbrossie

The following exception started to appear in our logs - probably linked to this PR:

age-trial-ebd6cd7c-089f-4818-8904-b7304406b0e6', nextPhase='standard-monthly-usage-trial-ebd6cd7c-089f-4818-8904-b7304406b0e6-trial', remainingEventsForUserOperation=0, transitionType=CREATE, startDate=2025-06-06T20:32:53.000Z}
java.lang.RuntimeException: Failed during catalog initialization : 
	at org.killbill.billing.catalog.CatalogSafetyInitializer.initializeNonRequiredNullFieldsWithDefaultValue(CatalogSafetyInitializer.java:76)
	at org.killbill.billing.catalog.DefaultUsage.initialize(DefaultUsage.java:234)
	at org.killbill.billing.catalog.DefaultPlanPhase.initialize(DefaultPlanPhase.java:207)
	at org.killbill.billing.catalog.DefaultPlan.initialize(DefaultPlan.java:270)
	at org.killbill.billing.catalog.plugin.StandaloneCatalogMapper.toDefaultPlan(StandaloneCatalogMapper.java:363)
	at org.killbill.billing.catalog.plugin.StandaloneCatalogMapper.toDefaultPlans(StandaloneCatalogMapper.java:263)
	at org.killbill.billing.catalog.plugin.StandaloneCatalogMapper.toStandaloneCatalog(StandaloneCatalogMapper.java:111)
	at org.killbill.billing.catalog.plugin.VersionedCatalogMapper.toStandaloneCatalog(VersionedCatalogMapper.java:43)
	at org.killbill.billing.catalog.plugin.VersionedCatalogMapper.toVersionedCatalog(VersionedCatalogMapper.java:36)
	at org.killbill.billing.catalog.caching.DefaultCatalogCache.getCatalogFromPlugins(DefaultCatalogCache.java:179)
	at org.killbill.billing.catalog.caching.DefaultCatalogCache.getCatalog(DefaultCatalogCache.java:106)
	at org.killbill.billing.catalog.DefaultCatalogService.getCatalog(DefaultCatalogService.java:113)
...
Caused by: java.lang.IllegalAccessException: class org.killbill.billing.catalog.CatalogSafetyInitializer cannot access a member of class org.killbill.billing.catalog.DefaultUsage with modifiers "private"
	at java.base/jdk.internal.reflect.Reflection.newIllegalAccessException(Reflection.java:361)
	at java.base/java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:591)
	at java.base/java.lang.reflect.Field.checkAccess(Field.java:1075)
	at java.base/java.lang.reflect.Field.set(Field.java:778)
	at org.killbill.billing.catalog.CatalogSafetyInitializer.initializeArrayIfNull(CatalogSafetyInitializer.java:131)
	at org.killbill.billing.catalog.CatalogSafetyInitializer.initializeNonRequiredNullFieldsWithDefaultValue(CatalogSafetyInitializer.java:56)
	... 47 common frames omitted

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions