0

私は週末を Google App Engine と Google Web Toolkit で遊んで過ごしましたが、うまくやって簡単なアプリを作成しました。

つまずきは電子メールの送信にあるようです。私のコードは次のとおりです。

private void sendOffenderMail( OffenceDetails offence )
{
    if( offence.email == null || offence.email.equals("") )
    {
        return;
    }

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

    String msgBody = "You have been added to the list";

    if( offence.notes != null && !offence.notes.equals( "" ) )
    {
        msgBody += "\n\nThe following notes were included:\n\n" + offence.notes;
    }

    Message msg = new MimeMessage(session);

    try {

        msg.setFrom( new InternetAddress(<gmail account belonging to project viewer>, "List Admin") );
        msg.addRecipient(
                Message.RecipientType.TO,
                new InternetAddress (offence.email, offence.name )
                );
        msg.setSubject("You've been added to the list...");
        msg.setText(msgBody);
        Transport.send(msg);

    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    } catch (MessagingException e) {
        e.printStackTrace();
    }
}

これを開発サーバーで実行すると、送信されたはずのメールに関するログがコンソールに出力されます。App Engine にデプロイして試してみると、何も起こらず、メールが届きません。

クォータの詳細を調べると、そこにメール API 呼び出しが表示されます。ログを見ると、エラーはありません (ただし、そこにログが表示されません...)。

これを送信するために基本的に料金が請求されている (クォータを使い果たした) のに、実際にメールが届かないのは奇妙に思えます。

ところで、スパムフォルダをチェックしました。

4

2 に答える 2

3

ご利用のgmailアカウントはProject Viewerのようです。ドキュメントには、開発者である必要があると記載されています。

于 2013-02-17T20:03:33.617 に答える
0

最後に、現在ログインしているユーザーの電子メール アドレスを使用しました。これは、管理者である場合にのみアプリのこの部分にアクセスできるため、常に管理者です。管理者の 1 人に属するハードワイヤード アドレスを使用して動作させることができませんでした。

于 2013-02-19T13:19:56.423 に答える