Advertisement
Guest User

Untitled

a guest
Jun 25th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.21 KB | None | 0 0
  1. @RequestMapping(value = "/runMatching/{id}", method = RequestMethod.GET, params = "actionRun")
  2. public String runMatching(@PathVariable(required = true, name = "id") long id) {
  3.  
  4. System.out.println("the id is: " + id);
  5.  
  6. if (fileExist = true) {
  7.  
  8. //upload to db
  9. int uploadDB = dmttDAO.uploadListToDB(filePath);
  10.  
  11. try {
  12.  
  13. //int result = matchingEngine.execute();
  14. matchingEngine.execute();
  15.  
  16. } catch (Exception ex) {
  17. ex.printStackTrace();
  18. }
  19.  
  20. } else {
  21.  
  22. break;
  23. }
  24. }
  25. }
  26.  
  27. return "redirect:/excpMonitor";
  28.  
  29. }
  30.  
  31. package com.portal.dmtt.match;
  32.  
  33. import com.portal.dmtt.model.exceptionMonitoring.FN_Old_Exception;
  34. import com.portal.dmtt.model.exceptionMonitoring.FN_Result_Set;
  35. import com.portal.dmtt.model.exceptionMonitoring.config.FN_FR_new_Location;
  36. import org.apache.log4j.Logger;
  37. import org.hibernate.HibernateException;
  38. import org.hibernate.Session;
  39. import org.hibernate.SessionException;
  40. import org.hibernate.SessionFactory;
  41. import org.hibernate.cfg.Configuration;
  42.  
  43. import java.util.List;
  44.  
  45. public class MatchingEngine {
  46.  
  47. private final Logger logger = Logger.getLogger(MatchingEngine.class);
  48.  
  49.  
  50. private List<FN_Old_Exception> fnOldExceptionList;
  51.  
  52. private List<FN_Result_Set> fnResultSetList;
  53.  
  54. private List<FN_FR_new_Location> fnFrNewLocationList;
  55.  
  56. private FN_Result_Set theFnResultSet;
  57.  
  58. private FN_Old_Exception theFnOldException;
  59.  
  60. public int execute() {
  61.  
  62. int result = 0;
  63.  
  64. System.out.println(">>>>>>>>>>>>>>>>Start Matching Engine<<<<<<<<<<<<<<<< ");
  65.  
  66. System.out.println("Start: selectTheOldFnException ");
  67. result = selectTheOldFnException();
  68. if (result < 0) {
  69. logger.error("[Problem method at selectTheOldFnException]. Result: " + result);
  70.  
  71. return -1;
  72. }
  73.  
  74. System.out.println("Start: selectTheConfigurationFN ");
  75. // result = selectTheConfigurationFN();
  76. if (result < 0) {
  77. logger.error("[Problem method at selectTheOldFnException]. Result: " + result);
  78.  
  79. return -2;
  80. }
  81.  
  82. System.out.println("Start: matchFN ");
  83. //result = matchFN();
  84. if (result < 0) {
  85. logger.error("[Problem method at matchFN]. Result: " + result);
  86.  
  87. return -3;
  88. }
  89.  
  90. System.out.println("Start: theFnResultSet ");
  91. //result = writeItemToDb(theFnResultSet);
  92. if (result < 0) {
  93. logger.error("[Problem method at write item to db]. Result: " + result);
  94.  
  95. return -4;
  96. }
  97.  
  98. System.out.println("Start: findNewFN ");
  99. //result = findNewFN();
  100. if (result < 0) {
  101. logger.error("[Problem method at findNewFN]. Result: " + result);
  102. return -5;
  103. }
  104.  
  105. System.out.println(">>>>>>>>>>>>>>>>End Matching Engine<<<<<<<<<<<<<<<< ");
  106.  
  107. return result;
  108. }
  109.  
  110. /**
  111. * Select the old fn Exception
  112. *
  113. * @return
  114. */
  115. private int selectTheOldFnException() {
  116.  
  117. int result = 0;
  118.  
  119. // create session factory
  120. SessionFactory factory = new Configuration().configure("hibcfg.eMonitor.xml").addAnnotatedClass(FN_Old_Exception.class).buildSessionFactory();
  121.  
  122. // create a session
  123. Session session = factory.openSession();
  124.  
  125. try {
  126. String Query1 = "from FN_Old_Exception";
  127.  
  128. // start a transaction
  129. session.beginTransaction();
  130.  
  131. // query current reported watch list
  132. fnOldExceptionList = session.createQuery(Query1).list();
  133.  
  134. // commit transaction
  135. session.getTransaction().commit();
  136.  
  137. result = fnOldExceptionList.size();
  138.  
  139. //System.out.println(fnOldExceptionList.toString());
  140.  
  141. for (int i = 0; i < result; i++) {
  142.  
  143. System.out.println("selectTheOldFnException ---->>>" + fnOldExceptionList.get(i).toString());
  144. }
  145.  
  146. } catch (SessionException e) {
  147.  
  148. logger.fatal("Select selectFnException_New: Caught an Exception" + e.getMessage());
  149.  
  150. } finally {
  151.  
  152. session.close();
  153. factory.close();
  154.  
  155. }
  156.  
  157. return result;
  158.  
  159. }
  160.  
  161. /**
  162. * match FN based on parameter
  163. *
  164. * @return
  165. */
  166. private int matchFN() {
  167.  
  168. int result = 0;
  169.  
  170. result = fnOldExceptionList.size();
  171. int sizeFNConfiguration = fnFrNewLocationList.size();
  172.  
  173. for (int j = 0; j < sizeFNConfiguration; j++) {
  174.  
  175. String matchSpId = fnFrNewLocationList.get(j).getMatch_SP_Id();
  176. String matchLocId = fnFrNewLocationList.get(j).getMatch_Loc_Id();
  177. String remarks = fnFrNewLocationList.get(j).getRemarks();
  178.  
  179.  
  180. theFnOldException = new FN_Old_Exception();
  181.  
  182. for (int i = 0; i < result; i++) {
  183.  
  184. if (((fnOldExceptionList.get(i).getSp_Id().equals(matchSpId))) && ((fnOldExceptionList.get(i).getLoc_Id().equals(matchLocId)))) {
  185.  
  186. // set the new remarks after hit the logic
  187. fnOldExceptionList.get(i).setRemarks(remarks);
  188.  
  189. String spId = fnOldExceptionList.get(i).getSp_Id();
  190. String locId = fnOldExceptionList.get(i).getLoc_Id();
  191. String status = fnOldExceptionList.get(i).getXfer_Xmit_Status();
  192. String fileName = fnOldExceptionList.get(i).getXfer_File_Name();
  193. String updateTS = fnOldExceptionList.get(i).getUpdate_Ts();
  194. String yymm = fnOldExceptionList.get(i).getYYMM();
  195. String Remarks = fnOldExceptionList.get(i).getRemarks();
  196.  
  197. //display message
  198. //System.out.println("matchFN --->>>" + fnOldExceptionList.get(i).toString());
  199.  
  200. theFnResultSet = new FN_Result_Set(spId, locId, status, fileName, updateTS, yymm, Remarks);
  201.  
  202. writeItemToDb(theFnResultSet);
  203. }
  204. }
  205. }
  206.  
  207. return result;
  208. }
  209.  
  210. /**
  211. * SAVE-
  212. * all result to the new table (FN_Result_Set)
  213. *
  214. * @return
  215. */
  216. public int writeItemToDb(FN_Result_Set fn_result_set) {
  217.  
  218. int result = 0;
  219.  
  220. // create session factory
  221. SessionFactory factory = new Configuration().configure("hibcfg.eMonitor.xml").addAnnotatedClass(FN_Result_Set.class).buildSessionFactory();
  222. // create a session
  223. Session session = factory.openSession();
  224.  
  225. try {
  226.  
  227. session.beginTransaction();
  228.  
  229. session.saveOrUpdate(fn_result_set);
  230.  
  231. session.getTransaction().commit();
  232.  
  233. } catch (HibernateException ex1) {
  234. ex1.printStackTrace();
  235.  
  236. } catch (Exception ex) {
  237. ex.printStackTrace();
  238.  
  239. } finally {
  240.  
  241. session.close();
  242. factory.close();
  243.  
  244. }
  245.  
  246. return result;
  247. }
  248.  
  249. /**
  250. * differentiate between two entity
  251. *
  252. * @return
  253. */
  254. private int findNewFN() {
  255.  
  256. int result = 0;
  257.  
  258. result = fnOldExceptionList.size();
  259.  
  260. for (int i = 0; i < result; i++) {
  261.  
  262. if (fnOldExceptionList.get(i).getRemarks() == null) {
  263.  
  264. String spId = fnOldExceptionList.get(i).getSp_Id();
  265. String locId = fnOldExceptionList.get(i).getLoc_Id();
  266. String status = fnOldExceptionList.get(i).getXfer_Xmit_Status();
  267. String fileName = fnOldExceptionList.get(i).getXfer_File_Name();
  268. String updateTS = fnOldExceptionList.get(i).getUpdate_Ts();
  269. String yymm = fnOldExceptionList.get(i).getYYMM();
  270. String Remarks = "New Location";
  271.  
  272. theFnResultSet = new FN_Result_Set(spId, locId, status, fileName, updateTS, yymm, Remarks);
  273.  
  274. writeItemToDb(theFnResultSet);
  275.  
  276. }
  277. }
  278.  
  279. return result;
  280. }
  281.  
  282. /**
  283. * select the configuration selected FN from database
  284. *
  285. * @return
  286. */
  287. private int selectTheConfigurationFN() {
  288.  
  289.  
  290. int result = 0;
  291.  
  292. // create session factory
  293. SessionFactory factory = new Configuration().configure("hibcfg.eMonitor.xml").addAnnotatedClass(FN_FR_new_Location.class).buildSessionFactory();
  294.  
  295. // create a session
  296. Session session = factory.openSession();
  297.  
  298. try {
  299. String Query1 = "from FN_FR_new_Location";
  300.  
  301. // start a transaction
  302. session.beginTransaction();
  303.  
  304. // query current reported watch list
  305. fnFrNewLocationList = session.createQuery(Query1).list();
  306.  
  307. // commit transaction
  308. session.getTransaction().commit();
  309.  
  310. result = fnFrNewLocationList.size();
  311.  
  312. //System.out.println(fnOldExceptionList.toString());
  313.  
  314. for (int i = 0; i < result; i++) {
  315.  
  316. System.out.println("selectTheOldFnException ---->>>" + fnFrNewLocationList.get(i).toString());
  317. }
  318.  
  319. } catch (SessionException e) {
  320.  
  321. logger.fatal("Select fnFrNewLocationList : Caught an Exception" + e.getMessage());
  322.  
  323. } finally {
  324.  
  325. session.close();
  326. factory.close();
  327.  
  328. }
  329.  
  330. return result;
  331.  
  332. }
  333.  
  334. }
  335.  
  336. package com.portal.dmtt.model.exceptionMonitoring;
  337.  
  338. import javax.persistence.Column;
  339. import javax.persistence.Entity;
  340. import javax.persistence.Id;
  341. import javax.persistence.Table;
  342.  
  343. @Entity
  344. @Table(name = "fn_old_exception")
  345. public class FN_Old_Exception {
  346.  
  347. @Id
  348. @Column(name = "id")
  349. private int Id;
  350.  
  351. @Column(name = "Sp_Id")
  352. private String Sp_Id;
  353.  
  354. @Column(name = "Loc_Id")
  355. private String Loc_Id;
  356.  
  357. @Column(name = "Xfer_Xmit_Status")
  358. private String Xfer_Xmit_Status;
  359.  
  360. @Column(name = "Xfer_File_Name")
  361. private String Xfer_File_Name;
  362.  
  363. @Column(name = "Update_Ts")
  364. private String Update_Ts;
  365.  
  366. @Column(name = "YYMM")
  367. private String YYMM;
  368.  
  369. @Column(name = "Remarks")
  370. private String Remarks;
  371.  
  372. java.lang.ClassCastException: com.portal.dmtt.model.exceptionMonitoring.FN_Old_Exception cannot be cast to com.portal.dmtt.model.exceptionMonitoring.FN_Old_Exception
  373. at com.portal.dmtt.match.MatchingEngine.selectTheOldFnException(MatchingEngine.java:125)
  374. at com.portal.dmtt.match.MatchingEngine.execute(MatchingEngine.java:49)
  375. at com.portal.dmtt.match.MatchingEngine.finalExecution(MatchingEngine.java:37)
  376. at com.portal.dmtt.controller.ExcpMonitorController.runMatching(ExcpMonitorController.java:236)
  377. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  378. at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  379. at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  380. at java.lang.reflect.Method.invoke(Method.java:498)
  381. at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)
  382. at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)
  383. at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97)
  384. at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827)
  385. at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)
  386. at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)
  387. at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:967)
  388. at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:901)
  389. at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
  390. at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
  391. at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
  392. at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
  393. at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
  394. at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
  395. at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
  396. at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
  397. at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
  398. at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
  399. at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
  400. at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
  401. at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
  402. at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
  403. at org.springframework.web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFilter.java:108)
  404. at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
  405. at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
  406. at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
  407. at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:81)
  408. at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
  409. at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
  410. at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
  411. at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)
  412. at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
  413. at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
  414. at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
  415. at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
  416. at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
  417. at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
  418. at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
  419. at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
  420. at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
  421. at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)
  422. at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)
  423. at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
  424. at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868)
  425. at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1459)
  426. at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
  427. at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
  428. at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
  429. at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
  430. at java.lang.Thread.run(Thread.java:748)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement