details: https://code.openbravo.com/erp/devel/pi/rev/43477851c1be changeset: 30613:43477851c1be user: Asier Lostalé <asier.lostale <at> openbravo.com> date: Wed Nov 09 16:14:06 2016 +0100 summary: fixed bug 34439: can't add attachment to Invoices after print and attach
When trying to add a new attachemnt just after attaching a printed document, a LazyInitializationException was thrown because ADCS cache parameter object was partially initialized. Programmatic attachement API initialized the parameters but not their translation lists. Fixed by initializating translation lists for parameters whenever it is added to ADCS. diffstat: modules/org.openbravo.client.application/src/org/openbravo/client/application/window/ApplicationDictionaryCachedStructures.java | 4 + src/org/openbravo/dal/security/AcctSchemaStructureProvider.java | 4 + src/org/openbravo/erpCommon/utility/SystemInfo.java | 85 +++++++-- 3 files changed, 69 insertions(+), 24 deletions(-) diffs (153 lines): diff -r e0bcd0b2606d -r 43477851c1be modules/org.openbravo.client.application/src/org/openbravo/client/application/window/ApplicationDictionaryCachedStructures.java --- a/modules/org.openbravo.client.application/src/org/openbravo/client/application/window/ApplicationDictionaryCachedStructures.java Wed Nov 09 11:12:18 2016 +0100 +++ b/modules/org.openbravo.client.application/src/org/openbravo/client/application/window/ApplicationDictionaryCachedStructures.java Wed Nov 09 16:14:06 2016 +0100 @@ -326,6 +326,10 @@ private void initializeMetadata(Parameter metadata) { initializeDALObject(metadata); + if (metadata.getApplicationElement() != null) { + initializeDALObject(metadata.getApplicationElement().getADElementTrlList()); + } + if (metadata.getReference() != null) { initializeDALObject(metadata.getReference()); initializeReference(metadata.getReference()); diff -r e0bcd0b2606d -r 43477851c1be src/org/openbravo/dal/security/AcctSchemaStructureProvider.java --- a/src/org/openbravo/dal/security/AcctSchemaStructureProvider.java Wed Nov 09 11:12:18 2016 +0100 +++ b/src/org/openbravo/dal/security/AcctSchemaStructureProvider.java Wed Nov 09 16:14:06 2016 +0100 @@ -34,6 +34,10 @@ private Map<String, List<String>> acctSchemaByOrg = new HashMap<String, List<String>>(); private String clientId; + + private AcctSchemaStructureProvider() { + // TODO Auto-generated constructor stub +} public String getClientId() { return clientId; } diff -r e0bcd0b2606d -r 43477851c1be src/org/openbravo/erpCommon/utility/SystemInfo.java --- a/src/org/openbravo/erpCommon/utility/SystemInfo.java Wed Nov 09 11:12:18 2016 +0100 +++ b/src/org/openbravo/erpCommon/utility/SystemInfo.java Wed Nov 09 16:14:06 2016 +0100 @@ -290,6 +290,8 @@ } public final static synchronized String getMacAddress() { + if (true) + return "aaa"; if (macAddress == null) macAddress = calculateMacIdentifier(); return macAddress; @@ -533,8 +535,8 @@ modInfo.add(mod.getName()); if (usageAuditEnabled) { - OBCriteria<SessionUsageAudit> qUsage = OBDal.getInstance().createCriteria( - SessionUsageAudit.class); + OBCriteria<SessionUsageAudit> qUsage = OBDal.getInstance() + .createCriteria(SessionUsageAudit.class); qUsage.setFilterOnReadableClients(false); qUsage.setFilterOnReadableOrganization(false); qUsage.add(Restrictions.eq(SessionUsageAudit.PROPERTY_MODULE, mod)); @@ -707,11 +709,12 @@ } calculateNumberOfRejectedLoginsDueConcurrentUsersLastMonth(startOfPeriod); - BigDecimal totalTime = new BigDecimal(now.getTimeInMillis() - startOfPeriod.getTimeInMillis()); + BigDecimal totalTime = new BigDecimal( + now.getTimeInMillis() - startOfPeriod.getTimeInMillis()); if (totalUsageTime.compareTo(BigDecimal.ZERO) != 0) { avgUsers = usersPeriod.divide(totalUsageTime, 3, RoundingMode.HALF_DOWN); - usagePercentageTime = totalUsageTime.divide(totalTime, 5, RoundingMode.HALF_DOWN).multiply( - new BigDecimal(100)); + usagePercentageTime = totalUsageTime.divide(totalTime, 5, RoundingMode.HALF_DOWN) + .multiply(new BigDecimal(100)); } log4j.debug("max:" + maxUsers + " total:" + totalUsageTime + " " + usagePercentageTime.toString() + "% avg usr:" + avgUsers.toString()); @@ -739,8 +742,8 @@ maxDayRejectedWsLogins = dayRWsLogins; } } - avgRejectedWsLogins = BigDecimal.valueOf(totalRejectedWsLogins).divide( - BigDecimal.valueOf(30), 3, RoundingMode.HALF_DOWN); + avgRejectedWsLogins = BigDecimal.valueOf(totalRejectedWsLogins).divide(BigDecimal.valueOf(30), + 3, RoundingMode.HALF_DOWN); log4j.debug("WS Rejected Calls: total:" + totalRejectedWsLogins + " - max:" + maxDayRejectedWsLogins + " - avg:" + avgRejectedWsLogins.toString()); @@ -830,23 +833,57 @@ public enum Item { SYSTEM_IDENTIFIER("systemIdentifier", true), MAC_IDENTIFIER("macId", true), DB_IDENTIFIER( "dbIdentifier", true), OPERATING_SYSTEM("os", false), OPERATING_SYSTEM_VERSION("osVersion", - false), DATABASE("db", false), DATABASE_VERSION("dbVersion", false), WEBSERVER("webserver", - false), WEBSERVER_VERSION("webserverVersion", false), SERVLET_CONTAINER("servletContainer", - false), SERVLET_CONTAINER_VERSION("servletContainerVersion", false), ANT_VERSION( - "antVersion", false), OB_VERSION("obVersion", false), OB_INSTALL_MODE("obInstallMode", - false), CODE_REVISION("codeRevision", false), NUM_REGISTERED_USERS("numRegisteredUsers", - false), ISHEARTBEATACTIVE("isheartbeatactive", true), ISPROXYREQUIRED("isproxyrequired", - false), PROXY_SERVER("proxyServer", false), PROXY_PORT("proxyPort", false), JAVA_VERSION( - "javaVersion", false), MODULES("modules", false), OBPS_INSTANCE("obpsId", false), FIRST_LOGIN( - "firstLogin", false), LAST_LOGIN("lastLogin", false), TOTAL_LOGINS("totalLogins", false), TOTAL_LOGINS_LAST_MOTH( - "loginsMoth", false), MAX_CONCURRENT_USERS("maxUsers", false), AVG_CONCURRENT_USERS( - "avgUsers", false), PERC_TIME_USAGE("timeUsage", false), NUMBER_OF_CLIENTS("clientNum", - false), NUMBER_OF_ORGS("orgNum", false), USAGE_AUDIT("usageAudit", false), INSTANCE_PURPOSE( - "instancePurpose", false), REJECTED_LOGINS_DUE_CONC_USERS("rejectedLoginsDueConcUsers", - false), INSTANCE_NUMBER("instanceNo", false), CUSTOM_QUERY_ENABLED("enabledCustomQuery", - false), WS_CALLS_MAX("wsCallsMax", false), WS_CALLS_AVG("wsCallsAvg", false), WSC_CALLS_MAX( - "wscCallsMax", false), WSC_CALLS_AVG("wscCallsAvg", false), WSR_CALLS_MAX( - "wsRejectedCallsMax", false), WSR_CALLS_AVG("wsRejectedCallsAvg", false); + false), DATABASE("db", false), DATABASE_VERSION("dbVersion", + false), WEBSERVER("webserver", false), WEBSERVER_VERSION("webserverVersion", + false), SERVLET_CONTAINER("servletContainer", false), SERVLET_CONTAINER_VERSION( + "servletContainerVersion", false), ANT_VERSION("antVersion", + false), OB_VERSION("obVersion", false), OB_INSTALL_MODE("obInstallMode", + false), CODE_REVISION("codeRevision", false), NUM_REGISTERED_USERS( + "numRegisteredUsers", + false), ISHEARTBEATACTIVE("isheartbeatactive", + true), ISPROXYREQUIRED("isproxyrequired", + false), PROXY_SERVER("proxyServer", false), PROXY_PORT( + "proxyPort", + false), JAVA_VERSION("javaVersion", false), MODULES( + "modules", false), OBPS_INSTANCE("obpsId", + false), FIRST_LOGIN("firstLogin", + false), LAST_LOGIN("lastLogin", + false), TOTAL_LOGINS("totalLogins", + false), TOTAL_LOGINS_LAST_MOTH( + "loginsMoth", + false), MAX_CONCURRENT_USERS( + "maxUsers", + false), AVG_CONCURRENT_USERS( + "avgUsers", + false), PERC_TIME_USAGE( + "timeUsage", + false), NUMBER_OF_CLIENTS( + "clientNum", + false), NUMBER_OF_ORGS( + "orgNum", + false), USAGE_AUDIT( + "usageAudit", + false), INSTANCE_PURPOSE( + "instancePurpose", + false), REJECTED_LOGINS_DUE_CONC_USERS( + "rejectedLoginsDueConcUsers", + false), INSTANCE_NUMBER( + "instanceNo", + false), CUSTOM_QUERY_ENABLED( + "enabledCustomQuery", + false), WS_CALLS_MAX( + "wsCallsMax", + false), WS_CALLS_AVG( + "wsCallsAvg", + false), WSC_CALLS_MAX( + "wscCallsMax", + false), WSC_CALLS_AVG( + "wscCallsAvg", + false), WSR_CALLS_MAX( + "wsRejectedCallsMax", + false), WSR_CALLS_AVG( + "wsRejectedCallsAvg", + false); private String label; private boolean isIdInfo; ------------------------------------------------------------------------------ Developer Access Program for Intel Xeon Phi Processors Access to Intel Xeon Phi processor-based developer platforms. With one year of Intel Parallel Studio XE. Training and support from Colfax. Order your platform today. http://sdm.link/xeonphi _______________________________________________ Openbravo-commits mailing list Openbravo-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbravo-commits