{"record":{"id":"62e34c76a83da99e","repo":"hibernate/hibernate-orm","slug":"cannot-unwrap-to-requested-type-62e34c","errorCode":null,"errorMessage":"Cannot unwrap to requested type [{}]","messagePattern":"Cannot unwrap to requested type \\[(.+?)\\]","errorType":"exception","errorClass":"UnknownUnwrapTypeException","httpStatus":null,"severity":"error","filePath":"hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProvider.java","lineNumber":337,"sourceCode":"\t\t\t\tdbInfo.getIsolationLevel(),\n\t\t\t\tdbInfo.getPoolMinSize(),\n\t\t\t\tdbInfo.getPoolMaxSize(),\n\t\t\t\tdbInfo.getJdbcFetchSize()\n\t\t);\n\t}\n\n\t@Override\n\tpublic boolean isUnwrappableAs(@Nonnull Class<?> unwrapType) {\n\t\treturn unwrapType.isAssignableFrom( DriverManagerConnectionProvider.class );\n\t}\n\n\t@Override\n\tpublic <T> T unwrap(@Nonnull Class<T> unwrapType) {\n\t\tif ( unwrapType.isAssignableFrom( DriverManagerConnectionProvider.class ) ) {\n\t\t\treturn unwrapType.cast( this );\n\t\t}\n\t\telse {\n\t\t\tthrow new UnknownUnwrapTypeException( unwrapType );\n\t\t}\n\t}\n\n\tprotected int getOpenConnections() {\n\t\treturn state.getPool().getOpenConnectionCount();\n\t}\n\n\tprotected void validateConnectionsReturned() {\n\t\tfinal int allocationCount = getOpenConnections();\n\t\tif ( allocationCount != 0 ) {\n\t\t\tCONNECTION_INFO_LOGGER.connectionLeakDetected( allocationCount );\n\t\t}\n\t}\n\n\tprotected void validateConnections(ConnectionValidator validator) {\n\t\tstate.validateConnections( validator );\n\t}\n","sourceCodeStart":319,"sourceCodeEnd":355,"githubUrl":"https://github.com/hibernate/hibernate-orm/blob/fad1729dce015f908198d57a8d80274a30f905a5/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProvider.java#L319-L355","documentation":"Error \"Cannot unwrap to requested type [{}]\" thrown in hibernate/hibernate-orm.","triggerScenarios":"Thrown at hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProvider.java:337 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Only unwrap to types the DriverManagerConnectionProvider actually implements","Avoid unwrap() calls with unrelated target types"],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"fad1729dce015f908198d57a8d80274a30f905a5","analyzedAt":"2026-08-22T04:13:57.527Z","schemaVersion":2},"datasetVersion":"2026-08-22T09:17:25.309Z"}