予約が完了したら、クライアントに確認メールを送信する必要があります。エステ用のHTMLメールになります。
電子メール メッセージには、ユーザーが入力したデータが含まれます。
メールの送信方法に関するさまざまなガイドを既に調べました。
しかし、HTML 電子メール メッセージを作成する方法についての指針が必要です。別の投稿で言及されていたので、 jatlを考えていました。しかし、これが最善の方法であるかどうかは不明です。
ありがとう!:)
予約が完了したら、クライアントに確認メールを送信する必要があります。エステ用のHTMLメールになります。
電子メール メッセージには、ユーザーが入力したデータが含まれます。
メールの送信方法に関するさまざまなガイドを既に調べました。
しかし、HTML 電子メール メッセージを作成する方法についての指針が必要です。別の投稿で言及されていたので、 jatlを考えていました。しかし、これが最善の方法であるかどうかは不明です。
ありがとう!:)
再利用できるテンプレートの電子メールが必要なようで、その場で (電子メールを送信する際に) ユーザー名などを入力します。http://www.stringtemplate.org/をご覧になることをお勧めします。
文字列テンプレートは私にとって驚異的に機能します。
Velocity テンプレートを使用することをお勧めします。Velocity Template を使用して HTML 電子メール テンプレートを作成し、VelocityEngine を使用して Java コードから呼び出すことができます。
Velocity の使用については、このドキュメントを参照してください。
詳細については、メール テンプレートでの使用方法に関する次の URL をご覧ください。
http://www.java2s.com/Code/Java/Velocity/UseVelocitytogenerateHTMLbasedemail.htm
私が以前にこれを解決した方法は、JSP を文字列に出力し、その文字列を電子メールの本文として送信することでした。これは、既に webapp を使用している場合 (私はそうでした) は簡単です。Web アプリケーションを使用していない場合は、お勧めしません。
これは、それを行う方法に関するスタックオーバーフローの回答です。 そして、ここに私が使用するサンプルコードがあります:
public static String generateEmailBodyAsString(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, ServletContext servletContext) throws Exception {
StringWriter stringWriter = new StringWriter();
final PrintWriter printWriter = new PrintWriter(stringWriter);
final ServletOutputStream outputStream = new ServletOutputStream() {
@Override
public void write(int b) throws IOException {
printWriter.write(b);
}
};
HttpServletResponseWrapper wrapper = new HttpServletResponseWrapper(httpServletResponse) {
@Override
public PrintWriter getWriter() throws IOException {
return printWriter;
}
@Override
public ServletOutputStream getOutputStream() throws IOException {
return outputStream;
}
};
httpServletRequest.setAttribute("youCanAccessThisAsAVariableInYourJsp", "some value"); //in your jsp refer to it as ${youCanAccessThisAsAVariableInYourJsp}
servletContext.getRequestDispatcher("/emailBody.jsp").include(httpServletRequest, wrapper);
return stringWriter.toString();
}
(注: このコードはコンパイルされますが、実行時に機能しない可能性があるため、アプリの詳細を非表示にするように変更しました。問題がある場合は、コメントを追加してください。お手伝いします)
以前は常に Velocity を使用していましたが、Objective-C で OSX プロジェクトを行っているときに、Mustache テンプレート エンジンに出会いました。. クールな名前を持ち、かなりうまく機能します。ほぼすべての言語で利用できます。Java バージョンは次のとおりです: https://github.com/spullara/mustache.java
実際の送信部分については、純粋な javax.mail API よりも Spring をお勧めします (私はいつも少し不可解であることに気付きました - 使いやすさではなく、柔軟性のために設計されたと思います)。. ドキュメント: http://static.springsource.org/spring/docs/2.0.8/reference/mail.html