[Yanel-commits] rev 42612 - public/yanel/trunk/src/impl/java/org/wyona/yanel/impl/resources/usecase

michi at wyona.com michi at wyona.com
Tue May 5 11:19:49 CEST 2009


Author: michi
Date: 2009-05-05 11:19:48 +0200 (Tue, 05 May 2009)
New Revision: 42612

Modified:
   public/yanel/trunk/src/impl/java/org/wyona/yanel/impl/resources/usecase/UsecaseResource.java
Log:
exception handling improved

Modified: public/yanel/trunk/src/impl/java/org/wyona/yanel/impl/resources/usecase/UsecaseResource.java
===================================================================
--- public/yanel/trunk/src/impl/java/org/wyona/yanel/impl/resources/usecase/UsecaseResource.java	2009-05-05 09:14:04 UTC (rev 42611)
+++ public/yanel/trunk/src/impl/java/org/wyona/yanel/impl/resources/usecase/UsecaseResource.java	2009-05-05 09:19:48 UTC (rev 42612)
@@ -69,7 +69,7 @@
             View view = null;
            
             if (viewDescriptor == null) {
-                throw new UsecaseException("Usecase " + getName() + " has no view with id: " + viewID);
+                throw new UsecaseException("Usecase resource '" + getName() + "' has no view with id: " + viewID);
             }
             
             if (viewDescriptor.getType().equals(ConfigurableViewDescriptor.TYPE_JELLY)) {
@@ -83,21 +83,31 @@
             } else if (viewDescriptor.getType().equals(ConfigurableViewDescriptor.TYPE_CUSTOM)) {
                 view = renderCustomView(viewDescriptor);
             } else {
-                throw new UsecaseException("Usecase " + getName() + " has invalid view type: " + viewDescriptor.getType());
+                throw new UsecaseException("No such type '" + viewDescriptor.getType() + "' of view '" + viewID + "' of usecase resource " + getName() + " implemented!");
             }
             view.setHttpHeaders(viewDescriptor.getHttpHeaders());
             return view;
         } catch (Exception e) {
-            String errorMsg = "Error generating view of usecase: " + getName() + ": " + e;
+            String errorMsg = "Error generating view '" + viewID + "' of usecase resource: " + getName() + ": " + e;
             log.error(errorMsg, e);
             throw new UsecaseException(errorMsg, e);
         }
     }
     
+    /**
+     * TODO: What exactly is the name?
+     */
     protected String getName() {
-        return "name";
+        try {
+            return getConfiguration().getNode().getPath() + " (" + getResourceTypeUniversalName() +")";
+        } catch(Exception e) {
+            return  "(" + getResourceTypeUniversalName() +")";
+        }
     }
 
+    /**
+     * Generate jelly view
+     */
     protected InputStream getJellyXML(ConfigurableViewDescriptor viewDescriptor) throws UsecaseException {
         try {
             String viewTemplate = viewDescriptor.getTemplate();
@@ -139,7 +149,7 @@
             //System.out.println(new String(result, "utf-8"));
             return new ByteArrayInputStream(result);
         } catch (Exception e) {
-            String errorMsg = "Error creating jelly view of usecase: " + getName() + ": " + e;
+            String errorMsg = "Error creating 'jelly' view '" + viewDescriptor.getId() + "' of usecase resource: " + getName() + ": " + e;
             log.error(errorMsg, e);
             throw new UsecaseException(errorMsg, e);
         }



More information about the Yanel-commits mailing list