У меня ошибка при выполнении запроса HQL. Это два класса, которые я использую. У меня действительно нет решений сейчас. Любая помощь будет принята с благодарностью. Заранее спасибо!
OrganisationApplicationBo.java
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.JoinColumns;
import javax.persistence.OneToOne;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;
@Entity
@Table(name = "ORGANISATIONAPPLICATION")
public class OrganisationApplicationBo implements Serializable {
@Id
@Column(name = "ORGANISATION_ID", nullable = false)
private int organisationId;
@Id
@Column(name = "CENTRE_NUMBER", nullable = false)
private String centreNumber;
@Id
@Column(name = "CANDIDATE_NUMBER", nullable = false)
private String candidateNumber;
@Id
@Column(name = "TEST_DATE", nullable = false)
private Date testDate;
@Column(name = "LAST_MODIFIED", nullable = false)
private Date lastModified;
@OneToOne
@JoinColumns({
@JoinColumn(name = "CANDIDATE_NUMBER", insertable = false, updatable = false),
@JoinColumn(name = "CENTRE_NUMBER", insertable = false, updatable = false),
@JoinColumn(name = "TEST_DATE", insertable = false, updatable = false)
})
private CandidateBo candidateBo;
public int getOrganisationId() {
return organisationId;
}
public void setOrganisationId(int organisationId) {
this.organisationId = organisationId;
}
public String getCentreNumber() {
return centreNumber;
}
public void setCentreNumber(String centreNumber) {
this.centreNumber = centreNumber;
}
public String getCandidateNumber() {
return candidateNumber;
}
public void setCandidateNumber(String candidateNumber) {
this.candidateNumber = candidateNumber;
}
public Date getTestDate() {
return testDate;
}
public void setTestDate(Date testDate) {
this.testDate = testDate;
}
public Date getLastModified() {
return lastModified;
}
public void setLastModified(Date lastModified) {
this.lastModified = lastModified;
}
public CandidateBo getCandidateBo() {
return candidateBo;
}
public void setCandidateBo(CandidateBo candidateBo) {
this.candidateBo = candidateBo;
}
}
CandidateBo.java
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.sql.Blob;
import java.util.Date;
@Entity
@Table(name = "CANDIDAT")
public class CandidateBo implements Serializable {
@Id
@Column(name = "CANDIDATE_NUMBER", nullable = false)
private String candidateNumber;
@Id
@Column(name = "CENTRE_NUMBER", updatable = false)
private String centreNumber;
@Id
@Column(name = "TEST_DATE")
private Date testDate;
@Column(name = "FAMILY_NAME")
private String familyName;
@Column(name = "GIVEN_NAME")
private String givenName;
@Column(name = "DATE_OF_BIRTH")
private Date dateOfBirth;
@Column(name = "GENDER")
private String gender;
@Column(name = "CERTID")
private String certid;
@Column(name = "ID_NUMBER")
private String idNumber;
@Column(name = "RESIT")
private Integer resit;
@Column(name = "RESIT_DATE")
private Date resitDate;
@Column(name = "OVERALL_RESULT")
private Integer overallResult;
@Column(name = "R_BAND_SCORE")
private Integer rBandScore;
@Column(name = "L_BAND_SCORE")
private Integer lBandScore;
@Column(name = "W_BAND_SCORE")
private Integer wBandScore;
@Column(name = "S_BAND_SCORE")
private Integer sBandScore;
@Column(name = "PHOTO")
private Blob photo;
public String getCandidateNumber() {
return candidateNumber;
}
public void setCandidateNumber(String candidateNumber) {
this.candidateNumber = candidateNumber;
}
public String getCentreNumber() {
return centreNumber;
}
public void setCentreNumber(String centreNumber) {
this.centreNumber = centreNumber;
}
public String getFamilyName() {
return familyName;
}
public void setFamilyName(String familyName) {
this.familyName = familyName;
}
public String getGivenName() {
return givenName;
}
public void setGivenName(String givenName) {
this.givenName = givenName;
}
public Date getDateOfBirth() {
return dateOfBirth;
}
public void setDateOfBirth(Date dateOfBirth) {
this.dateOfBirth = dateOfBirth;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getCertid() {
return certid;
}
public void setCertid(String certid) {
this.certid = certid;
}
public String getIdNumber() {
return idNumber;
}
public void setIdNumber(String idNumber) {
this.idNumber = idNumber;
}
public Date getTestDate() {
return testDate;
}
public void setTestDate(Date testDate) {
this.testDate = testDate;
}
public Integer getResit() {
return resit;
}
public void setResit(Integer resit) {
this.resit = resit;
}
public Date getResitDate() {
return resitDate;
}
public void setResitDate(Date resitDate) {
this.resitDate = resitDate;
}
public Integer getOverallResult() {
return overallResult;
}
public void setOverallResult(Integer overallResult) {
this.overallResult = overallResult;
}
public Integer getrBandScore() {
return rBandScore;
}
public void setrBandScore(Integer rBandScore) {
this.rBandScore = rBandScore;
}
public Integer getlBandScore() {
return lBandScore;
}
public void setlBandScore(Integer lBandScore) {
this.lBandScore = lBandScore;
}
public Integer getwBandScore() {
return wBandScore;
}
public void setwBandScore(Integer wBandScore) {
this.wBandScore = wBandScore;
}
public Integer getsBandScore() {
return sBandScore;
}
public void setsBandScore(Integer sBandScore) {
this.sBandScore = sBandScore;
}
public Blob getPhoto() {
return photo;
}
public void setPhoto(Blob photo) {
this.photo = photo;
}
}
MyHQL-запрос
String hql = "SELECT a FROM OrganisationApplicationBo a " +
"INNER JOIN a.candidateBo b " +
"WHERE a.organisationId='180'";
Query query = session.createQuery(hql);
System.out.println(query.list());
Ошибка:
org.hibernate.exception.DataException: could not execute query
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:102)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
at org.hibernate.loader.Loader.doList(Loader.java:2536)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2276)
at org.hibernate.loader.Loader.list(Loader.java:2271)
at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:452)
at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:363)
at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:196)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1268)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:102)
at com.auth0.trf.util.AuthUtil.getOrganisationApplicationBoList(AuthUtil.java:125)
at com.auth0.trf.swing.ui.MainFrame$GenerateFile.actionPerformed(MainFrame.java:54)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6539)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6304)
at java.awt.Container.processEvent(Container.java:2239)
at java.awt.Component.dispatchEventImpl(Component.java:4889)
at java.awt.Container.dispatchEventImpl(Container.java:2297)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
at java.awt.Container.dispatchEventImpl(Container.java:2283)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:733)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
Caused by: java.sql.SQLDataException: ORA-01847: day of month must be between 1 and last day of month