2017-07-10 10 views
1

私たちは、DSpaceから送信された電子メールメッセージにHTMLレイアウトを追加したいと考えています。
eMailテンプレートの1つにHTMLタグを「購読」として追加するだけでは機能しません。
私はいくつかのJavaプログラミングをしなければならないと思いますが、どこから始めたらいいか分かりません。
誰かがDSpace eMailでHTMLを使った経験がありますか?DSpaceメッセージのHTML

答えて

2

EMailにHTMLタグを追加することはできますが、これにはデフォルトのEMailクラスを変更する必要があります。

これは、以下の変更で構成されています

  • 送信実際のメッセージのテキストを設定する場合、追加のサブタイプ(チェック:https://github.com/DSpace/DSpace/blob/master/dspace-api/src/main/java/org/dspace/core/Email.java#L293)を添加することができます。デフォルトでは、これはテキストと文字セットを取りますが、追加の "subType"を持ちます。これを「html」に設定すると、メッセージでタグが正しくチェックされます。
  • "EMail"クラスでは、たとえば "plain"にデフォルトで設定され、セッターで上書きできる追加の "subType"変数を追加できます。 (既存のタグをチェックすると、他のテンプレートが壊れて余分な時間がかかる可能性があるため、すべての電子メールテンプレートに対してhtmlに設定するのはやめてください。
  • "サブスクリプション"テンプレートを呼び出す実際のコードは、メールを作成し、サブタイプを適切に設定できます。
  • "plain"と "html"サブタイプの違いについては、サンプル画像を参照してください。

    "plain" subtype vs "html" subtype

+0

私が編集する必要がどのスクリプト説明するためにあなたのジョナスありがとうございます。
The –

+0

次の質問は、スクリプトのどの部分がhtmlタグ付きのテンプレートを適切な形式のメッセージに変換するのでしょうか?それともそれはまだ書かれていますか? –

+0

htmlタグの解析は、現在使用されているコードにすでに存在しています。 EMailクラスは、実際に送信するメールを作成するために、以下を使用します。 MimeMessageには、メールの送信時に使用する実際のコンテンツ、受信者、sentDateなどが含まれています。このクラスは、htmlタグから正しくフォーマットされたメールへの解析を行います 詳細については、「MimeMessage」のドキュメントを参照してください。 (これには、3つの「setText」メソッドがあり、より特定のパラメータでメソッドを呼び出すことができます。 http://docs.oracle.com/javaee/7/api/javax/mail/internet/MimeMessage.html#setText-java。 lang.String- –

関連する問題