Index: jackrabbit-spi2dav/src/main/java/org/apache/jackrabbit/spi2dav/ExceptionConverter.java
===================================================================
--- jackrabbit-spi2dav/src/main/java/org/apache/jackrabbit/spi2dav/ExceptionConverter.java	(revision 897957)
+++ jackrabbit-spi2dav/src/main/java/org/apache/jackrabbit/spi2dav/ExceptionConverter.java	(working copy)
@@ -24,8 +24,6 @@
 import org.apache.jackrabbit.webdav.client.methods.MkColMethod;
 import org.apache.jackrabbit.webdav.xml.DomUtil;
 import org.apache.commons.httpclient.methods.PutMethod;
-import org.slf4j.LoggerFactory;
-import org.slf4j.Logger;
 import org.w3c.dom.Element;
 
 import javax.jcr.RepositoryException;
@@ -40,16 +38,14 @@
  */
 public class ExceptionConverter {
 
-    private static Logger log = LoggerFactory.getLogger(ExceptionConverter.class);
-
-    // avoid instanciation
+    // avoid instantiation
     private ExceptionConverter() {}
 
-    public static RepositoryException generate(DavException davExc) throws RepositoryException {
+    public static RepositoryException generate(DavException davExc) {
         return generate(davExc, null);
     }
 
-    public static RepositoryException generate(DavException davExc, DavMethod method) throws RepositoryException {
+    public static RepositoryException generate(DavException davExc, DavMethod method) {
         String msg = davExc.getMessage();
         if (davExc.hasErrorCondition()) {
             try {
@@ -61,10 +57,10 @@
                             msg = DomUtil.getChildText(exc, "message", null);
                         }
                         if (DomUtil.hasChildElement(exc, "class", null)) {
-                            Class cl = Class.forName(DomUtil.getChildText(exc, "class", null));
-                            Constructor excConstr = cl.getConstructor(new Class[]{String.class});
+                            Class<?> cl = Class.forName(DomUtil.getChildText(exc, "class", null));
+                            Constructor<?> excConstr = cl.getConstructor(String.class);
                             if (excConstr != null) {
-                                Object o = excConstr.newInstance(new String[]{msg});
+                                Object o = excConstr.newInstance(msg);
                                 if (o instanceof RepositoryException) {
                                     return (RepositoryException) o;
                                 } else if (o instanceof Exception) {
@@ -75,7 +71,7 @@
                     }
                 }
             } catch (Exception e) {
-                throw new RepositoryException(e);
+                return new RepositoryException(e);
             }
         }
 
@@ -88,7 +84,7 @@
                                        method instanceof PutMethod)) {
                     // target item has probably while transient changes have
                     // been made.
-                    throw new InvalidItemStateException(msg, davExc);
+                    return new InvalidItemStateException(msg, davExc);
                 } else {
                     return new ItemNotFoundException(msg, davExc);
                 }
@@ -102,11 +98,11 @@
                 return new LockException(msg, davExc);
             case DavServletResponse.SC_NOT_IMPLEMENTED:
                 if (method != null) {
-                    throw new UnsupportedOperationException(
+                    return new UnsupportedRepositoryOperationException(
                             "Missing implementation: Method "
                             + method + " could not be executed", davExc);
                 } else {
-                    throw new UnsupportedOperationException(
+                    return new UnsupportedRepositoryOperationException(
                             "Missing implementation", davExc);
                 }
             default:
