svn commit: r1631452 [2/2] - in /ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23: ./ applications/accounting/src/org/ofbiz/accounting/finaccount/ applications/accounting/src/org/ofbiz/accounting/invoice/ applications/accounting/src/org/ofbiz/a...

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r1631452 [2/2] - in /ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23: ./ applications/accounting/src/org/ofbiz/accounting/finaccount/ applications/accounting/src/org/ofbiz/accounting/invoice/ applications/accounting/src/org/ofbiz/a...

jleroux@apache.org
Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/thirdparty/valuelink/ValueLinkServices.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/thirdparty/valuelink/ValueLinkServices.java?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/thirdparty/valuelink/ValueLinkServices.java (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/thirdparty/valuelink/ValueLinkServices.java Mon Oct 13 16:02:22 2014
@@ -33,10 +33,10 @@ import org.ofbiz.base.util.UtilDateTime;
 import org.ofbiz.base.util.UtilMisc;
 import org.ofbiz.base.util.UtilProperties;
 import org.ofbiz.base.util.UtilValidate;
-import org.ofbiz.base.util.collections.ResourceBundleMapWrapper;
 import org.ofbiz.entity.Delegator;
 import org.ofbiz.entity.GenericEntityException;
 import org.ofbiz.entity.GenericValue;
+import org.ofbiz.entity.util.EntityQuery;
 import org.ofbiz.entity.util.EntityUtil;
 import org.ofbiz.entity.util.EntityUtilProperties;
 import org.ofbiz.order.order.OrderReadHelper;
@@ -1099,11 +1099,11 @@ public class ValueLinkServices {
         // get the productFeature type TYPE (VL promo code)
         GenericValue typeFeature = null;
         try {
-            Map<String, Object> fields = UtilMisc.toMap("productId", product.get("productId"), "productFeatureTypeId", "TYPE");
-            List<String> order = UtilMisc.toList("-fromDate");
-            List<GenericValue> featureAppls = delegator.findByAnd("ProductFeatureAndAppl", fields, order, true);
-            featureAppls = EntityUtil.filterByDate(featureAppls);
-            typeFeature = EntityUtil.getFirst(featureAppls);
+            typeFeature = EntityQuery.use(delegator)
+                    .from("ProductFeatureAndAppl")
+                    .where("productId", product.get("productId"),
+                            "productFeatureTypeId", "TYPE")
+                    .orderBy("-fromDate").filterByDate().queryFirst();
         } catch (GenericEntityException e) {
             Debug.logError(e, module);
             return ServiceUtil.returnError(UtilProperties.getMessage(resource,
@@ -1128,12 +1128,11 @@ public class ValueLinkServices {
         // get the survey response
         GenericValue surveyResponse = null;
         try {
-            Map<String, Object> fields = UtilMisc.<String, Object>toMap("orderId", orderId,
-                    "orderItemSeqId", orderItem.get("orderItemSeqId"), "surveyId", surveyId);
-            List<String> order = UtilMisc.toList("-responseDate");
-            List<GenericValue> responses = delegator.findByAnd("SurveyResponse", fields, order, false);
-            // there should be only one
-            surveyResponse = EntityUtil.getFirst(responses);
+            surveyResponse = EntityQuery.use(delegator).from("SurveyResponse")
+                    .where("orderId", orderId,
+                            "orderItemSeqId", orderItem.get("orderItemSeqId"),
+                            "surveyId", surveyId)
+                    .queryFirst();
         } catch (GenericEntityException e) {
             Debug.logError(e, module);
             return ServiceUtil.returnError(UtilProperties.getMessage(resourceError,
@@ -1254,7 +1253,7 @@ public class ValueLinkServices {
             GenericValue productStoreEmail = null;
             String emailType = "PRDS_GC_PURCHASE";
             try {
-                productStoreEmail = delegator.findOne("ProductStoreEmailSetting", UtilMisc.toMap("productStoreId", productStoreId, "emailType", emailType), false);
+                productStoreEmail = EntityQuery.use(delegator).from("ProductStoreEmailSetting").where("productStoreId", productStoreId, "emailType", emailType).queryOne();
             } catch (GenericEntityException e) {
                 Debug.logError(e, "Unable to get product store email setting for gift card purchase", module);
             }
@@ -1374,12 +1373,11 @@ public class ValueLinkServices {
         // get the survey response
         GenericValue surveyResponse = null;
         try {
-            Map<String, Object> fields = UtilMisc.toMap("orderId", orderId,
-                    "orderItemSeqId", orderItem.get("orderItemSeqId"), "surveyId", surveyId);
-            List<String> order = UtilMisc.toList("-responseDate");
-            List<GenericValue> responses = delegator.findByAnd("SurveyResponse", fields, order, false);
-            // there should be only one
-            surveyResponse = EntityUtil.getFirst(responses);
+            surveyResponse = EntityQuery.use(delegator).from("SurveyResponse")
+                    .where("orderId", orderId,
+                            "orderItemSeqId", orderItem.get("orderItemSeqId"),
+                            "surveyId", surveyId).orderBy("-responseDate")
+                    .queryFirst();
         } catch (GenericEntityException e) {
             Debug.logError(e, module);
             return ServiceUtil.returnError(UtilProperties.getMessage(resourceError,
@@ -1502,7 +1500,7 @@ public class ValueLinkServices {
         GenericValue productStoreEmail = null;
         String emailType = "PRDS_GC_RELOAD";
         try {
-            productStoreEmail = delegator.findOne("ProductStoreEmailSetting", UtilMisc.toMap("productStoreId", productStoreId, "emailType", emailType), false);
+            productStoreEmail = EntityQuery.use(delegator).from("ProductStoreEmailSetting").where("productStoreId", productStoreId, "emailType", emailType).queryOne();
         } catch (GenericEntityException e) {
             Debug.logError(e, "Unable to get product store email setting for gift card purchase", module);
         }

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/thirdparty/verisign/PayflowPro.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/thirdparty/verisign/PayflowPro.java?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/thirdparty/verisign/PayflowPro.java (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/thirdparty/verisign/PayflowPro.java Mon Oct 13 16:02:22 2014
@@ -921,7 +921,7 @@ public class PayflowPro {
         String returnValue = "";
         if (UtilValidate.isNotEmpty(paymentGatewayConfigId)) {
             try {
-                GenericValue payflowPro = delegator.findOne("PaymentGatewayPayflowPro", UtilMisc.toMap("paymentGatewayConfigId", paymentGatewayConfigId), false);
+                GenericValue payflowPro = EntityQuery.use(delegator).from("PaymentGatewayPayflowPro").where("paymentGatewayConfigId", paymentGatewayConfigId).queryOne();
                 if (UtilValidate.isNotEmpty(payflowPro)) {
                     Object payflowProField = payflowPro.get(paymentGatewayConfigParameterName);
                     if (payflowProField != null) {

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/thirdparty/worldpay/WorldPayEvents.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/thirdparty/worldpay/WorldPayEvents.java?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/thirdparty/worldpay/WorldPayEvents.java (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/thirdparty/worldpay/WorldPayEvents.java Mon Oct 13 16:02:22 2014
@@ -20,12 +20,10 @@ package org.ofbiz.accounting.thirdparty.
 
 import java.io.IOException;
 import java.math.BigDecimal;
-import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.Locale;
 import java.util.Map;
-import java.util.Set;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -44,7 +42,7 @@ import org.ofbiz.entity.GenericEntityExc
 import org.ofbiz.entity.GenericValue;
 import org.ofbiz.entity.transaction.GenericTransactionException;
 import org.ofbiz.entity.transaction.TransactionUtil;
-import org.ofbiz.entity.util.EntityUtil;
+import org.ofbiz.entity.util.EntityQuery;
 import org.ofbiz.order.order.OrderChangeHelper;
 import org.ofbiz.product.store.ProductStoreWorker;
 import org.ofbiz.service.GenericServiceException;
@@ -69,7 +67,7 @@ public class WorldPayEvents {
         // get the order header
         GenericValue orderHeader = null;
         try {
-            orderHeader = delegator.findOne("OrderHeader", UtilMisc.toMap("orderId", orderId), false);
+            orderHeader = EntityQuery.use(delegator).from("OrderHeader").where("orderId", orderId).queryOne();
         } catch (GenericEntityException e) {
             Debug.logError(e, "Cannot get the order header for order: " + orderId, module);
             request.setAttribute("_ERROR_MESSAGE_", UtilProperties.getMessage(resourceErr, "worldPayEvents.problemsGettingOrderHeader", locale));
@@ -108,16 +106,15 @@ public class WorldPayEvents {
         // get the contact address to pass over
         GenericValue contactAddress = null;
         GenericValue contactAddressShip = null;
-        List<GenericValue> addresses = null;
-        List<GenericValue> shippingAddresses = null;
+        GenericValue addressOcm = null;
+        GenericValue shippingAddress = null;
         try {
-            addresses = delegator.findByAnd("OrderContactMech", UtilMisc.toMap("orderId", orderId, "contactMechPurposeTypeId", "BILLING_LOCATION"), null, false);
-            shippingAddresses = delegator.findByAnd("OrderContactMech", UtilMisc.toMap("orderId", orderId, "contactMechPurposeTypeId", "SHIPPING_LOCATION"), null, false);
-            if (addresses.size() == 0) {
-                addresses = shippingAddresses;
+            addressOcm = EntityQuery.use(delegator).from("OrderContactMech").where("orderId", orderId, "contactMechPurposeTypeId", "BILLING_LOCATION").queryFirst();
+            shippingAddress = EntityQuery.use(delegator).from("OrderContactMech").where("orderId", orderId, "contactMechPurposeTypeId", "SHIPPING_LOCATION").queryFirst();
+            if (addressOcm == null) {
+                addressOcm = shippingAddress;
             }
-            GenericValue contactMech = EntityUtil.getFirst(addresses);
-            contactAddress = delegator.findOne("PostalAddress", UtilMisc.toMap("contactMechId", contactMech.getString("contactMechId")), false);
+            contactAddress = EntityQuery.use(delegator).from("PostalAddress").where("contactMechId", addressOcm.getString("contactMechId")).queryOne();
         } catch (GenericEntityException e) {
             Debug.logWarning(e, "Problems getting order contact information", module);
         }
@@ -175,9 +172,8 @@ public class WorldPayEvents {
         String emailAddress = null;
         GenericValue emailContact = null;
         try {
-            List<GenericValue> emails = delegator.findByAnd("OrderContactMech", UtilMisc.toMap("orderId", orderId, "contactMechPurposeTypeId", "ORDER_EMAIL"), null, false);
-            GenericValue firstEmail = EntityUtil.getFirst(emails);
-            emailContact = delegator.findOne("ContactMech", UtilMisc.toMap("contactMechId", firstEmail.getString("contactMechId")), false);
+            GenericValue emailOcm = EntityQuery.use(delegator).from("OrderContactMech").where("orderId", orderId, "contactMechPurposeTypeId", "ORDER_EMAIL").queryFirst();
+            emailContact = emailOcm.getRelatedOne("ContactMech", false);
             emailAddress = emailContact.getString("infoString");
         } catch (GenericEntityException e) {
             Debug.logWarning(e, "Problems getting order email address", module);
@@ -186,10 +182,9 @@ public class WorldPayEvents {
         StringBuilder shipAddress = new StringBuilder();
         String shipPostalCode = "";
         String shipName = "";
-        if (shippingAddresses != null) {
+        if (shippingAddress != null) {
             try {
-                GenericValue contactMechShip = EntityUtil.getFirst(shippingAddresses);
-                contactAddressShip = delegator.findOne("PostalAddress", UtilMisc.toMap("contactMechId", contactMechShip.getString("contactMechId")), false);
+                contactAddressShip = EntityQuery.use(delegator).from("PostalAddress").where("contactMechId", shippingAddress.get("contactMechId")).queryOne();
                 if (UtilValidate.isNotEmpty(contactAddressShip)) {
                     if (UtilValidate.isNotEmpty(contactAddressShip.getString("attnName"))) {
                         shipName = contactAddressShip.getString("attnName");
@@ -324,7 +319,7 @@ public class WorldPayEvents {
         if (userLogin == null) {
             String userLoginId = "system";
             try {
-                userLogin = delegator.findOne("UserLogin", UtilMisc.toMap("userLoginId", userLoginId), false);
+                userLogin = EntityQuery.use(delegator).from("UserLogin").where("userLoginId", userLoginId).queryOne();
             } catch (GenericEntityException e) {
                 Debug.logError(e, "Cannot get UserLogin for: " + userLoginId + "; cannot continue", module);
                 request.setAttribute("_ERROR_MESSAGE_", UtilProperties.getMessage(resourceErr, "worldPayEvents.problemsGettingAuthenticationUser", locale));
@@ -335,7 +330,7 @@ public class WorldPayEvents {
         GenericValue orderHeader = null;
         if (UtilValidate.isNotEmpty(orderId)) {
             try {
-                orderHeader = delegator.findOne("OrderHeader", UtilMisc.toMap("orderId", orderId), false);
+                orderHeader = EntityQuery.use(delegator).from("OrderHeader").where("orderId", orderId).queryOne();
             } catch (GenericEntityException e) {
                 Debug.logError(e, "Cannot get the order header for order: " + orderId, module);
                 request.setAttribute("_ERROR_MESSAGE_", UtilProperties.getMessage(resourceErr, "worldPayEvents.problemsGettingOrderHeader", locale));
@@ -410,8 +405,8 @@ public class WorldPayEvents {
         Debug.logVerbose("Setting payment preferences..", module);
         List<GenericValue> paymentPrefs = null;
         try {
-            Map<String, String> paymentFields = UtilMisc.toMap("orderId", orderId, "statusId", "PAYMENT_NOT_RECEIVED");
-            paymentPrefs = delegator.findByAnd("OrderPaymentPreference", paymentFields, null, false);
+            paymentPrefs = EntityQuery.use(delegator).from("OrderPaymentPreference")
+                    .where("orderId", orderId, "statusId", "PAYMENT_NOT_RECEIVED").queryList();
         } catch (GenericEntityException e) {
             Debug.logError(e, "Cannot get payment preferences for order #" + orderId, module);
             return false;
@@ -501,7 +496,7 @@ public class WorldPayEvents {
         String returnValue = "";
         if (UtilValidate.isNotEmpty(paymentGatewayConfigId)) {
             try {
-                GenericValue worldPay = delegator.findOne("PaymentGatewayWorldPay", UtilMisc.toMap("paymentGatewayConfigId", paymentGatewayConfigId), false);
+                GenericValue worldPay = EntityQuery.use(delegator).from("PaymentGatewayWorldPay").where("paymentGatewayConfigId", paymentGatewayConfigId).queryOne();
                 if (UtilValidate.isNotEmpty(worldPay)) {
                     Object worldPayField = worldPay.get(paymentGatewayConfigParameterName);
                     if (worldPayField != null) {

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/util/UtilAccounting.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/util/UtilAccounting.java?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/util/UtilAccounting.java (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/accounting/src/org/ofbiz/accounting/util/UtilAccounting.java Mon Oct 13 16:02:22 2014
@@ -30,6 +30,7 @@ import org.ofbiz.base.util.UtilMisc;
 import org.ofbiz.entity.Delegator;
 import org.ofbiz.entity.GenericEntityException;
 import org.ofbiz.entity.GenericValue;
+import org.ofbiz.entity.util.EntityQuery;
 
 
 public class UtilAccounting {
@@ -55,8 +56,9 @@ public class UtilAccounting {
         GenericValue account = null;
         try {
             // first try to find the account in ProductGlAccount
-            account = delegator.findOne("ProductGlAccount",
-                    UtilMisc.toMap("productId", productId, "glAccountTypeId", glAccountTypeId, "organizationPartyId", organizationPartyId), true);
+            account = EntityQuery.use(delegator).from("ProductGlAccount")
+                    .where("productId", productId, "glAccountTypeId", glAccountTypeId, "organizationPartyId", organizationPartyId)
+                    .cache().queryOne();
         } catch (GenericEntityException e) {
             throw new AccountingException("Failed to find a ProductGLAccount for productId [" + productId + "], organization [" + organizationPartyId + "], and productGlAccountTypeId [" + glAccountTypeId + "].", e);
         }
@@ -64,7 +66,7 @@ public class UtilAccounting {
         // otherwise try the default accounts
         if (account == null) {
             try {
-                account = delegator.findOne("GlAccountTypeDefault", UtilMisc.toMap("glAccountTypeId", glAccountTypeId, "organizationPartyId", organizationPartyId), true);
+                account = EntityQuery.use(delegator).from("GlAccountTypeDefault").where("glAccountTypeId", glAccountTypeId, "organizationPartyId", organizationPartyId).cache().queryOne();
             } catch (GenericEntityException e) {
                 throw new AccountingException("Failed to find a GlAccountTypeDefault for glAccountTypeId [" + glAccountTypeId + "] and organizationPartyId [" + organizationPartyId+ "].", e);
             }

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/content/src/org/ofbiz/content/content/ContentUrlFilter.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/content/src/org/ofbiz/content/content/ContentUrlFilter.java?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/content/src/org/ofbiz/content/content/ContentUrlFilter.java (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/content/src/org/ofbiz/content/content/ContentUrlFilter.java Mon Oct 13 16:02:22 2014
@@ -151,7 +151,7 @@ public class ContentUrlFilter extends Co
         }
         StringBuilder urlBuilder = new StringBuilder();
         urlBuilder.append(request.getSession().getServletContext().getContextPath());
-        if (urlBuilder.charAt(urlBuilder.length() - 1) != '/') {
+        if (urlBuilder.length() == 0 || urlBuilder.charAt(urlBuilder.length() - 1) != '/') {
             urlBuilder.append("/");
         }
         urlBuilder.append(CONTROL_MOUNT_POINT);

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/product/config/ProductUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/product/config/ProductUiLabels.xml?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/product/config/ProductUiLabels.xml (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/product/config/ProductUiLabels.xml Mon Oct 13 16:02:22 2014
@@ -2569,7 +2569,6 @@
         <value xml:lang="th">USPS ต้องการที่อยู่ ถ้าไม่ รหัสไปรษณีย์ หรือ เมือง และ รัฐ</value>
         <value xml:lang="zh">USPS地址验证需要zip5或者省和市</value>
         <value xml:lang="zh_TW">USPS位址驗證需要zip5或者省和市</value>
-        <value xml:lang="zh_TW">USPS位址驗證需要zip5或者省和市</value>
     </property>
     <property key="FacilityShipmentUspsConnectionProblem">
         <value xml:lang="en">Problem connecting with USPS server: ${errorString}</value>
@@ -3016,7 +3015,6 @@
         <value xml:lang="th">กรุณารอจนกระทั่งอ่านรายการสั่งซื้อทั้งหมดก่อนการขนส่งสินค้า</value>
         <value xml:lang="vi">Bạn hãy đợi cho đến khi Toàn bộ đặt hàng sẵn sàng để chuyển.</value>
         <value xml:lang="zh">请等待整个订单都有货时再送货。</value>
-        <value xml:lang="zh_TW">請等待整個訂單都有貨時再送貨.</value>
         <value xml:lang="zh_CN">等待直到整个订单完成后发货。</value>
         <value xml:lang="zh_TW">請等待整個訂單都有貨時再送貨.</value>
     </property>
@@ -27170,7 +27168,6 @@
         <value xml:lang="vi">Chính sách bán</value>
         <value xml:lang="zh">销售规则</value>
         <value xml:lang="zh_TW">銷售規則</value>
-        <value xml:lang="zh_TW">銷售規則</value>
     </property>
     <property key="ProductSales">
         <value xml:lang="de">Verkauf</value>

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/product/src/org/ofbiz/product/category/CatalogUrlFilter.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/product/src/org/ofbiz/product/category/CatalogUrlFilter.java?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/product/src/org/ofbiz/product/category/CatalogUrlFilter.java (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/product/src/org/ofbiz/product/category/CatalogUrlFilter.java Mon Oct 13 16:02:22 2014
@@ -368,7 +368,7 @@ public class CatalogUrlFilter extends Co
         if (UtilValidate.isNotEmpty(alternativeUrl) && UtilValidate.isNotEmpty(alternativeUrl.toString())) {
             StringBuilder urlBuilder = new StringBuilder();
             urlBuilder.append(contextPath);
-            if (urlBuilder.charAt(urlBuilder.length() - 1) != '/') {
+            if (urlBuilder.length() == 0 || urlBuilder.charAt(urlBuilder.length() - 1) != '/') {
                 urlBuilder.append("/");
             }
             // append alternative URL
@@ -444,7 +444,7 @@ public class CatalogUrlFilter extends Co
         if (UtilValidate.isNotEmpty(alternativeUrl) && UtilValidate.isNotEmpty(alternativeUrl.toString())) {
             StringBuilder urlBuilder = new StringBuilder();
             urlBuilder.append(contextPath);
-            if (urlBuilder.charAt(urlBuilder.length() - 1) != '/') {
+            if (urlBuilder.length() == 0 || urlBuilder.charAt(urlBuilder.length() - 1) != '/') {
                 urlBuilder.append("/");
             }
             // append alternative URL

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/product/src/org/ofbiz/product/category/CatalogUrlServlet.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/product/src/org/ofbiz/product/category/CatalogUrlServlet.java?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/product/src/org/ofbiz/product/category/CatalogUrlServlet.java (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/applications/product/src/org/ofbiz/product/category/CatalogUrlServlet.java Mon Oct 13 16:02:22 2014
@@ -157,7 +157,7 @@ public class CatalogUrlServlet extends H
     public static String makeCatalogUrl(HttpServletRequest request, String productId, String currentCategoryId, String previousCategoryId) {
         StringBuilder urlBuilder = new StringBuilder();
         urlBuilder.append(request.getSession().getServletContext().getContextPath());
-        if (urlBuilder.charAt(urlBuilder.length() - 1) != '/') {
+        if (urlBuilder.length() == 0 || urlBuilder.charAt(urlBuilder.length() - 1) != '/') {
             urlBuilder.append("/");
         }
         urlBuilder.append(CATALOG_URL_MOUNT_POINT);
@@ -183,7 +183,7 @@ public class CatalogUrlServlet extends H
     public static String makeCatalogUrl(String contextPath, List<String> crumb, String productId, String currentCategoryId, String previousCategoryId) {
         StringBuilder urlBuilder = new StringBuilder();
         urlBuilder.append(contextPath);
-        if (urlBuilder.charAt(urlBuilder.length() - 1) != '/') {
+        if (urlBuilder.length() == 0 || urlBuilder.charAt(urlBuilder.length() - 1) != '/') {
             urlBuilder.append("/");
         }
         urlBuilder.append(CATALOG_URL_MOUNT_POINT);

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/base/src/org/ofbiz/base/config/UrlLoader.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/base/src/org/ofbiz/base/config/UrlLoader.java?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/base/src/org/ofbiz/base/config/UrlLoader.java (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/base/src/org/ofbiz/base/config/UrlLoader.java Mon Oct 13 16:02:22 2014
@@ -40,10 +40,6 @@ public class UrlLoader extends ResourceL
         } catch (java.net.MalformedURLException e) {
             throw new GenericConfigException("Error with malformed URL while trying to load URL resource at location [" + fullLocation + "]", e);
         }
-        if (url == null) {
-            throw new GenericConfigException("URL Resource not found: " + fullLocation);
-        }
-
         return url;
     }
 

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/base/src/org/ofbiz/base/util/template/FreeMarkerWorker.java Mon Oct 13 16:02:22 2014
@@ -58,6 +58,7 @@ import freemarker.cache.TemplateLoader;
 import freemarker.core.Environment;
 import freemarker.ext.beans.BeanModel;
 import freemarker.ext.beans.BeansWrapper;
+import freemarker.ext.beans.BeansWrapperBuilder;
 import freemarker.template.Configuration;
 import freemarker.template.SimpleHash;
 import freemarker.template.SimpleScalar;
@@ -79,17 +80,13 @@ public class FreeMarkerWorker {
 
     // use soft references for this so that things from Content records don't kill all of our memory, or maybe not for performance reasons... hmmm, leave to config file...
     private static final UtilCache<String, Template> cachedTemplates = UtilCache.createUtilCache("template.ftl.general", 0, 0, false);
-    private static final BeansWrapper defaultOfbizWrapper = configureBeansWrapper(new BeansWrapper(version));
+    private static final BeansWrapper defaultOfbizWrapper = new BeansWrapperBuilder(version).build();
     private static final Configuration defaultOfbizConfig = makeConfiguration(defaultOfbizWrapper);
 
     public static BeansWrapper getDefaultOfbizWrapper() {
         return defaultOfbizWrapper;
     }
 
-    public static <T extends BeansWrapper> T configureBeansWrapper(T wrapper) {
-        return wrapper;
-    }
-
     public static Configuration makeConfiguration(BeansWrapper wrapper) {
         Configuration newConfig = new Configuration(version);
 

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/common/config/CommonUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/common/config/CommonUiLabels.xml?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/common/config/CommonUiLabels.xml (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/common/config/CommonUiLabels.xml Mon Oct 13 16:02:22 2014
@@ -4984,7 +4984,7 @@
         <value xml:lang="de">Halten</value>
         <value xml:lang="en">Held</value>
         <value xml:lang="es">Retenido</value>
-        <value xml:lang="fr">Retenir</value>
+        <value xml:lang="fr">Retenu</value>
         <value xml:lang="hi_IN">पकड़ा</value>
         <value xml:lang="it">Congelati</value>
         <value xml:lang="ja">保留</value>

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/entity/entitydef/entitymodel_test.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/entity/entitydef/entitymodel_test.xml?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/entity/entitydef/entitymodel_test.xml (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/entity/entitydef/entitymodel_test.xml Mon Oct 13 16:02:22 2014
@@ -123,6 +123,21 @@ under the License.
         <prim-key field="testFieldTypeId"/>
     </entity>
   <!-- =========================================================
+    Testing Item entity : testing line on a Testing entity
+  ========================================================= -->
+    <entity entity-name="TestingItem"
+            package-name="org.ofbiz.entity.test"
+            title="Testing Item">
+        <field name="testingId" type="id-ne"/>
+        <field name="testingSeqId" type="id-ne"/>
+        <field name="testingHistory" type="very-long"/>
+        <prim-key field="testingId"/>
+        <prim-key field="testingSeqId"/>
+        <relation type="one" fk-name="TESTING_IT_TEST" rel-entity-name="Testing">
+            <key-map field-name="testingId"/>
+        </relation>
+    </entity>
+  <!-- =========================================================
     Testing Node entity : hierarchy of nodes having
     'testing node member' as potential members
   ========================================================= -->

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/entity/src/org/ofbiz/entity/util/EntityQuery.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/entity/src/org/ofbiz/entity/util/EntityQuery.java?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/entity/src/org/ofbiz/entity/util/EntityQuery.java (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/entity/src/org/ofbiz/entity/util/EntityQuery.java Mon Oct 13 16:02:22 2014
@@ -160,6 +160,17 @@ public class EntityQuery {
         return this;
     }
 
+    /** Set a series of EntityConditions to be ANDed together as the WHERE clause for the query
+     *
+     * NOTE: Each successive call to any of the where(...) methods will replace the currently set condition for the query.
+     * @param entityCondition - A series of EntityConditions to be ANDed together as the where clause for the query
+     * @return this EntityQuery object, to enable chaining
+     */
+    public EntityQuery where(EntityCondition...entityCondition) {
+        this.whereEntityCondition = EntityCondition.makeCondition(Arrays.asList(entityCondition));
+        return this;
+    }
+
     /** Set a list of EntityCondition objects to be ANDed together as the WHERE clause for the query
      *
      * NOTE: Each successive call to any of the where(...) methods will replace the currently set condition for the query.
@@ -281,6 +292,16 @@ public class EntityQuery {
         return this;
     }
 
+    /** Specifies whether results should be read from the cache (or written to the cache if the results have not yet been cached)
+     *
+     * @param useCache - boolean to indicate if the cache should be used or not
+     * @return this EntityQuery object, to enable chaining
+     */
+    public EntityQuery cache(boolean useCache) {
+        this.useCache = useCache;
+        return this;
+    }
+
     /** Specifies whether the query should return only values that are currently active using from/thruDate fields.
      *
      * @return this EntityQuery object, to enable chaining

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/entityext/src/org/ofbiz/entityext/data/EntityDataLoadContainer.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/entityext/src/org/ofbiz/entityext/data/EntityDataLoadContainer.java?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/entityext/src/org/ofbiz/entityext/data/EntityDataLoadContainer.java (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/entityext/src/org/ofbiz/entityext/data/EntityDataLoadContainer.java Mon Oct 13 16:02:22 2014
@@ -274,14 +274,15 @@ public class EntityDataLoadContainer imp
         String groupNameToUse = overrideGroup != null ? overrideGroup : entityGroupName;
         Delegator delegator = DelegatorFactory.getDelegator(delegatorNameToUse);
         Delegator baseDelegator = null;
+        if (delegator == null) {
+            throw new ContainerException("Invalid delegator name!");
+        }
+
         if (delegator.getDelegatorTenantId() != null) {
             baseDelegator = DelegatorFactory.getDelegator(delegator.getDelegatorBaseName());
         } else {
             baseDelegator = delegator;
         }
-        if (delegator == null) {
-            throw new ContainerException("Invalid delegator name!");
-        }
 
         GenericHelperInfo helperInfo = delegator.getGroupHelperInfo(groupNameToUse);
         if (helperInfo == null) {

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/service/servicedef/services_test_se.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/service/servicedef/services_test_se.xml?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/service/servicedef/services_test_se.xml (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/service/servicedef/services_test_se.xml Mon Oct 13 16:02:22 2014
@@ -48,6 +48,50 @@ under the License.
         location="org.ofbiz.service.test.ServiceEngineTestServices" invoke="testServiceLockWaitTimeoutRetryWaiter">
     </service>
 
+    <!-- testing different entity-auto call-->
+    <service name="testEntityAutoCreateTestingPkPresent" auth="false"
+        engine="entity-auto" default-entity-name="Testing" invoke="create">
+        <auto-attributes include="pk" mode="IN" optional="false"/>
+        <auto-attributes include="nonpk" mode="IN" optional="true"/>
+    </service>
+    <service name="testEntityAutoCreateTestingPkMissing" auth="false"
+        engine="entity-auto" default-entity-name="Testing" invoke="create">
+        <auto-attributes include="nonpk" mode="IN" optional="true"/>
+        <attribute name="testingId" mode="OUT" type="String"/>
+    </service>
+    <service name="testEntityAutoCreateTestingItemPkPresent" auth="false"
+        engine="entity-auto" default-entity-name="TestingItem" invoke="create">
+        <auto-attributes include="pk" mode="IN" optional="false"/>
+        <auto-attributes include="nonpk" mode="IN" optional="true"/>
+    </service>
+    <service name="testEntityAutoCreateTestingItemPkMissing" auth="false"
+        engine="entity-auto" default-entity-name="TestingItem" invoke="create">
+        <auto-attributes include="nonpk" mode="IN" optional="true"/>
+        <attribute name="testingId" mode="IN" type="String"/>
+        <attribute name="testingSeqId" mode="OUT" type="String"/>
+    </service>
+    <service name="testEntityAutoCreateTestingNodeMemberPkPresent" auth="false"
+        engine="entity-auto" default-entity-name="TestingNodeMember" invoke="create">
+        <auto-attributes include="pk" mode="IN" optional="false"/>
+        <auto-attributes include="nonpk" mode="IN" optional="true"/>
+    </service>
+    <service name="testEntityAutoCreateTestingNodeMemberPkMissing" auth="false"
+        engine="entity-auto" default-entity-name="TestingNodeMember" invoke="create">
+        <auto-attributes include="nonpk" mode="IN" optional="true"/>
+        <attribute name="testingId" mode="IN" type="String"/>
+        <attribute name="testingNodeId" mode="IN" type="String"/>
+        <attribute name="fromDate" mode="OUT" type="String"/>
+    </service>
+    <service name="testEntityAutoUpdateTesting" auth="false"
+        engine="entity-auto" default-entity-name="Testing" invoke="update">
+        <auto-attributes include="pk" mode="IN" optional="false"/>
+        <auto-attributes include="nonpk" mode="IN" optional="true"/>
+    </service>
+    <service name="testEntityAutoRemoveTesting" auth="false"
+        engine="entity-auto" default-entity-name="Testing" invoke="delete">
+        <auto-attributes include="pk" mode="IN" optional="false"/>
+    </service>
+
     <!-- lock wait timeout retry testing services - a scenario that we can't do automatically with the single service because the parent owns the tx we have to have end before it will succeed -->
     <service name="testServiceLockWaitTimeoutRetryCantRecover" engine="java" auth="false" transaction-timeout="2"
         location="org.ofbiz.service.test.ServiceEngineTestServices" invoke="testServiceLockWaitTimeoutRetryCantRecover">
@@ -83,19 +127,19 @@ under the License.
     <service name="testServiceEcaGlobalEventExecOnRollback" engine="java" auth="false"
         location="org.ofbiz.service.test.ServiceEngineTestServices" invoke="testServiceEcaGlobalEventExecOnRollback">
     </service>
-    
+
     <!-- Call xml rpc from engine -->
-    <service name="testXmlRpcAdd" engine="java" auth="false" location="org.ofbiz.service.test.XmlRpcTests" invoke="testXmlRpcAdd" export="true">    
-        <attribute name="num1" mode="IN" type="Integer"/>    
-        <attribute name="num2" mode="IN" type="Integer"/>    
-        <attribute name="resulting" mode="OUT" type="Integer"/>    
-    </service>
-    <service name="testXmlRpcLocalEngine" engine="xml-rpc-local" auth="false" invoke="testXmlRpcAdd">        
-        <attribute name="num1" mode="IN" type="Integer"/>    
-        <attribute name="num2" mode="IN" type="Integer"/>    
-        <attribute name="resulting" mode="OUT" type="Integer"/>    
+    <service name="testXmlRpcAdd" engine="java" auth="false" location="org.ofbiz.service.test.XmlRpcTests" invoke="testXmlRpcAdd" export="true">
+        <attribute name="num1" mode="IN" type="Integer"/>
+        <attribute name="num2" mode="IN" type="Integer"/>
+        <attribute name="resulting" mode="OUT" type="Integer"/>
+    </service>
+    <service name="testXmlRpcLocalEngine" engine="xml-rpc-local" auth="false" invoke="testXmlRpcAdd">
+        <attribute name="num1" mode="IN" type="Integer"/>
+        <attribute name="num2" mode="IN" type="Integer"/>
+        <attribute name="resulting" mode="OUT" type="Integer"/>
     </service>
     <service name="testXmlRpcClientAdd" engine="java" auth="false" location="org.ofbiz.service.test.XmlRpcTests" invoke="testXmlRpcClientAdd">
-        <implements service="testServiceInterface"/>    
+        <implements service="testServiceInterface"/>
     </service>
 </services>

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/service/testdef/servicetests.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/service/testdef/servicetests.xml?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/service/testdef/servicetests.xml (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/service/testdef/servicetests.xml Mon Oct 13 16:02:22 2014
@@ -23,6 +23,7 @@ under the License.
         xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/test-suite.xsd">
     <test-case case-name="service-tests"><junit-test-suite class-name="org.ofbiz.service.test.ServiceEngineTests"/></test-case>
     <test-case case-name="service-soap-tests"><junit-test-suite class-name="org.ofbiz.service.test.ServiceSOAPTests"/></test-case>
+    <test-case case-name="service-entity-auto-tests"><junit-test-suite class-name="org.ofbiz.service.test.ServiceEntityAutoTests"/></test-case>
 
     <test-case case-name="load-service-test-data">
         <entity-xml action="load" entity-xml-url="component://service/testdef/data/ServiceTestData.xml"/>

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/widget/src/org/ofbiz/widget/screen/HtmlWidget.java
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/widget/src/org/ofbiz/widget/screen/HtmlWidget.java?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/widget/src/org/ofbiz/widget/screen/HtmlWidget.java (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/framework/widget/src/org/ofbiz/widget/screen/HtmlWidget.java Mon Oct 13 16:02:22 2014
@@ -59,7 +59,7 @@ public class HtmlWidget extends ModelScr
     public static final String module = HtmlWidget.class.getName();
 
     private static final UtilCache<String, Template> specialTemplateCache = UtilCache.createUtilCache("widget.screen.template.ftl.general", 0, 0, false);
-    protected static Configuration specialConfig = FreeMarkerWorker.makeConfiguration(FreeMarkerWorker.configureBeansWrapper(new ExtendedWrapper(FreeMarkerWorker.version)));
+    protected static Configuration specialConfig = FreeMarkerWorker.makeConfiguration(new ExtendedWrapper(FreeMarkerWorker.version));
 
     // not sure if this is the best way to get FTL to use my fancy MapModel derivative, but should work at least...
     public static class ExtendedWrapper extends BeansWrapper {

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/specialpurpose/example/config/ExampleEntityLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/specialpurpose/example/config/ExampleEntityLabels.xml?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/specialpurpose/example/config/ExampleEntityLabels.xml (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/specialpurpose/example/config/ExampleEntityLabels.xml Mon Oct 13 16:02:22 2014
@@ -148,7 +148,6 @@
         <value xml:lang="th">วันที่อื่น ๆ</value>
         <value xml:lang="zh">另一个日期</value>
         <value xml:lang="zh_TW">另一個日期</value>
-        <value xml:lang="zh_TW">另一個日期</value>
     </property>
     <property key="FieldDescription.anotherText">
         <value xml:lang="en">Another Text</value>
@@ -170,7 +169,6 @@
         <value xml:lang="th">ความคิดเห็น</value>
         <value xml:lang="zh">评论</value>
         <value xml:lang="zh_TW">評論</value>
-        <value xml:lang="zh_TW">評論</value>
     </property>
     <property key="FieldDescription.exampleDate">
         <value xml:lang="en">Example Date</value>

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/specialpurpose/example/config/ExampleUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/specialpurpose/example/config/ExampleUiLabels.xml?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/specialpurpose/example/config/ExampleUiLabels.xml (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/specialpurpose/example/config/ExampleUiLabels.xml Mon Oct 13 16:02:22 2014
@@ -883,7 +883,6 @@
         <value xml:lang="ja">サンプルテキストが拡張フォームの中にあるサンプル。</value>
         <value xml:lang="zh">这个样例文本意味着我们处于扩展表单中。</value>
         <value xml:lang="zh_TW">這個範例文本意味著我們處於擴展表單中.</value>
-        <value xml:lang="zh_TW">這個範例文本意味著我們處於擴展表單中.</value>
     </property>
     <property key="ExampleToDo">
         <value xml:lang="en">Explanation TODO</value>

Modified: ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/specialpurpose/projectmgr/config/ProjectMgrUiLabels.xml
URL: http://svn.apache.org/viewvc/ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/specialpurpose/projectmgr/config/ProjectMgrUiLabels.xml?rev=1631452&r1=1631451&r2=1631452&view=diff
==============================================================================
--- ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/specialpurpose/projectmgr/config/ProjectMgrUiLabels.xml (original)
+++ ofbiz/branches/OFBIZ-5312-ofbiz-ecommerce-seo-2013-10-23/specialpurpose/projectmgr/config/ProjectMgrUiLabels.xml Mon Oct 13 16:02:22 2014
@@ -1005,7 +1005,6 @@
         <value xml:lang="vi">Số giờ thá»±c tế</value>
         <value xml:lang="zh">实际工时</value>
         <value xml:lang="zh_TW">實際工時</value>
-        <value xml:lang="zh_TW">實際工時</value>
     </property>
     <property key="ProjectMgrActualTotal">
         <value xml:lang="de">Ist-Stunden gesamt</value>
@@ -1923,7 +1922,6 @@
         <value xml:lang="vi">Tên dá»± án</value>
         <value xml:lang="zh">项目名称</value>
         <value xml:lang="zh_TW">專案名稱</value>
-        <value xml:lang="zh_TW">專案名稱</value>
     </property>
     <property key="ProjectMgrProjectNoNotes">
         <value xml:lang="de">Keine Notizen für dieses Projekt</value>