'java.sql.SQLSyntaxErrorException: ORA-01747 problem in @query

I have a spring boot app (generated by jhipster) when I call my end-point that uses this query it works fine, and I guess this should not work since the query is returning a lot of columns that doesn't exist in Student Class!

@Query(value = "select * from student inner join usuario on student.email=usuario.email where usuario.usuario=?#{principal.username}", nativeQuery = true)
Page<Student> findByCurrentStudent(Pageable pageable);

but this gives the following error (it works perfectly in sql developer)

@Query(value = "select student.* from student inner join usuario on student.email=usuario.email where usuario.usuario=?#{principal.username}", nativeQuery = true)
Page<Student> findByCurrentStudent(Pageable pageable);

here is the error

Caused by: java.sql.SQLSyntaxErrorException: ORA-01747: invalid user specification.table.column, table.column or column

        at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:630)
        at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:564)
        at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1151)
        at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:771)
        at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:299)
        at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:498)
        at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:152)
        at oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:937)
        at oracle.jdbc.driver.OracleStatement.prepareDefineBufferAndExecute(OracleStatement.java:1172)
        at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1101)
        at oracle.jdbc.driver.OracleStatement.executeSQLSelect(OracleStatement.java:1426)
        at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1309)
        at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3746)
        at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3855)
        at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1098)
        at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeQuery(ProxyPreparedStatement.java:52)
        at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeQuery(HikariProxyPreparedStatement.java)
        at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.extract(ResultSetReturnImpl.java:57)
        ... 186 common frames omitted

It's strange! any explanation or help please



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source