hibernate/hibernate-orm · error · IllegalArgumentException

Expected '{}' value but got '{}'

Error message

Expected '{}' value but got '{}'

What it means

Error "Expected '{}' value but got '{}'" thrown in hibernate/hibernate-orm.

Source

Thrown at hibernate-core/src/main/java/org/hibernate/query/restriction/JakartaDataRestriction.java:653

			}
		}
	}

	private static void verifyAssignableExpressionType(
			Expression<?> expression,
			Expression<?> valueExpression) {
		final var expressionType = wrapperType( expression.getJavaType() );
		final var valueType = wrapperType( valueExpression.getJavaType() );
		if ( expressionType != null && valueType != null && !expressionType.isAssignableFrom( valueType ) ) {
			throw new IllegalArgumentException(
					"Expected '" + expressionType.getName() + "' expression but got '" + valueType.getName() + "'" );
		}
	}

	private static void verifyValueType(Expression<?> expression, Object value) {
		final var expressionType = wrapperType( expression.getJavaType() );
		if ( value != null && expressionType != null && !expressionType.isInstance( value ) ) {
			throw new IllegalArgumentException(
					"Expected '" + expressionType.getName() + "' value but got '" + value.getClass().getName() + "'" );
		}
	}

	private static Class<?> wrapperType(Class<?> javaType) {
		if ( javaType == null || !javaType.isPrimitive() ) {
			return javaType;
		}
		else if ( javaType == boolean.class ) {
			return Boolean.class;
		}
		else if ( javaType == byte.class ) {
			return Byte.class;
		}
		else if ( javaType == char.class ) {
			return Character.class;
		}
		else if ( javaType == double.class ) {

View on GitHub (pinned to fad1729dce)

Solutions

  1. The value has an unexpected type. Supply a value of the expected type for the restriction.

When it happens

Trigger: A runtime precondition of the Hibernate query API is violated: Expected '<value>' value but got '<value>'

Common situations: Application code or configuration calls the query API in a way that violates its documented contract; the interpolated values in the message identify the offending input.


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