[Yanel-commits] rev 42982 - public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet

michi at wyona.com michi at wyona.com
Thu May 21 22:25:08 CEST 2009


Author: michi
Date: 2009-05-21 22:25:07 +0200 (Thu, 21 May 2009)
New Revision: 42982

Modified:
   public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java
Log:
use neutron lib for exception handling

Modified: public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java
===================================================================
--- public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java	2009-05-21 20:02:01 UTC (rev 42981)
+++ public/yanel/trunk/src/webapp/src/java/org/wyona/yanel/servlet/YanelServlet.java	2009-05-21 20:25:07 UTC (rev 42982)
@@ -1014,18 +1014,10 @@
                     return;
                 } catch (Exception e) {
                     log.error(e.getMessage(), e);
-
-                    StringBuffer sb = new StringBuffer();
-                    sb.append("<?xml version=\"1.0\"?>");
-                    sb.append("<exception xmlns=\"http://www.wyona.org/neutron/1.0\" type=\"neutron\">");
-                    //sb.append("<message>" + e.getStackTrace() + "</message>");
-                    //sb.append("<message>" + e.getMessage() + "</message>");
-                    sb.append("<message>" + e + "</message>");
-                    sb.append("</exception>");
                     response.setContentType("application/xml; charset=" + DEFAULT_ENCODING);
                     response.setStatus(javax.servlet.http.HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
                     PrintWriter w = response.getWriter();
-                    w.print(sb);
+                    w.print(XMLExceptionV1.getDefaultException(XMLExceptionV1.DATA_NOT_WELL_FORMED, "" + e));
                     return;
                 }
 
@@ -1059,15 +1051,11 @@
  
 
             // TODO: Differentiate between Neutron based and other clients ... (Use method isClientSupportingNeutron())
-            StringBuilder sb = new StringBuilder();
-            sb.append("<?xml version=\"1.0\"?>");
-            sb.append("<exception xmlns=\"http://www.wyona.org/neutron/1.0\" type=\"neutron\">");
-            sb.append("<message>" + message + "</message>");
-            sb.append("</exception>");
             response.setContentType("application/xml; charset=" + DEFAULT_ENCODING);
             response.setStatus(javax.servlet.http.HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
             PrintWriter w = response.getWriter();
-            w.print(sb);
+            // TODO: This is not really a 'checkin' problem, but rather a general 'save-data' problem, but the Neutron spec does not support such a type: http://neutron.wyona.org/draft-neutron-protocol-v0.html#rfc.section.8
+            w.print(XMLExceptionV1.getDefaultException(XMLExceptionV1.CHECKIN, message));
         }
         
         if (doCheckin) {
@@ -2253,7 +2241,7 @@
     private boolean isClientSupportingNeutron(HttpServletRequest request) {
         String neutronVersions = request.getHeader("Neutron");
         if (neutronVersions != null) {
-            log.warn("DEBUG: Neutron version(s) supported by client: " + neutronVersions);
+            log.info("Neutron version(s) supported by client: " + neutronVersions);
             return true;
         }
         return false;



More information about the Yanel-commits mailing list