Мне нужно разделить объекты почтовых сообщений Java между двумя веб-приложениями (A и B).
WebApplication A получает сообщение и записывает его в outputStream
for(int i=0;i<messagesArr.length;i++){
uid = pop3FolderObj.getUID(messagesArr[i]);
//storing messages with uid names inorder to maintain uniqueness
File f = new File("F:/PersistedMessagesFolder" + uid);
FileOutputStream fos = new FileOutputStream(f);
messagesArr[i].writeTo(fos);
fos.flush();
fos.close();
}
Является ли FileOutputStream лучшим выходным потоком для сохраняющихся объектов сообщений? Можно ли использовать ObjectOutputStream для сохранения объекта сообщения?
WebApplication B читает объект сообщения через InputStream
FileInputStream fis = new FileInputStream("F:/MessagesPersistedFolder"+uid);
MimeMessage mm = new MimeMessage(sessionObj,fis);
Что, если объект почтового сообщения, который уже написан через WebApplication A, не является MimeMessage? Как я могу читать сообщения не MIME, используя поток ввода?
Конструктор MimeMessage назначает sessionObj в качестве первого параметра? Как я могу получить этот sessionObj в WebApplicationB? Нужно ли снова устанавливать соединение с тем же emailid, emailpassword, popserver и port (уже использованным в WebApplication A) с порядком почтового сервера для получения этого объекта сеанса? Даже если он получен, останется ли этот объект сеанса таким же, как у объекта сеанса, который был предварительно получен в WebApplicationA?
Поскольку я использую uids для именования объектов Message (для сохранения уникальности имен файлов), как я могу разделить эти uid между WebApplication A и WebApplication B? Для WebApplication B необходим идентификатор UID для доступа к конкретному файлу, который присутствует в «F: / MessagesPersistedFolder»
Пожалуйста, помогите мне в решении вышеуказанных проблем.