dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #39577
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 20036: a few more exception handlers in crud advice
------------------------------------------------------------
revno: 20036
committer: Morten Olav Hansen <mortenoh@xxxxxxxxx>
branch nick: dhis2
timestamp: Tue 2015-09-08 16:09:53 +0700
message:
a few more exception handlers in crud advice
modified:
dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/CrudControllerAdvice.java
--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk
Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/CrudControllerAdvice.java'
--- dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/CrudControllerAdvice.java 2015-07-14 09:34:46 +0000
+++ dhis-2/dhis-web/dhis-web-api/src/main/java/org/hisp/dhis/webapi/controller/CrudControllerAdvice.java 2015-09-08 09:09:53 +0000
@@ -28,11 +28,13 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+import com.fasterxml.jackson.core.JsonParseException;
import org.hisp.dhis.common.DeleteNotAllowedException;
import org.hisp.dhis.common.IllegalQueryException;
import org.hisp.dhis.common.MaintenanceModeException;
import org.hisp.dhis.dataapproval.exceptions.DataApprovalException;
import org.hisp.dhis.dxf2.webmessage.WebMessageException;
+import org.hisp.dhis.dxf2.webmessage.WebMessageStatus;
import org.hisp.dhis.system.util.DateUtils;
import org.hisp.dhis.webapi.controller.exception.NotAuthenticatedException;
import org.hisp.dhis.webapi.controller.exception.NotFoundException;
@@ -44,11 +46,13 @@
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.InitBinder;
+import org.springframework.web.client.HttpStatusCodeException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.validation.ConstraintViolationException;
import java.beans.PropertyEditorSupport;
+import java.io.IOException;
import java.util.Date;
/**
@@ -120,4 +124,22 @@
{
webMessageService.send( ex.getWebMessage(), response, request );
}
+
+ @ExceptionHandler( JsonParseException.class )
+ public void jsonParseExceptionHandler( JsonParseException ex, HttpServletResponse response, HttpServletRequest request )
+ {
+ webMessageService.send( WebMessageUtils.conflict( ex.getMessage() ), response, request );
+ }
+
+ @ExceptionHandler( IOException.class )
+ public void ioExceptionHandler( IOException ex, HttpServletResponse response, HttpServletRequest request )
+ {
+ webMessageService.send( WebMessageUtils.conflict( ex.getMessage() ), response, request );
+ }
+
+ @ExceptionHandler( HttpStatusCodeException.class )
+ public void httpStatusCodeExceptionHandler( HttpStatusCodeException ex, HttpServletResponse response, HttpServletRequest request )
+ {
+ webMessageService.send( WebMessageUtils.createWebMessage( ex.getMessage(), WebMessageStatus.ERROR, ex.getStatusCode() ), response, request );
+ }
}