Author: jonesde
Date: Fri Aug  3 14:37:12 2007
New Revision: 562591

URL: http://svn.apache.org/viewvc?view=rev&rev=562591
Log:
Added code to handle bad shipmentIds coming in and return an error message 
instead of an NPE for the Show Shipment incoming message

Modified:
    
ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java

Modified: 
ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java?view=diff&rev=562591&r1=562590&r2=562591
==============================================================================
--- 
ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java 
(original)
+++ 
ofbiz/trunk/specialpurpose/oagis/src/org/ofbiz/oagis/OagisShipmentServices.java 
Fri Aug  3 14:37:12 2007
@@ -115,7 +115,7 @@
         String confirmation = UtilXml.childElementValue(senderElement, 
"of:CONFIRMATION"); // of
         String authId = UtilXml.childElementValue(senderElement, "of:AUTHID"); 
// of
 
-        Map result = new HashMap();
+        Map result = FastMap.newInstance();
         result.put("logicalId", logicalId);
         result.put("component", component);
         result.put("task", task);
@@ -163,13 +163,22 @@
         try {
             shipment = delegator.findByPrimaryKey("Shipment", 
UtilMisc.toMap("shipmentId", shipmentId));
         } catch (GenericEntityException e) {
-            String errMsg = "Error Shipment from database: "+ e.toString();
+            String errMsg = "Error getting Shipment from database: "+ 
e.toString();
+            Debug.logInfo(e, errMsg, module);
             errorMapList.add(UtilMisc.toMap("description", errMsg, 
"reasonCode", "GenericEntityException"));
-            Debug.logInfo(e, module);
-            result.putAll(ServiceUtil.returnError(errMsg));
+        }
+        
+        if (shipment == null) {
+            String errMsg = "Could not find Shipment id ID [" + shipmentId + 
"]";
+            errorMapList.add(UtilMisc.toMap("description", errMsg, 
"reasonCode", "ShipmentIdNotValid"));
+        }
+        
+        if (errorMapList.size() > 0) {
+            result.putAll(ServiceUtil.returnError("Errors found getting 
shipment information for incoming Show Shipment message"));
             result.put("errorMapList", errorMapList);
             return result;
-        }                    
+        }
+
         String shipGroupSeqId = shipment.getString("primaryShipGroupSeqId");   
             
         String originFacilityId = shipment.getString("originFacilityId");      
                        
           


Reply via email to