Невозможно импортировать javax.activation в Jdeveloper for MAF

Я пытаюсь развернуть приложение Oracle MAF на платформе iOS. Я использую Java Mail для получения писем с сервера gmail. Я пытаюсь идентифицировать письма с вложениями. Однако я получаю следующую ошибку.

java.lang.ClassCastException: com.sun.mail.imap.IMAPInputStream не может быть приведен к javax.mail.Multipart

Когда я идентифицирую mime-тип сообщения как "multipart/mixed", я пытаюсь преобразовать объект в Multipart.

Я понимаю, что этот вопрос задавался ранее, но я попытался реализовать предложенное здесь решение. Однако я не могу импортировать что-либо из javax.activation. Ошибка, которую я получаю в jdeveloper:

Ошибка: javax.activation.CommandMap недоступно в профиле.

Эта ошибка появляется для всего от javax.activation

Кроме того, эта ошибка появляется только в приложении MAF. Это хорошо работает в обычном Java-проекте.

Как я могу справиться с этой проблемой?

import java.util.Properties;

import javax.mail.Folder;
import javax.mail.Message;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Store;

public class Email {
    public Email() 
    {

        String userName = "abc@gmail.com";
        String password = "password";
        String receivingHost;

        receivingHost="imap.gmail.com";

        Properties props=System.getProperties();
        props.setProperty("mail.store.protocol", "imaps");

        Session session=Session.getDefaultInstance(props, null);

        try 
        {
             Store store=session.getStore("imaps");
             store.connect(receivingHost,userName, password);
             Folder folder=store.getFolder("INBOX");
             folder.open(Folder.READ_ONLY);
             Message messages[]=folder.getMessages();

             //System.out.println(messages.length);
             for (Message message : messages) 
             {
                 if(message.isMimeType("multipart/mixed")) 
                 {
                     Multipart mp = (Multipart)message.getContent();
                     //get content    
                 }
                 else 
                 {
                    //getcontent
                 }
             }

             store.close();

        }
        catch (Exception e) 
        {
            System.out.println(e.toString());
        }
        //System.out.println("Done");
    }
}

0 ответов

Другие вопросы по тегам