Sorry to keep you bugging Romain When we deploy it in another Linux environment similarly, we again got the same issue. Here is the exception.
java.lang.IllegalStateException: No tx on thread Root analysis: java.lang.IllegalStateException: No tx on thread at com.cubic.cts.struts.faretable.ManageFaretableVersionsAction.cloneFareTable(ManageFaretableVersionsAction.java:195) at com.cubic.cts.struts.faretable.ManageFaretableVersionsAction.process(ManageFaretableVersionsAction.java:91) at com.cubic.cts.struts.faretable.BaseFareTableAction.process(BaseFareTableAction.java:30) at com.cubic.cts.struts.BaseAction.execute(BaseAction.java:162) at com.cubic.cts.struts.NCSActionServlet.access$101(NCSActionServlet.java:32) at com.cubic.cts.struts.NCSActionServlet$1.run(NCSActionServlet.java:101) StackTrace: java.lang.IllegalStateException: No tx on thread at org.apache.geronimo.transaction.manager.TransactionManagerImpl.getActiveTransactionImpl(TransactionManagerImpl.java:201) at org.apache.geronimo.transaction.manager.TransactionManagerImpl.getResource(TransactionManagerImpl.java:194) at org.apache.openejb.core.transaction.JtaTransactionPolicy.getResource(JtaTransactionPolicy.java:112) at org.apache.openejb.core.transaction.EjbTransactionUtil.afterInvoke(EjbTransactionUtil.java:80) at org.apache.openejb.core.stateless.StatelessContainer._invoke(StatelessContainer.java:255) at org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:203) at org.apache.openejb.core.ivm.EjbObjectProxyHandler.synchronizedBusinessMethod(EjbObjectProxyHandler.java:265) at org.apache.openejb.core.ivm.EjbObjectProxyHandler.businessMethod(EjbObjectProxyHandler.java:260) at org.apache.openejb.core.ivm.EjbObjectProxyHandler._invoke(EjbObjectProxyHandler.java:89) at org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(BaseEjbProxyHandler.java:347) at com.sun.proxy.$Proxy348.getExtendedFareTable(Unknown Source) at com.cubic.cts.struts.faretable.ManageFaretableVersionsAction.cloneFareTable(ManageFaretableVersionsAction.java:195) at com.cubic.cts.struts.faretable.ManageFaretableVersionsAction.process(ManageFaretableVersionsAction.java:91) at com.cubic.cts.struts.faretable.BaseFareTableAction.process(BaseFareTableAction.java:30) at com.cubic.cts.struts.BaseAction.execute(BaseAction.java:162) We did exactly the same. But, one difference that we see during startup is, when we get the issue we are getting below message repeated number of times. In windows, we don't see " Enhance - Creating subclass for" message, but we see " Otherwise annotate them with @Transient." only once. I know it is very difficult to guess what is going on, but any suggestion from you will help us a lot. This is really frustrating us. 270 [WARN ] localhost-startStop-1 Enhance - Creating subclass for "[class openejb.com.cubic.cts.faretable.entity.FareLevelModeCMP, class openejb.com.cubic.cts.faretable.entity.TransferChargeCMP, class openejb.com.cubic.cts.faretable.entity.TransferRuleCMP, class openejb.com.cubic.cts.faretable.entity.ProcessingControlCMP, class openejb.com.cubic.cts.faretable.entity.TransferControlsCMP, class openejb.com.cubic.cts.faretable.entity.UseChargeCMP, class openejb.com.cubic.cts.prepaidbenefits.entity.CustomerBenefitDefinitionCMP, class openejb.com.cubic.cts.operationparams.sysconfig.entity.TransitFacility, class openejb.com.cubic.cts.faretable.entity.ValidOperatorCMP, class openejb.com.cubic.cts.operationparams.sysconfig.entity.Device, class openejb.com.cubic.cts.operationparams.entity.OpPublishConfigSet, class openejb.com.cubic.cts.faretable.entity.TravelSegmentCMP, class openejb.com.cubic.cts.faretable.entity.FareTableCMP, class openejb.com.cubic.cts.faretable.entity.TransferChargeP2pCMP, class openejb.com.cubic.cts.faretable.entity.UseChargeP2pCMP, class openejb.com.cubic.cts.faretable.entity.PurchaseChargeCMP, class openejb.com.cubic.cts.env.settings.entity.NextfareSetting, class openejb.com.cubic.cts.transitappmgmt.entity.PhoneCMP, class openejb.com.cubic.cts.faretable.entity.TransferFromStopPointCMP, class openejb.com.cubic.cts.operationparams.entity.OpUpdateIndicator, class openejb.com.cubic.cts.operationparams.sysconfig.entity.ZonesCMP, class openejb.com.cubic.cts.operationparams.entity.OpFacilityManifest, class openejb.com.cubic.cts.faretable.entity.TransactionControlCMP, class openejb.com.cubic.cts.faretable.entity.FareInstrumentCMP, class openejb.com.cubic.cts.faretable.entity.FareLevelCMP, class openejb.com.cubic.cts.faretable.entity.FareInstrumentGroupCMP, class openejb.com.cubic.cts.faretable.entity.PurchaseChargeZoneDistanceCMP, class openejb.com.cubic.cts.faretable.entity.FareInstrumentCategoryCMP, class openejb.com.cubic.cts.operationparams.entity.OpCsSubset, class openejb.com.cubic.cts.faretable.entity.TransferToLineRouteCMP, class openejb.com.cubic.cts.faretable.entity.LampLitCMP, class openejb.com.cubic.cts.operationparams.entity.OperationalParamsType, class openejb.com.cubic.cts.operationparams.entity.OpNTCIPMessage, class openejb.com.cubic.cts.faretable.entity.MonetaryInstTypeCMP, class openejb.com.cubic.cts.operationparams.entity.OpAssignment, class openejb.com.cubic.cts.faretable.entity.PurchaseControlsCMP, class openejb.com.cubic.cts.faretable.entity.BypassFareActionCMP, class openejb.com.cubic.cts.transitappmgmt.entity.FareMediaInventoryNotesCMP, class openejb.com.cubic.cts.faretable.entity.TransferUpgradeCMP, class openejb.com.cubic.cts.faretable.entity.TimePeriodCMP, class openejb.com.cubic.cts.faretable.entity.TransferFareLevelCMP, class openejb.com.cubic.cts.faretable.entity.FareGroupCMP, class openejb.com.cubic.cts.bestfare.entity.Bestfare, class openejb.com.cubic.cts.operationparams.sysconfig.entity.DisplayResourceCMP, class openejb.com.cubic.cts.faretable.entity.ServiceTypeXTimeCMP, class openejb.com.cubic.cts.faretable.entity.ServiceTypeCMP, class openejb.com.cubic.cts.faretable.entity.FareInstrumentTypeCMP, class openejb.com.cubic.cts.tl.rule.DeviceXMLRepository, class openejb.com.cubic.cts.transitappmgmt.entity.AddressCMP, class openejb.com.cubic.cts.faretable.entity.FaretableXFareInstCMP, class openejb.com.cubic.cts.faretable.entity.TransferToStopPointCMP, class openejb.com.cubic.cts.bestfare.entity.BestfarePricePoints, class openejb.com.cubic.cts.faretable.entity.TransferConditionCMP, class openejb.com.cubic.cts.faretable.entity.FareActionCMP, class openejb.com.cubic.cts.faretable.entity.KeyOperationCMP, class openejb.com.cubic.cts.faretable.entity.FareActionCodeCMP, class openejb.com.cubic.cts.prepaidbenefits.entity.MemberNotesCMP, class openejb.com.cubic.cts.faretable.entity.BonusSchemeCMP, class openejb.com.cubic.cts.operationparams.entity.OpPublishEvent, class openejb.com.cubic.cts.operationparams.sysconfig.entity.SectorCMP, class openejb.com.cubic.cts.faretable.entity.UseControlsCMP, class openejb.com.cubic.cts.operationparams.entity.OpConfigSet, class openejb.com.cubic.cts.transitappmgmt.entity.RiderClassificationCMP, class openejb.com.cubic.cts.security.ejb.entity.GlobalAccessParamCMP, class openejb.com.cubic.cts.faretable.entity.FareModeCMP, class openejb.com.cubic.cts.prepaidbenefits.entity.PpbMemberInfoVCMP, class openejb.com.cubic.cts.operationparams.entity.OpPublishManifest, class openejb.com.cubic.cts.faretable.entity.FareEquipmentKeyCMP, class openejb.com.cubic.cts.operationparams.entity.DefaultPublishMessage, class openejb.com.cubic.cts.operationparams.entity.OpDeviceNtcipManifest, class openejb.com.cubic.cts.faretable.entity.DepositCMP, class openejb.com.cubic.cts.faremedia.entity.FareMediaStatusHistoryCMP, class openejb.com.cubic.cts.faretable.entity.UseChargeZoneDistanceCMP, class openejb.com.cubic.cts.faretable.entity.TimeCategoryCMP, class openejb.com.cubic.cts.faretable.entity.TransferChargeZoneDistanceCMP, class openejb.com.cubic.cts.faretable.entity.PurchaseControlValueSelectCMP, class openejb.com.cubic.cts.faretable.entity.PurchaseBonusCMP, class openejb.com.cubic.cts.faretable.entity.DayTypeCMP, class openejb.com.cubic.cts.faretable.entity.ValidAuthorityCMP, class openejb.com.cubic.cts.operationparams.sysconfig.entity.DeviceControlGroup, class openejb.com.cubic.cts.faretable.entity.UseRestrictionCMP, class openejb.com.cubic.cts.faretable.entity.TimePriorityCMP, class openejb.com.cubic.cts.operationparams.entity.OpPublishSetXConfig, class openejb.com.cubic.cts.operationparams.entity.OpDeviceNtcipMessage, class openejb.com.cubic.cts.faretable.entity.PassTypeCMP, class openejb.com.cubic.cts.hotlist.entity.MagneticHotlistPending, class openejb.com.cubic.cts.faretable.entity.TransferCodeCMP, class openejb.com.cubic.cts.operationparams.sysconfig.entity.EventCMP, class openejb.com.cubic.cts.operationparams.entity.OpConfigEntry, class openejb.com.cubic.cts.faretable.entity.TicketTypeCMP, class openejb.com.cubic.cts.operationparams.entity.OperationalParamsInstance, class openejb.com.cubic.cts.operationparams.sysconfig.entity.ScOperator, class openejb.com.cubic.cts.faretable.entity.NormalFareActionCMP, class openejb.com.cubic.cts.operationparams.entity.OpExtDownloadData, class openejb.com.cubic.cts.faretable.entity.TransferFromLineRouteCMP, class openejb.com.cubic.cts.faretable.entity.PurchaseChargeP2pCMP, class openejb.com.cubic.cts.bus.entity.Bus, class openejb.com.cubic.cts.faretable.entity.TransferUpgradeMapCMP, class openejb.com.cubic.cts.operationparams.entity.OpPubSetXSoftwareMsg, class openejb.com.cubic.cts.hotlist.entity.FareMediaHotlistPending, class openejb.com.cubic.cts.operationparams.entity.OpDeviceHardwareManifest]". This means that your application will be less efficient and will consume more memory than it would if you ran the OpenJPA enhancer. Additionally, lazy loading will not be available for one-to-one and many-to-one persistent attributes in types using field access; they will be loaded eagerly instead. 2017-02-24T05:10:17,348 [WARN ] localhost-startStop-1 Runtime - Fields "openejb.com.cubic.cts.operationparams.entity.OpPublishManifest.opNTCIPMessages" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient. 2017-02-24T05:10:17,377 [WARN ] localhost-startStop-1 Runtime - Fields "openejb.com.cubic.cts.operationparams.entity.OpNTCIPMessage.OpPublishManifest_opNTCIPMessages" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient. 2017-02-24T05:10:17,398 [WARN ] localhost-startStop-1 Runtime - Fields "openejb.com.cubic.cts.operationparams.entity.OpPublishConfigSet.opPublishSetXConfigs" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient. 2017-02-24T05:10:17,405 [WARN ] localhost-startStop-1 Runtime - Fields "openejb.com.cubic.cts.operationparams.entity.OpPublishEvent.opAssignments" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient. 2017-02-24T05:10:17,422 [WARN ] localhost-startStop-1 Runtime - Fields "openejb.com.cubic.cts.operationparams.entity.OpConfigSet.opConfigEntries" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient. 2017-02-24T05:10:17,422 [WARN ] localhost-startStop-1 Runtime - Fields "openejb.com.cubic.cts.operationparams.entity.OpConfigSet.opCsSubsets" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient. 2017-02-24T05:10:17,427 [WARN ] localhost-startStop-1 Runtime - Fields "openejb.com.cubic.cts.operationparams.entity.OperationalParamsInstance.OpConfigSet_opConfigEntries" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient. 2017-02-24T05:10:17,438 [WARN ] localhost-startStop-1 Runtime - Fields "openejb.com.cubic.cts.operationparams.entity.OpDeviceNtcipManifest.opDeviceNtcipMessages" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient. 2017-02-24T05:10:17,449 [WARN ] localhost-startStop-1 Runtime - Fields "openejb.com.cubic.cts.bestfare.entity.Bestfare.bestfarePricePoints" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient. 2017-02-24T05:10:20,167 [WARN ] localhost-startStop-1 Runtime - Fields "openejb.com.cubic.cts.operationparams.entity.OpPublishManifest.opNTCIPMessages" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient. 2017-02-24T05:10:20,169 [WARN ] localhost-startStop-1 Runtime - Fields "openejb.com.cubic.cts.operationparams.entity.OpNTCIPMessage.OpPublishManifest_opNTCIPMessages" are not a default persistent type, and do not have any annotations indicating their persistence strategy. They will be treated as non-persistent. If you intended for these fields to be persistent, be sure to annotate them appropriately. Otherwise annotate them with @Transient. -- View this message in context: http://tomee-openejb.979440.n4.nabble.com/CMP2-enitity-get-is-making-update-query-in-Linux-environment-tp4681136p4681161.html Sent from the TomEE Users mailing list archive at Nabble.com.