hibernate/hibernate-orm · error · IllegalArgumentException

Illegal discriminator value: {}

Error message

Illegal discriminator value: {}

What it means

Error "Illegal discriminator value: {}" thrown in hibernate/hibernate-orm.

Source

Thrown at hibernate-core/src/main/java/org/hibernate/metamodel/mapping/internal/UnifiedAnyDiscriminatorConverter.java:206

	protected String getEntityName(O domainForm) {
		final Class<?> entityClass;
		if ( domainForm == null ) {
			return null;
		}
		else if ( domainForm instanceof Class<?> clazz ) {
			entityClass = clazz;
		}
		else if ( domainForm instanceof String name ) {
			return name;
		}
		else {
			entityClass = unproxy( domainForm ).getClass();
		}
		try {
			return mappingMetamodel.getEntityDescriptor( entityClass ).getEntityName();
		}
		catch (IllegalArgumentException iae) {
			throw new IllegalArgumentException( "Illegal discriminator value: " + domainForm );
		}
	}
}

View on GitHub (pinned to fad1729dce)

Solutions

  1. Assign the any-association only instances of entities registered in its discriminator mapping.

When it happens

Trigger: Thrown when a value supplied as an @Any discriminator is not among the legal mapped discriminator values.

Common situations: See trigger scenarios.


AI-assisted analysis of hibernate/hibernate-orm@fad1729dce (2026-08-22). Data as JSON: /api/errors/27858b1856b3b1b8. Report an issue: GitHub.