hibernate/hibernate-orm · error · UnsupportedOperationException

{className} does not support resultsets via stored procedure

Error message

{className} does not support resultsets via stored procedures

What it means

Error "{className} does not support resultsets via stored procedures" thrown in hibernate/hibernate-orm.

Source

Thrown at hibernate-core/src/main/java/org/hibernate/dialect/Dialect.java:3360

	 * Registers a parameter capable of returning a {@link ResultSet}
	 * <em>by position</em>, either an {@code OUT} parameter, or a
	 * {@link Types#REF_CURSOR REF_CURSOR} parameter as defined in Java 8.
	 *
	 * @apiNote Before Java 8, support for {@link ResultSet}-returning
	 *          parameters was very uneven across database and drivers,
	 *          leading to its inclusion as part of the {@code Dialect}
	 *          contract.
	 *
	 * @param statement The callable statement.
	 * @param position The bind position at which to register the output param.
	 *
	 * @return The number of (contiguous) bind positions used.
	 *
	 * @throws SQLException Indicates problems registering the param.
	 */
	public int registerResultSetOutParameter(CallableStatement statement, int position)
			throws SQLException {
		throw new UnsupportedOperationException(
				getClass().getName() +
						" does not support resultsets via stored procedures"
		);
	}

	/**
	 * Registers a parameter capable of returning a {@link ResultSet}
	 * <em>by name</em>, either an {@code OUT} parameter, or a
	 * {@link Types#REF_CURSOR REF_CURSOR} parameter as defined in Java 8.
	 *
	 * @apiNote Before Java 8, support for {@link ResultSet}-returning
	 *          parameters was very uneven across database and drivers,
	 *          leading to its inclusion as part of the {@code Dialect}
	 *          contract.
	 *
	 * @param statement The callable statement.
	 * @param name The parameter name (for drivers which support named parameters).
	 *

View on GitHub (pinned to fad1729dce)

Solutions

  1. Use REF_CURSOR or output parameters instead of result sets.
  2. Use a dialect/database that supports procedure result sets.

When it happens

Trigger: Triggered when the application calls a Hibernate dialect feature that the configured database dialect cannot provide: the dialect class does not support resultsets via stored procedures.

Common situations: Common when running against a database whose dialect lacks this capability, when a mapping or HQL/Criteria query requests unsupported functionality, or when the wrong dialect is configured for the database in use. Error: the dialect class does not support resultsets via stored procedures.


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