Skip to content

Commit 9127481

Browse files
randymayvladmihalcea
authored andcommitted
HHH-12225 - NullPointerException When Using type(<Class>) in HQL
1 parent aa4303d commit 9127481

File tree

8 files changed

+892
-0
lines changed

8 files changed

+892
-0
lines changed

hibernate-core/src/main/java/org/hibernate/tuple/entity/PojoEntityTuplizer.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -300,6 +300,10 @@ public void afterInitialize(Object entity, SharedSessionContractImplementor sess
300300

301301
@Override
302302
public String determineConcreteSubclassEntityName(Object entityInstance, SessionFactoryImplementor factory) {
303+
if ( entityInstance == null ) {
304+
return getEntityName();
305+
}
306+
303307
final Class concreteEntityClass = entityInstance.getClass();
304308
if ( concreteEntityClass == getMappedClass() ) {
305309
return getEntityName();
Lines changed: 380 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,380 @@
1+
/*
2+
* Hibernate, Relational Persistence for Idiomatic Java
3+
*
4+
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
5+
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
6+
*/
7+
package org.hibernate.query.hhh12225;
8+
9+
import java.util.Date;
10+
11+
public class Contract {
12+
public static final long serialVersionUID = 1L;
13+
14+
private transient boolean overrideEnabled = false;
15+
16+
private Long id;
17+
private Date creationDate;
18+
private Date modifiedDate;
19+
private Integer version;
20+
21+
private boolean rendered;
22+
private boolean fixedPrice;
23+
private boolean renewable;
24+
private boolean emailDistributionRequested;
25+
26+
private Integer financedTerm;
27+
private Integer financedAmortizationPeriod;
28+
private Integer coverageTerm;
29+
30+
private Long trackingId;
31+
private Long timeToCreate = 0L;
32+
private Long templateId;
33+
34+
private Double productPrice = 0.0;
35+
private Double totalCost = 0.0;
36+
private Double paymentAmount = 0.0;
37+
private Double price = 0.0;
38+
private Double financedAmount = 0.0;
39+
private Double coverageBenefit = 0.0;
40+
private Double coveragePaymentRelief = 0.0;
41+
private Double coverageFinanced = 0.0;
42+
private Double previousDeficiency = 0.0;
43+
private Double coverageDeficiency = 0.0;
44+
private Double interestRate = 0.0;
45+
46+
private String externalId;
47+
private String paymentMethod;
48+
private String paymentFrequency;
49+
private String accountNumber;
50+
private String origin;
51+
private String premiumFinanced;
52+
private String locale;
53+
54+
private Date effectiveDate;
55+
private Date terminationDate;
56+
private Date renewalDate;
57+
private Date expiryDate;
58+
59+
private Contract _endorsed;
60+
61+
public Contract() {
62+
}
63+
64+
public boolean isNew() {
65+
return this.id == null;
66+
}
67+
68+
public Long getId() {
69+
return this.id;
70+
}
71+
72+
public void setId(Long id) {
73+
this.id = id;
74+
}
75+
76+
public Date getEffectiveDate() {
77+
return this.effectiveDate;
78+
}
79+
80+
public void setEffectiveDate(Date effectiveDate) {
81+
this.effectiveDate = effectiveDate;
82+
}
83+
84+
public Date getTerminationDate() {
85+
return this.terminationDate;
86+
}
87+
88+
public void setTerminationDate(Date terminationDate) {
89+
this.terminationDate = terminationDate;
90+
}
91+
92+
public String getExternalId() {
93+
return this.externalId;
94+
}
95+
96+
public void setExternalId(String externalId) {
97+
this.externalId = externalId;
98+
}
99+
100+
public Long getTemplateId() {
101+
return this.templateId;
102+
}
103+
104+
public void setTemplateId(Long templateId) {
105+
this.templateId = templateId;
106+
}
107+
108+
public Double getPrice() {
109+
return this.price;
110+
}
111+
112+
public void setPrice(Double price) {
113+
this.price = price;
114+
}
115+
116+
public Integer getVersion() {
117+
return this.version;
118+
}
119+
120+
public void setVersion(Integer version) {
121+
this.version = version;
122+
}
123+
124+
public String toString() {
125+
return String.valueOf( id );
126+
}
127+
128+
public Integer getFinancedTerm() {
129+
return financedTerm;
130+
}
131+
132+
public void setFinancedTerm(Integer integer) {
133+
financedTerm = integer;
134+
}
135+
136+
public Long getTrackingId() {
137+
return trackingId;
138+
}
139+
140+
public void setTrackingId(Long id) {
141+
trackingId = id;
142+
}
143+
144+
public Date getCreationDate() {
145+
return creationDate;
146+
}
147+
148+
public Date getModifiedDate() {
149+
return modifiedDate;
150+
}
151+
152+
public void setCreationDate(Date date) {
153+
creationDate = date;
154+
}
155+
156+
public void setModifiedDate(Date date) {
157+
modifiedDate = date;
158+
}
159+
160+
public Integer getCoverageTerm() {
161+
return coverageTerm;
162+
}
163+
164+
public void setCoverageTerm(Integer integer) {
165+
coverageTerm = integer;
166+
}
167+
168+
public String getAccountNumber() {
169+
return accountNumber;
170+
}
171+
172+
public Double getFinancedAmount() {
173+
return financedAmount;
174+
}
175+
176+
public void setAccountNumber(String string) {
177+
accountNumber = string;
178+
}
179+
180+
public void setFinancedAmount(Double double1) {
181+
financedAmount = double1;
182+
}
183+
184+
public Double getCoverageDeficiency() {
185+
return coverageDeficiency;
186+
}
187+
188+
public Double getPreviousDeficiency() {
189+
return previousDeficiency;
190+
}
191+
192+
public void setCoverageDeficiency(Double double1) {
193+
coverageDeficiency = double1;
194+
}
195+
196+
public void setPreviousDeficiency(Double double1) {
197+
previousDeficiency = double1;
198+
}
199+
200+
public Double getTotalCost() {
201+
return totalCost;
202+
}
203+
204+
public void setTotalCost(Double double1) {
205+
totalCost = double1;
206+
}
207+
208+
public Double getInterestRate() {
209+
return interestRate;
210+
}
211+
212+
public void setInterestRate(Double double1) {
213+
interestRate = double1;
214+
}
215+
216+
public boolean isRendered() {
217+
return rendered;
218+
}
219+
220+
public void setRendered(boolean b) {
221+
rendered = b;
222+
}
223+
224+
public Double getCoverageBenefit() {
225+
return coverageBenefit;
226+
}
227+
228+
public Double getCoverageFinanced() {
229+
return coverageFinanced;
230+
}
231+
232+
public void setCoverageBenefit(Double double1) {
233+
coverageBenefit = double1;
234+
}
235+
236+
public void setCoverageFinanced(Double double1) {
237+
coverageFinanced = double1;
238+
}
239+
240+
public boolean isFixedPrice() {
241+
return fixedPrice;
242+
}
243+
244+
public void setFixedPrice(boolean fixedPrice) {
245+
this.fixedPrice = fixedPrice;
246+
}
247+
248+
public Double getProductPrice() {
249+
return productPrice;
250+
}
251+
252+
public void setProductPrice(Double productPrice) {
253+
this.productPrice = productPrice;
254+
}
255+
256+
public Long getTimeToCreate() {
257+
return timeToCreate;
258+
}
259+
260+
public void setTimeToCreate(Long timeToCreate) {
261+
this.timeToCreate = timeToCreate;
262+
}
263+
264+
public String getPaymentMethod() {
265+
return paymentMethod;
266+
}
267+
268+
public void setPaymentMethod(String paymentMethod) {
269+
this.paymentMethod = paymentMethod;
270+
}
271+
272+
public String getPaymentFrequency() {
273+
return paymentFrequency;
274+
}
275+
276+
public void setPaymentFrequency(String paymentFrequency) {
277+
this.paymentFrequency = paymentFrequency;
278+
}
279+
280+
public Double getPaymentAmount() {
281+
return paymentAmount;
282+
}
283+
284+
public void setPaymentAmount(Double paymentAmount) {
285+
this.paymentAmount = paymentAmount;
286+
}
287+
288+
public Double getCoveragePaymentRelief() {
289+
return coveragePaymentRelief;
290+
}
291+
292+
public void setCoveragePaymentRelief(Double coveragePaymentRelief) {
293+
this.coveragePaymentRelief = coveragePaymentRelief;
294+
}
295+
296+
public Date getExpiryDate() {
297+
return expiryDate;
298+
}
299+
300+
public void setExpiryDate(Date coverageTerminationDate) {
301+
this.expiryDate = coverageTerminationDate;
302+
}
303+
304+
public String getPremiumFinanced() {
305+
return premiumFinanced;
306+
}
307+
308+
public void setPremiumFinanced(String premiumFinanced) {
309+
this.premiumFinanced = premiumFinanced;
310+
}
311+
312+
public Integer getFinancedAmortizationPeriod() {
313+
return financedAmortizationPeriod;
314+
}
315+
316+
public void setFinancedAmortizationPeriod(Integer financedAmortizationPeriod) {
317+
this.financedAmortizationPeriod = financedAmortizationPeriod;
318+
}
319+
320+
public Date getRenewalDate() {
321+
return renewalDate;
322+
}
323+
324+
public void setRenewalDate(Date refinancingDate) {
325+
this.renewalDate = refinancingDate;
326+
}
327+
328+
public boolean isRenewable() {
329+
return renewable;
330+
}
331+
332+
public void setRenewable(boolean renewable) {
333+
this.renewable = renewable;
334+
}
335+
336+
public boolean isEmailDistributionRequested() {
337+
return emailDistributionRequested;
338+
}
339+
340+
public void setEmailDistributionRequested(boolean emailDistributionRequested) {
341+
this.emailDistributionRequested = emailDistributionRequested;
342+
}
343+
344+
public String getOrigin() {
345+
return origin;
346+
}
347+
348+
public void setOrigin(String origin) {
349+
this.origin = origin;
350+
}
351+
352+
public Contract getEndorsed() {
353+
return _endorsed;
354+
}
355+
356+
public void setEndorsed(Contract endorsed) {
357+
_endorsed = endorsed;
358+
}
359+
360+
public boolean isEndorsement() {
361+
return _endorsed != null;
362+
}
363+
364+
public String getLocale() {
365+
return locale;
366+
}
367+
368+
public void setLocale(String locale) {
369+
this.locale = locale;
370+
}
371+
372+
public boolean isOverrideEnabled() {
373+
return overrideEnabled;
374+
}
375+
376+
public void setOverrideEnabled(boolean overrideEnabled) {
377+
this.overrideEnabled = overrideEnabled;
378+
}
379+
380+
}

0 commit comments

Comments
 (0)