diff --git a/dspace-server-webapp/src/test/java/org/dspace/app/sword2/Swordv2IT.java b/dspace-server-webapp/src/test/java/org/dspace/app/sword2/Swordv2IT.java
index 64e3db7dfc..a6dcfde49c 100644
--- a/dspace-server-webapp/src/test/java/org/dspace/app/sword2/Swordv2IT.java
+++ b/dspace-server-webapp/src/test/java/org/dspace/app/sword2/Swordv2IT.java
@@ -237,7 +237,7 @@ public class Swordv2IT extends AbstractWebClientIntegrationTest {
String editLink = response.getHeaders().getLocation().toString();
// Body should include that link as the rel="edit" URL
- assertThat(response.getBody(), containsString(""));
+ assertThat(response.getBody(), containsString(" values = itemService.getMetadata(item, "dc", "date", "accessioned", Item.ANY);
+ Date date = new Date();
+ if (values != null && values.size() > 0) {
+ String strDate = values.get(0).getValue();
+ date = new DCDate(strDate).toDate();
+ }
+ return date;
+ }
}
diff --git a/dspace-swordv2/src/main/java/org/dspace/sword2/ReceiptGenerator.java b/dspace-swordv2/src/main/java/org/dspace/sword2/ReceiptGenerator.java
index b452698514..725ae5e734 100644
--- a/dspace-swordv2/src/main/java/org/dspace/sword2/ReceiptGenerator.java
+++ b/dspace-swordv2/src/main/java/org/dspace/sword2/ReceiptGenerator.java
@@ -8,8 +8,6 @@
package org.dspace.sword2;
import java.sql.SQLException;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@@ -28,6 +26,7 @@ import org.dspace.core.Constants;
import org.dspace.core.Context;
import org.dspace.services.ConfigurationService;
import org.dspace.services.factory.DSpaceServicesFactory;
+import org.dspace.util.MultiFormatDateParser;
import org.swordapp.server.DepositReceipt;
import org.swordapp.server.SwordError;
import org.swordapp.server.SwordServerException;
@@ -284,14 +283,8 @@ public class ReceiptGenerator {
List dcv = itemService.getMetadataByMetadataString(
result.getItem(), "dc.date.issued");
if (dcv != null && !dcv.isEmpty()) {
- try {
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
- Date published = sdf.parse(dcv.get(0).getValue());
- receipt.getWrappedEntry().setPublished(published);
- } catch (ParseException e) {
- // we tried, but never mind
- log.warn("Couldn't add published date", e);
- }
+ Date published = MultiFormatDateParser.parse(dcv.get(0).getValue());
+ receipt.getWrappedEntry().setPublished(published);
}
}
@@ -305,14 +298,8 @@ public class ReceiptGenerator {
List dcv = itemService.getMetadataByMetadataString(
item, "dc.date.issued");
if (dcv != null && dcv.size() == 1) {
- try {
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
- Date published = sdf.parse(dcv.get(0).getValue());
- receipt.getWrappedEntry().setPublished(published);
- } catch (ParseException e) {
- // we tried, but never mind
- log.warn("Couldn't add published date", e);
- }
+ Date published = MultiFormatDateParser.parse(dcv.get(0).getValue());
+ receipt.getWrappedEntry().setPublished(published);
}
}
@@ -329,14 +316,8 @@ public class ReceiptGenerator {
List dcv = itemService.getMetadataByMetadataString(
result.getItem(), config);
if (dcv != null && dcv.size() == 1) {
- try {
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
- Date updated = sdf.parse(dcv.get(0).getValue());
- receipt.getWrappedEntry().setUpdated(updated);
- } catch (ParseException e) {
- // we tried, but never mind
- log.warn("Couldn't add last updated date", e);
- }
+ Date updated = MultiFormatDateParser.parse(dcv.get(0).getValue());
+ receipt.getWrappedEntry().setUpdated(updated);
}
}
@@ -352,14 +333,8 @@ public class ReceiptGenerator {
List dcv = itemService.getMetadataByMetadataString(
item, config);
if (dcv != null && dcv.size() == 1) {
- try {
- SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
- Date updated = sdf.parse(dcv.get(0).getValue());
- receipt.getWrappedEntry().setUpdated(updated);
- } catch (ParseException e) {
- // we tried, but never mind
- log.warn("Couldn't add last updated date", e);
- }
+ Date updated = MultiFormatDateParser.parse(dcv.get(0).getValue());
+ receipt.getWrappedEntry().setUpdated(updated);
}
}
}