Advertisement
Guest User

Untitled

a guest
Feb 26th, 2018
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.50 KB | None | 0 0
  1. [org.hibernate.hql.internal.QuerySplitter] (default task-1) HHH000183: no persistent classes found for query class: SELECT c FROM com.bank.ro.Collateral c where c.Id = 992469
  2.  
  3. root
  4. - pricingAPI
  5. - main
  6. - java
  7. - com
  8. - bank
  9. - ro
  10. Collateral.java
  11. - dao
  12. JPAUtility.java
  13. JPQLDataAccessor.java
  14. - resource
  15. PricingSvcResource.java
  16. - resources
  17. persistence.xml
  18. - webapp
  19. - META-INF
  20. persistence.xml
  21. - WEB-INF
  22. beans.xml
  23. web.xml
  24.  
  25. - pricingEAR
  26. - src
  27. - main
  28. hibernate.cfg.xml
  29. - application
  30. - META-INF
  31. persistence.xml
  32. application.xml
  33.  
  34. package com.bank.ro;
  35.  
  36. import javax.annotation.ManagedBean;
  37. import javax.persistence.*;
  38. import java.sql.Date;
  39. import java.sql.Timestamp;
  40.  
  41. @ManagedBean(value = "collateral")
  42. @Table(name = "schema.collateral")
  43. //@Entity(name="com.bank.ro.Collateral")
  44. public class Collateral {
  45. private long id;
  46. private int version;
  47. private Timestamp createDate;
  48. ...
  49. public Collateral(){}
  50.  
  51. @Id
  52. @Column(name = "ID", nullable = false)
  53. public long getId() {
  54. return id;
  55. }
  56.  
  57. public void setId(long id) {
  58. this.id = id;
  59. }
  60.  
  61. @Basic
  62. @Column(name = "VERSION", nullable = false)
  63. public int getVersion() {
  64. return version;
  65. }
  66.  
  67. public void setVersion(int version) {
  68. this.version = version;
  69. }
  70. ...
  71. }
  72.  
  73. package com.bank.dao;
  74.  
  75. import javax.annotation.ManagedBean;
  76. import javax.persistence.EntityManager;
  77. import javax.persistence.EntityManagerFactory;
  78. import javax.persistence.Persistence;
  79. import javax.persistence.PersistenceContext;
  80.  
  81. @ManagedBean(value = "JPAUtility")
  82. @PersistenceContext(unitName="collateral-persistence-unit", name="collateral-persistence-unit")
  83. public class JPAUtility {
  84. private static final EntityManagerFactory emFactory;
  85. static {
  86. emFactory = Persistence.createEntityManagerFactory("collateral-persistence-unit");
  87. }
  88. private static EntityManager entityManager = null;
  89.  
  90. public JPAUtility(){};
  91.  
  92. public static void setEntityManager(){
  93. entityManager = emFactory.createEntityManager();
  94. }
  95. public static EntityManager getEntityManager(){
  96. if(entityManager == null) {
  97. setEntityManager();
  98. }
  99. return entityManager;
  100. }
  101. public static void close(){
  102. emFactory.close();
  103. }
  104. }
  105.  
  106. package com.bank.dao;
  107.  
  108. import java.util.ArrayList;
  109. import java.util.List;
  110. import com.bank.ro.Collateral;
  111. import javax.persistence.EntityManager;
  112. import javax.persistence.criteria.CriteriaQuery;
  113.  
  114. public class JPQLDataAccessor
  115. {
  116. public static List<Collateral> retrieveCollateralRecords(EntityManager em, Long id)
  117. {
  118. final StringBuilder queryStringBuilder = new StringBuilder();
  119. String qry = "SELECT c FROM " + Collateral.class.getName() + " c where c.Id = " + id.longValue();
  120. queryStringBuilder.append(qry);
  121. List colls = em.createQuery(qry).getResultList();
  122. return colls;
  123. }
  124. }
  125.  
  126. package com.bank.pricing.resource;
  127.  
  128. import java.util.ArrayList;
  129. import java.util.List;
  130.  
  131. import com.bank.dao.JPAUtility;
  132. import com.bank.dao.JPQLDataAccessor;
  133. import com.bank.ro.Collateral;
  134. import io.swagger.annotations.Api;
  135. import io.swagger.annotations.ApiOperation;
  136. import io.swagger.annotations.ApiResponse;
  137. import io.swagger.annotations.ApiResponses;
  138.  
  139. import javax.annotation.security.DenyAll;
  140. import javax.annotation.security.PermitAll;
  141. import javax.inject.Inject;
  142. import javax.persistence.EntityManager;
  143. import javax.ws.rs.*;
  144. import javax.ws.rs.core.MediaType;
  145. import javax.ws.rs.core.Response;
  146. import com.bank.ro.Application;
  147. import com.bank.ro.OffersRequest;
  148. import javax.annotation.security.DenyAll;
  149. import javax.annotation.security.PermitAll;
  150.  
  151. import javax.persistence.EntityManager;
  152. import javax.ws.rs.GET;
  153. import javax.ws.rs.Path;
  154. import javax.ws.rs.core.Response;
  155. import io.swagger.annotations.*;
  156. import org.hibernate.service.spi.InjectService;
  157.  
  158. @Path("/") // hello-world
  159. @DenyAll
  160. @Api(value = "/", tags = "PricingSvcResource Operation")
  161. public class PricingSvcResource {
  162.  
  163.  
  164. @GET
  165. @Produces({MediaType.TEXT_HTML})
  166. @Path("hello-world/")
  167. @PermitAll
  168. @ApiOperation(value = "Get Hello world text.")
  169. @ApiResponses(value = {
  170. @ApiResponse(code = 200, message = "Success", response = String.class)})
  171. public Response getHelloWorld()
  172. {
  173. return Response.ok("Hello world").build();
  174. }
  175.  
  176. @GET
  177. @PermitAll
  178. @ApiOperation(value = "Get Collateral details by Collateral ID")
  179. @ApiResponses(value = {
  180. @ApiResponse(code = 200, message = "Success", response = String.class)})
  181. @Path("details/{collateral_id}")
  182. @Produces({ MediaType.TEXT_HTML})
  183. public Response getCollateralDetails(@PathParam("collateral_id") String collateralId) {
  184.  
  185. if(collateralId==null || collateralId.isEmpty() || !collateralId.matches("^\d+$")) {
  186. return Response.ok("There was no collateralId or it was an unusable value.")
  187. .header("Access-Control-Allow-Origin", "*")
  188. .build();
  189. }
  190. EntityManager em = JPAUtility.getEntityManager();
  191.  
  192. List<Collateral> collList = JPQLDataAccessor.retrieveCollateralRecords(em, Long.parseLong(collateralId));
  193. Collateral coll = null;
  194. if( collList.size() > 0 )
  195. {
  196. coll = collList.get(0);
  197. }
  198. if(coll != null) {
  199. return Response.ok(coll.getDescription()).build();
  200. }
  201. return Response.ok("No collateral found for that ID").header("Access-Control-Allow-Origin", "*").build();
  202. }
  203. }
  204.  
  205. <?xml version="1.0" encoding="UTF-8"?>
  206. <persistence version="2.1"
  207. xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  208. xsi:schemaLocation="
  209. http://xmlns.jcp.org/xml/ns/persistence
  210. http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
  211. <persistence-unit name="collateral-persistence-unit" transaction-type="JTA">
  212. <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
  213. <jta-data-source>java:jboss/datasources/collateral-ds</jta-data-source>
  214. <class>com.bank.ro.Collateral</class>
  215. <properties>
  216. <property name="hibernate.archive.autodetection" value="class, hbm" />
  217. <property name="jboss.entity.manager.factory.jndi.name" value="persistence-units/collateral-persistence-unit"/>
  218. <property name="hibernate.dialect" value="org.hibernate.dialect.DB2Dialect"/>
  219. <property name="hibernate.transaction.jta.platform" value="org.hibernate.service.jta.platform.internal.JBossAppServerJtaPlatform"/>
  220. <property name="hibernate.connection.url" value="jdbc:db2://{host}:{port}/{DB}"/>
  221. <property name="hibernate.connection.driver_class" value="com.ibm.db2.jcc.DB2Driver"/>
  222. <property name="wildfly.jpa.twophasebootstrap" value="false" />
  223. </properties>
  224. </persistence-unit>
  225. </persistence>
  226.  
  227. <?xml version="1.0" encoding="UTF-8"?>
  228. <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  229. xmlns="http://java.sun.com/xml/ns/javaee"
  230. xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  231. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
  232. http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  233. version="3.0">
  234. <display-name>pricing-svc</display-name>
  235. <context-param>
  236. <param-name>resteasy.role.based.security</param-name>
  237. <param-value>false</param-value>
  238. </context-param>
  239. <security-constraint>
  240. <web-resource-collection>
  241. <web-resource-name>Health APIs</web-resource-name>
  242. <url-pattern>/health</url-pattern>
  243. <url-pattern>/health/*</url-pattern>
  244. <http-method>GET</http-method>
  245. </web-resource-collection>
  246. </security-constraint>
  247. <security-constraint>
  248. <web-resource-collection>
  249. <web-resource-name>Hello World APIs</web-resource-name>
  250. <url-pattern>/hello-world</url-pattern>
  251. <http-method>GET</http-method>
  252. </web-resource-collection>
  253. </security-constraint>
  254. <security-constraint>
  255. <web-resource-collection>
  256. <web-resource-name>All</web-resource-name>
  257. <url-pattern>/</url-pattern>
  258. <http-method>GET</http-method>
  259. <http-method>POST</http-method>
  260. <http-method>PUT</http-method>
  261. <http-method>DELETE</http-method>
  262. </web-resource-collection>
  263. </security-constraint>
  264. <security-constraint>
  265. <web-resource-collection>
  266. <web-resource-name>Public APIs</web-resource-name>
  267. <url-pattern>/public</url-pattern>
  268. <url-pattern>/public/*</url-pattern>
  269. <http-method>GET</http-method>
  270. <http-method>POST</http-method>
  271. <http-method>PUT</http-method>
  272. <http-method>DELETE</http-method>
  273. </web-resource-collection>
  274. </security-constraint>
  275. <security-constraint>
  276. <web-resource-collection>
  277. <web-resource-name>All Secured APIs</web-resource-name>
  278. <url-pattern>/*</url-pattern>
  279. <http-method>GET</http-method>
  280. <http-method>POST</http-method>
  281. <http-method>PUT</http-method>
  282. <http-method>DELETE</http-method>
  283. </web-resource-collection>
  284. </security-constraint>
  285. <security-role>
  286. <role-name>A_ROLE</role-name>
  287. </security-role>
  288. </web-app>
  289.  
  290. <?xml version="1.0" encoding="UTF-8"?>
  291. <application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.xsd" id="Application_ID" version="5">
  292. <display-name>pricing-svcEAR</display-name>
  293. <module id="Module_1404334226710">
  294. <web>
  295. <web-uri>pricing-svc.war</web-uri>
  296. <context-root>v1/collateral2</context-root>
  297. </web>
  298. </module>
  299. <library-directory>lib</library-directory>
  300. </application>
  301.  
  302. <!DOCTYPE hibernate-configuration PUBLIC
  303. "-//Hibernate/Hibernate Configuration DTD//EN"
  304. "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
  305. <hibernate-configuration>
  306. <session-factory>
  307. <property name="show_sql">true</property>
  308. <property name="hibernate.dialect">org.hibernate.dialect.DB2Dialect</property>
  309. <property name="current_session_context_class">thread</property>
  310. <property name="hibernate.session_factory_name">SessionFactory</property>
  311. <property name="hibernate.connection.url">jdbc:db2://{host}:{port}/{schema}</property>
  312. <property name="hibernate.connection.username">XXXX</property>
  313. <property name="hibernate.connection.password">XXXX</property>
  314. <mapping class="com.bank.ro.Collateral"/>
  315. </session-factory>
  316. </hibernate-configuration>
  317.  
  318. <subsystem xmlns="urn:jboss:domain:datasources:4.0">
  319. <datasources>
  320. <datasource jndi-name="java:jboss/datasources/collateral-ds"
  321. pool-name="collateral-ds"
  322. enabled="true"
  323. use-java-context="true"
  324. jta="true">
  325. <datasource-class>com.ibm.db2.jcc.DB2DataSource</datasource-class>
  326. <connection-url>${env.DS_CONNECTION_URL}</connection-url>
  327. <connection-property name="driverType">
  328. 4
  329. </connection-property>
  330. <connection-property name="serverName">
  331. ${env.DS_CONNECTION_SERVER_NAME}
  332. </connection-property>
  333. <connection-property name="portNumber">
  334. ${env.DS_CONNECTION_PORT}
  335. </connection-property>
  336. <connection-property name="databaseName">
  337. ${env.DS_CONNECTION_DATABASE_NAME}
  338. </connection-property>
  339. <connection-property name="currentSchema">
  340. ${env.DS_CONNECTION_CURRENT_SCHEMA}
  341. </connection-property>
  342. <driver>${env.DS_DRIVER}</driver>
  343. <driver-class>com.ibm.db2.jcc.DB2Driver</driver-class>
  344. <pool>
  345. <min-pool-size>${env.DS_POOL_MIN_SIZE}</min-pool-size>
  346. <max-pool-size>${env.DS_POOL_MAX_SIZE}</max-pool-size>
  347. </pool>
  348. <security>
  349. <user-name>${env.DS_USER_NAME}</user-name>
  350. <password>${env.DS_PASSWORD}</password>
  351. </security>
  352. <validation>
  353. <valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.db2.DB2ValidConnectionChecker"/>
  354. <validate-on-match>true</validate-on-match>
  355. <background-validation>false</background-validation>
  356. <stale-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.db2.DB2StaleConnectionChecker"/>
  357. <exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.db2.DB2ExceptionSorter"/>
  358. </validation>
  359. </datasource>
  360.  
  361.  
  362. <drivers>
  363. <driver name="com.ibm.db2.jcc" module="com.ibm.db2.jcc">
  364. <datasource-class>com.ibm.db2.jcc.DB2DataSource</datasource-class>
  365. </driver>
  366. <driver name="xxx-db2-driver" module="com.xxx.inf.jdbc.30">
  367. <driver-class>com.xxx.inf.jdbc3.drivers.Db2ThrottledJdbcDriver</driver-class>
  368. </driver>
  369. </drivers>
  370. </datasources>
  371. </subsystem>
  372. ....
  373. <subsystem xmlns="urn:jboss:domain:ee:4.0">
  374. <spec-descriptor-property-replacement>false</spec-descriptor-property-replacement>
  375. <concurrent>
  376. <context-services>
  377. <context-service name="default" jndi-name="java:jboss/ee/concurrency/context/default" use-transaction-setup-provider="true"/>
  378. </context-services>
  379. <managed-thread-factories>
  380. <managed-thread-factory name="default" jndi-name="java:jboss/ee/concurrency/factory/default" context-service="default"/>
  381. </managed-thread-factories>
  382. <managed-executor-services>
  383. <managed-executor-service name="default" jndi-name="java:jboss/ee/concurrency/executor/default" context-service="default" hung-task-threshold="60000" keepalive-time="5000"/>
  384. </managed-executor-services>
  385. <managed-scheduled-executor-services>
  386. <managed-scheduled-executor-service name="default" jndi-name="java:jboss/ee/concurrency/scheduler/default" context-service="default" hung-task-threshold="60000" keepalive-time="3000"/>
  387. </managed-scheduled-executor-services>
  388. </concurrent>
  389. <default-bindings
  390. context-service="java:jboss/ee/concurrency/context/default"
  391. managed-executor-service="java:jboss/ee/concurrency/executor/default"
  392. managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default"
  393. managed-thread-factory="java:jboss/ee/concurrency/factory/default"
  394. datasource="java:jboss/datasources/collateral-ds"
  395. />
  396.  
  397. </subsystem>
  398.  
  399. 12:26:03,718 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0060: Http management interface listening on http://0.0.0.0:9990/management
  400. 12:26:03,718 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0051: Admin console listening on http://0.0.0.0:9990
  401. 12:26:03,719 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0025: JBoss EAP 7.0.0.GA (WildFly Core 2.1.2.Final-redhat-1) started in 14587ms - Started 410 of 476 services (116 services are lazy, passive or on-demand)
  402. 12:27:00,639 INFO [com.xxx.inf.api.auth.mechanisms.RestAuthenticationMechanism] (default task-1) Non protected resource, ID-Claim not checked
  403. 12:27:00,743 INFO [stdout] (default task-1) SELECT c FROM com.bank.ro.Collateral c where c.Id = 992469
  404. 12:27:00,758 WARN [org.hibernate.hql.internal.QuerySplitter] (default task-1) HHH000183: no persistent classes found for query class: SELECT c FROM com.bank.ro.Collateral c where c.Id = 992469
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement