[OLINGO-1090] Incorrect content format in batch error response

happens when content type is application/json;odata=verbose

Signed-off-by: Christian Amend <christian.amend@sap.com>
diff --git a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/rest/ODataExceptionWrapper.java b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/rest/ODataExceptionWrapper.java
index 4300ab1..9dc7cde 100644
--- a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/rest/ODataExceptionWrapper.java
+++ b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/rest/ODataExceptionWrapper.java
@@ -298,7 +298,8 @@
             || ContentType.APPLICATION_ATOM_XML_CS_UTF_8.equals(convertedContentType)) {
           return ContentType.APPLICATION_XML;
         } else if (ContentType.APPLICATION_JSON.equals(convertedContentType)
-            || ContentType.APPLICATION_JSON_CS_UTF_8.equals(convertedContentType)) {
+            || ContentType.APPLICATION_JSON_CS_UTF_8.equals(convertedContentType)
+            || ContentType.APPLICATION_JSON_ODATA_VERBOSE.equals(convertedContentType)) {
           return ContentType.APPLICATION_JSON;
         }
       }
@@ -343,7 +344,8 @@
             || ContentType.APPLICATION_ATOM_XML_CS_UTF_8.equals(convertedContentType)) {
           return ContentType.APPLICATION_XML;
         } else if (ContentType.APPLICATION_JSON.equals(convertedContentType)
-            || ContentType.APPLICATION_JSON_CS_UTF_8.equals(convertedContentType)) {
+            || ContentType.APPLICATION_JSON_CS_UTF_8.equals(convertedContentType)
+            || ContentType.APPLICATION_JSON_ODATA_VERBOSE.equals(convertedContentType)) {
           return ContentType.APPLICATION_JSON;
         }
       }
diff --git a/odata2-lib/odata-fit/src/test/java/org/apache/olingo/odata2/fit/client/ClientBatchTest.java b/odata2-lib/odata-fit/src/test/java/org/apache/olingo/odata2/fit/client/ClientBatchTest.java
index cf6c9f3..66be286 100644
--- a/odata2-lib/odata-fit/src/test/java/org/apache/olingo/odata2/fit/client/ClientBatchTest.java
+++ b/odata2-lib/odata-fit/src/test/java/org/apache/olingo/odata2/fit/client/ClientBatchTest.java
@@ -319,4 +319,36 @@
     assertTrue(requestBody.contains("--" + BOUNDARY));
     assertTrue(requestBody.contains("--" + BOUNDARY + "--"));
   }
+  
+  @Test
+  public void testContentFormatErrorBatch() throws Exception {
+    List<BatchPart> batch = new ArrayList<BatchPart>();
+    Map<String, String> headers = new HashMap<String, String>();
+    headers.put("DataServiceVersion", "2.0");
+    headers.put("MaxDataServiceVersion", "3.0");
+    headers.put("Accept", "application/json;odata=verbose");
+    BatchPart request = BatchQueryPart.method(ODataHttpMethod.GET.name())
+        .uri("nonsense")
+        .headers(headers)
+        .build();
+    batch.add(request);
+
+    InputStream body = EntityProvider.writeBatchRequest(batch, BOUNDARY);
+    String bodyAsString = StringHelper.inputStreamToStringCRLFLineBreaks(body);
+    checkMimeHeaders(bodyAsString);
+    checkBoundaryDelimiters(bodyAsString);
+
+    assertTrue(bodyAsString.contains("GET nonsense HTTP/1.1"));
+    HttpResponse batchResponse = execute(bodyAsString);
+    InputStream responseBody = batchResponse.getEntity().getContent();
+    String contentType = batchResponse.getFirstHeader(HttpHeaders.CONTENT_TYPE).getValue();
+    List<BatchSingleResponse> responses = EntityProvider.parseBatchResponse(responseBody, contentType);
+    for (BatchSingleResponse response : responses) {
+      assertEquals("404", response.getStatusCode());
+      assertEquals("Not Found", response.getStatusInfo());
+      assertEquals("application/json", response.getHeaders().get("Content-Type"));
+      assertEquals("{\"error\":{\"code\":null,\"message\":{\"lang\":\"en\",\"value\":"
+          + "\"Could not find an entity set or function import for 'nonsense'.\"}}}", response.getBody());
+    }
+  }
 }