Author: hansbak
Date: Thu Mar  3 10:44:09 2011
New Revision: 1076582

URL: http://svn.apache.org/viewvc?rev=1076582&view=rev
Log:
Correct error reported in https://issues.apache.org/jira/browse/OFBIZ-4196: 
Non-existing image (new image management system) returns 500 error instead of 
404. A contrinutions by Antwebsystems employee Tukkata

Modified:
    
ofbiz/trunk/applications/product/src/org/ofbiz/product/imagemanagement/ImageUrlServlet.java

Modified: 
ofbiz/trunk/applications/product/src/org/ofbiz/product/imagemanagement/ImageUrlServlet.java
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/src/org/ofbiz/product/imagemanagement/ImageUrlServlet.java?rev=1076582&r1=1076581&r2=1076582&view=diff
==============================================================================
--- 
ofbiz/trunk/applications/product/src/org/ofbiz/product/imagemanagement/ImageUrlServlet.java
 (original)
+++ 
ofbiz/trunk/applications/product/src/org/ofbiz/product/imagemanagement/ImageUrlServlet.java
 Thu Mar  3 10:44:09 2011
@@ -82,7 +82,10 @@ public class ImageUrlServlet extends Htt
         
         String lastTagElement = tagElements.get(tagElements.size() - 1);
         String contentId = lastTagElement.substring(0, 
lastTagElement.lastIndexOf("."));
-        String sizeTagElement = tagElements.get(tagElements.size() - 2);
+        String sizeTagElement = null;
+        if(tagElements.size() > 2){
+            sizeTagElement = tagElements.get(tagElements.size() - 2);
+        }
         
         GenericValue content = null;
         try {
@@ -96,16 +99,19 @@ public class ImageUrlServlet extends Htt
             Debug.logError(e, module);
         }
     
-        GenericValue dataResource = null;
-        try {
-            dataResource = content.getRelatedOne("DataResource");
-        } catch (GenericEntityException e) {
-            Debug.logError(e, module);
+        if (content != null) {
+            GenericValue dataResource = null;
+            try {
+                dataResource = content.getRelatedOne("DataResource");
+            } catch (GenericEntityException e) {
+                Debug.logError(e, module);
+            }
+            String imageUrl = dataResource.getString("objectInfo");
+            RequestDispatcher rd = 
request.getRequestDispatcher("/control/viewImage?drObjectInfo=" + imageUrl);
+            rd.forward(request, response);
+        } else {
+            response.sendError(response.SC_NOT_FOUND, "Image not found with ID 
[" + contentId + "]");
         }
-        
-        String imageUrl = dataResource.getString("objectInfo");
-        RequestDispatcher rd = 
request.getRequestDispatcher("/control/viewImage?drObjectInfo=" + imageUrl);
-        rd.forward(request, response);
     }
 
     /**


Reply via email to