private void moveMessages(final String user, final TargetFolderIdType targetFolderId,
final List<MessageId> messageIds) throws FailedToMoveMessage
{
EnvelopeDocument request = createEmptyRequest(user);
MoveItemType moveItem = request.getEnvelope().addNewBody().addNewMoveItem();
moveItem.setToFolderId(targetFolderId);
NonEmptyArrayOfBaseItemIdsType itemIds = moveItem.addNewItemIds();
for (MessageId messageId : messageIds)
{
ItemIdType itemId = itemIds.addNewItemId();
itemId.setId(messageId.getId());
itemId.setChangeKey(messageId.getChangeKey());