<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head><meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>SMTPNotifier xref</title>
<link type="text/css" rel="stylesheet" href="../../../../../stylesheet.css" />
</head>
<body>
<div id="overview"><a href="../../../../../../apidocs/org/apache/juddi/subscription/notify/SMTPNotifier.html">View Javadoc</a></div><pre>
<a class="jxr_linenumber" name="L1" href="#L1">1</a>   <em class="jxr_comment">/*</em>
<a class="jxr_linenumber" name="L2" href="#L2">2</a>   <em class="jxr_comment"> * Copyright 2001-2008 The Apache Software Foundation.</em>
<a class="jxr_linenumber" name="L3" href="#L3">3</a>   <em class="jxr_comment"> * </em>
<a class="jxr_linenumber" name="L4" href="#L4">4</a>   <em class="jxr_comment"> * Licensed under the Apache License, Version 2.0 (the "License");</em>
<a class="jxr_linenumber" name="L5" href="#L5">5</a>   <em class="jxr_comment"> * you may not use this file except in compliance with the License.</em>
<a class="jxr_linenumber" name="L6" href="#L6">6</a>   <em class="jxr_comment"> * You may obtain a copy of the License at</em>
<a class="jxr_linenumber" name="L7" href="#L7">7</a>   <em class="jxr_comment"> * </em>
<a class="jxr_linenumber" name="L8" href="#L8">8</a>   <em class="jxr_comment"> *      <a href="http://www.apache.org/licenses/LICENSE-2." target="alexandria_uri">http://www.apache.org/licenses/LICENSE-2.</a>0</em>
<a class="jxr_linenumber" name="L9" href="#L9">9</a>   <em class="jxr_comment"> * </em>
<a class="jxr_linenumber" name="L10" href="#L10">10</a>  <em class="jxr_comment"> * Unless required by applicable law or agreed to in writing, software</em>
<a class="jxr_linenumber" name="L11" href="#L11">11</a>  <em class="jxr_comment"> * distributed under the License is distributed on an "AS IS" BASIS,</em>
<a class="jxr_linenumber" name="L12" href="#L12">12</a>  <em class="jxr_comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</em>
<a class="jxr_linenumber" name="L13" href="#L13">13</a>  <em class="jxr_comment"> * See the License for the specific language governing permissions and</em>
<a class="jxr_linenumber" name="L14" href="#L14">14</a>  <em class="jxr_comment"> * limitations under the License.</em>
<a class="jxr_linenumber" name="L15" href="#L15">15</a>  <em class="jxr_comment"> *</em>
<a class="jxr_linenumber" name="L16" href="#L16">16</a>  <em class="jxr_comment"> */</em>
<a class="jxr_linenumber" name="L17" href="#L17">17</a>  <strong class="jxr_keyword">package</strong> org.apache.juddi.subscription.notify;
<a class="jxr_linenumber" name="L18" href="#L18">18</a>  
<a class="jxr_linenumber" name="L19" href="#L19">19</a>  <strong class="jxr_keyword">import</strong> java.net.URISyntaxException;
<a class="jxr_linenumber" name="L20" href="#L20">20</a>  <strong class="jxr_keyword">import</strong> java.rmi.RemoteException;
<a class="jxr_linenumber" name="L21" href="#L21">21</a>  <strong class="jxr_keyword">import</strong> java.security.InvalidAlgorithmParameterException;
<a class="jxr_linenumber" name="L22" href="#L22">22</a>  <strong class="jxr_keyword">import</strong> java.security.InvalidKeyException;
<a class="jxr_linenumber" name="L23" href="#L23">23</a>  <strong class="jxr_keyword">import</strong> java.security.NoSuchAlgorithmException;
<a class="jxr_linenumber" name="L24" href="#L24">24</a>  <strong class="jxr_keyword">import</strong> java.util.Properties;
<a class="jxr_linenumber" name="L25" href="#L25">25</a>  
<a class="jxr_linenumber" name="L26" href="#L26">26</a>  <strong class="jxr_keyword">import</strong> javax.crypto.BadPaddingException;
<a class="jxr_linenumber" name="L27" href="#L27">27</a>  <strong class="jxr_keyword">import</strong> javax.crypto.IllegalBlockSizeException;
<a class="jxr_linenumber" name="L28" href="#L28">28</a>  <strong class="jxr_keyword">import</strong> javax.crypto.NoSuchPaddingException;
<a class="jxr_linenumber" name="L29" href="#L29">29</a>  <strong class="jxr_keyword">import</strong> javax.mail.Address;
<a class="jxr_linenumber" name="L30" href="#L30">30</a>  <strong class="jxr_keyword">import</strong> javax.mail.Message.RecipientType;
<a class="jxr_linenumber" name="L31" href="#L31">31</a>  <strong class="jxr_keyword">import</strong> javax.mail.PasswordAuthentication;
<a class="jxr_linenumber" name="L32" href="#L32">32</a>  <strong class="jxr_keyword">import</strong> javax.mail.Session;
<a class="jxr_linenumber" name="L33" href="#L33">33</a>  <strong class="jxr_keyword">import</strong> javax.mail.Transport;
<a class="jxr_linenumber" name="L34" href="#L34">34</a>  <strong class="jxr_keyword">import</strong> javax.mail.internet.InternetAddress;
<a class="jxr_linenumber" name="L35" href="#L35">35</a>  <strong class="jxr_keyword">import</strong> javax.mail.internet.MimeMessage;
<a class="jxr_linenumber" name="L36" href="#L36">36</a>  
<a class="jxr_linenumber" name="L37" href="#L37">37</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.configuration.ConfigurationException;
<a class="jxr_linenumber" name="L38" href="#L38">38</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.lang.StringEscapeUtils;
<a class="jxr_linenumber" name="L39" href="#L39">39</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.logging.Log;
<a class="jxr_linenumber" name="L40" href="#L40">40</a>  <strong class="jxr_keyword">import</strong> org.apache.commons.logging.LogFactory;
<a class="jxr_linenumber" name="L41" href="#L41">41</a>  <strong class="jxr_keyword">import</strong> org.apache.juddi.api_v3.AccessPointType;
<a class="jxr_linenumber" name="L42" href="#L42">42</a>  <strong class="jxr_keyword">import</strong> org.apache.juddi.config.AppConfig;
<a class="jxr_linenumber" name="L43" href="#L43">43</a>  <strong class="jxr_keyword">import</strong> org.apache.juddi.config.Property;
<a class="jxr_linenumber" name="L44" href="#L44">44</a>  <strong class="jxr_keyword">import</strong> org.apache.juddi.config.ResourceConfig;
<a class="jxr_linenumber" name="L45" href="#L45">45</a>  <strong class="jxr_keyword">import</strong> org.apache.juddi.cryptor.CryptorFactory;
<a class="jxr_linenumber" name="L46" href="#L46">46</a>  <strong class="jxr_keyword">import</strong> org.apache.juddi.jaxb.JAXBMarshaller;
<a class="jxr_linenumber" name="L47" href="#L47">47</a>  <strong class="jxr_keyword">import</strong> org.apache.juddi.model.BindingTemplate;
<a class="jxr_linenumber" name="L48" href="#L48">48</a>  <strong class="jxr_keyword">import</strong> org.uddi.api_v3.DispositionReport;
<a class="jxr_linenumber" name="L49" href="#L49">49</a>  <strong class="jxr_keyword">import</strong> org.uddi.api_v3.Result;
<a class="jxr_linenumber" name="L50" href="#L50">50</a>  <strong class="jxr_keyword">import</strong> org.uddi.subr_v3.NotifySubscriptionListener;
<a class="jxr_linenumber" name="L51" href="#L51">51</a>  <strong class="jxr_keyword">import</strong> org.uddi.v3_service.DispositionReportFaultMessage;
<a class="jxr_linenumber" name="L52" href="#L52">52</a>  
<a class="jxr_linenumber" name="L53" href="#L53">53</a>  <em class="jxr_javadoccomment">/**</em>
<a class="jxr_linenumber" name="L54" href="#L54">54</a>  <em class="jxr_javadoccomment"> * This class sends Email alerts when a specific subscription is tripped. </em>
<a class="jxr_linenumber" name="L55" href="#L55">55</a>  <em class="jxr_javadoccomment"> * The following properties can be set in the juddiv3.xml, or as System params.</em>
<a class="jxr_linenumber" name="L56" href="#L56">56</a>  <em class="jxr_javadoccomment"> * </em>
<a class="jxr_linenumber" name="L57" href="#L57">57</a>  <em class="jxr_javadoccomment"> * "mail.smtp.from", "mail.smtp.host", "mail.smtp.port", </em>
<a class="jxr_linenumber" name="L58" href="#L58">58</a>  <em class="jxr_javadoccomment"> * "mail.smtp.socketFactory.class", "mail.smtp.socketFactory.fallback", "mail.smtp.starttls.enable",</em>
<a class="jxr_linenumber" name="L59" href="#L59">59</a>  <em class="jxr_javadoccomment"> * "mail.smtp.socketFactory.port","mail.smtp.auth","mail.smtp.user","mail.smtp.password"</em>
<a class="jxr_linenumber" name="L60" href="#L60">60</a>  <em class="jxr_javadoccomment"> *		</em>
<a class="jxr_linenumber" name="L61" href="#L61">61</a>  <em class="jxr_javadoccomment"> * The following properties can be set juddiv3.xml.</em>
<a class="jxr_linenumber" name="L62" href="#L62">62</a>  <em class="jxr_javadoccomment"> * </em>
<a class="jxr_linenumber" name="L63" href="#L63">63</a>  <em class="jxr_javadoccomment"> * @author Kurt Stam</em>
<a class="jxr_linenumber" name="L64" href="#L64">64</a>  <em class="jxr_javadoccomment"> */</em>
<a class="jxr_linenumber" name="L65" href="#L65">65</a>  <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">class</strong> <a href="../../../../../org/apache/juddi/subscription/notify/SMTPNotifier.html">SMTPNotifier</a> <strong class="jxr_keyword">implements</strong> <a href="../../../../../org/apache/juddi/subscription/notify/Notifier.html">Notifier</a> {
<a class="jxr_linenumber" name="L66" href="#L66">66</a>  
<a class="jxr_linenumber" name="L67" href="#L67">67</a>  	<strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">static</strong> <strong class="jxr_keyword">final</strong> Log log = LogFactory.getLog(SMTPNotifier.<strong class="jxr_keyword">class</strong>);
<a class="jxr_linenumber" name="L68" href="#L68">68</a>  	<strong class="jxr_keyword">protected</strong> String notificationEmailAddress = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="L69" href="#L69">69</a>  	<em class="jxr_comment">//String from = null;</em>
<a class="jxr_linenumber" name="L70" href="#L70">70</a>  	<strong class="jxr_keyword">protected</strong> Session session = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="L71" href="#L71">71</a>  	<strong class="jxr_keyword">protected</strong> Properties properties = <strong class="jxr_keyword">null</strong>;
<a class="jxr_linenumber" name="L72" href="#L72">72</a>  
<a class="jxr_linenumber" name="L73" href="#L73">73</a>  	<strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">final</strong> <strong class="jxr_keyword">static</strong> String[] mailProps = {<span class="jxr_string">"mail.smtp.from"</span>, <span class="jxr_string">"mail.smtp.host"</span>, <span class="jxr_string">"mail.smtp.port"</span>, 
<a class="jxr_linenumber" name="L74" href="#L74">74</a>  		<span class="jxr_string">"mail.smtp.socketFactory.class"</span>, <span class="jxr_string">"mail.smtp.socketFactory.fallback"</span>, <span class="jxr_string">"mail.smtp.starttls.enable"</span>,
<a class="jxr_linenumber" name="L75" href="#L75">75</a>  		<span class="jxr_string">"mail.smtp.socketFactory.port"</span>,<span class="jxr_string">"mail.smtp.auth"</span>,<span class="jxr_string">"mail.smtp.user"</span>,<span class="jxr_string">"mail.smtp.password"</span>,<span class="jxr_string">"mail.debug"</span>};
<a class="jxr_linenumber" name="L76" href="#L76">76</a>  
<a class="jxr_linenumber" name="L77" href="#L77">77</a>  	<strong class="jxr_keyword">protected</strong> <strong class="jxr_keyword">final</strong> Properties getEMailProperties() <strong class="jxr_keyword">throws</strong> ConfigurationException {
<a class="jxr_linenumber" name="L78" href="#L78">78</a>  		<strong class="jxr_keyword">if</strong> (properties==<strong class="jxr_keyword">null</strong> || properties.isEmpty()) {
<a class="jxr_linenumber" name="L79" href="#L79">79</a>  			properties = <strong class="jxr_keyword">new</strong> Properties();
<a class="jxr_linenumber" name="L80" href="#L80">80</a>  			String mailPrefix = AppConfig.getConfiguration().getString(Property.JUDDI_EMAIL_PREFIX, Property.DEFAULT_JUDDI_EMAIL_PREFIX);
<a class="jxr_linenumber" name="L81" href="#L81">81</a>  			<strong class="jxr_keyword">if</strong> (! mailPrefix.endsWith(<span class="jxr_string">"."</span>)) mailPrefix = mailPrefix + <span class="jxr_string">"."</span>;
<a class="jxr_linenumber" name="L82" href="#L82">82</a>  			<strong class="jxr_keyword">for</strong> (String key: mailProps) {
<a class="jxr_linenumber" name="L83" href="#L83">83</a>  				<strong class="jxr_keyword">if</strong> (AppConfig.getConfiguration().containsKey(mailPrefix + key)) {
<a class="jxr_linenumber" name="L84" href="#L84">84</a>  					properties.put(key, AppConfig.getConfiguration().getProperty(mailPrefix + key));
<a class="jxr_linenumber" name="L85" href="#L85">85</a>  				} <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (System.getProperty(mailPrefix + key) != <strong class="jxr_keyword">null</strong>) {
<a class="jxr_linenumber" name="L86" href="#L86">86</a>  					properties.put(key, System.getProperty(mailPrefix + key));
<a class="jxr_linenumber" name="L87" href="#L87">87</a>  				}
<a class="jxr_linenumber" name="L88" href="#L88">88</a>  			}
<a class="jxr_linenumber" name="L89" href="#L89">89</a>  		}
<a class="jxr_linenumber" name="L90" href="#L90">90</a>  		<strong class="jxr_keyword">return</strong> properties;
<a class="jxr_linenumber" name="L91" href="#L91">91</a>  	}
<a class="jxr_linenumber" name="L92" href="#L92">92</a>  
<a class="jxr_linenumber" name="L93" href="#L93">93</a>  	<strong class="jxr_keyword">public</strong> <a href="../../../../../org/apache/juddi/subscription/notify/SMTPNotifier.html">SMTPNotifier</a>(<a href="../../../../../org/apache/juddi/model/BindingTemplate.html">BindingTemplate</a> bindingTemplate) <strong class="jxr_keyword">throws</strong> URISyntaxException, Exception {
<a class="jxr_linenumber" name="L94" href="#L94">94</a>  		<strong class="jxr_keyword">super</strong>();
<a class="jxr_linenumber" name="L95" href="#L95">95</a>  		<strong class="jxr_keyword">if</strong> (!AccessPointType.END_POINT.toString().equalsIgnoreCase(bindingTemplate.getAccessPointType())) {
<a class="jxr_linenumber" name="L96" href="#L96">96</a>  			log.error(<span class="jxr_string">"smtp enpoints only support AccessPointType "</span> + AccessPointType.END_POINT);
<a class="jxr_linenumber" name="L97" href="#L97">97</a>  		}
<a class="jxr_linenumber" name="L98" href="#L98">98</a>  		String accessPointUrl = bindingTemplate.getAccessPointUrl().toLowerCase();
<a class="jxr_linenumber" name="L99" href="#L99">99</a>  		<strong class="jxr_keyword">if</strong> (!accessPointUrl.startsWith(<span class="jxr_string">"mailto:"</span>)) {
<a class="jxr_linenumber" name="L100" href="#L100">100</a> 			log.warn(<span class="jxr_string">"smtp accessPointUrl for bindingTemplate "</span> + bindingTemplate.getEntityKey() + 
<a class="jxr_linenumber" name="L101" href="#L101">101</a> 					<span class="jxr_string">" should start with 'mailto'"</span>);
<a class="jxr_linenumber" name="L102" href="#L102">102</a> 			<em class="jxr_comment">//TODO maybe update the user's bindingTemplate with the error?, and also validate setting onsave</em>
<a class="jxr_linenumber" name="L103" href="#L103">103</a> 		} <strong class="jxr_keyword">else</strong> {
<a class="jxr_linenumber" name="L104" href="#L104">104</a> 			notificationEmailAddress = accessPointUrl.substring(accessPointUrl.indexOf(<span class="jxr_string">":"</span>)+1);
<a class="jxr_linenumber" name="L105" href="#L105">105</a>                         <strong class="jxr_keyword">boolean</strong> auth=(getEMailProperties().getProperty(<span class="jxr_string">"mail.smtp.auth"</span>, <span class="jxr_string">"false"</span>)).equalsIgnoreCase(<span class="jxr_string">"true"</span>);
<a class="jxr_linenumber" name="L106" href="#L106">106</a> 			<strong class="jxr_keyword">if</strong> (auth) {
<a class="jxr_linenumber" name="L107" href="#L107">107</a> 				<strong class="jxr_keyword">final</strong> String username = getEMailProperties().getProperty(<span class="jxr_string">"mail.smtp.user"</span>);
<a class="jxr_linenumber" name="L108" href="#L108">108</a> 				String pwd = getEMailProperties().getProperty(<span class="jxr_string">"mail.smtp.password"</span>);
<a class="jxr_linenumber" name="L109" href="#L109">109</a>                                 <em class="jxr_comment">//decrypt if possible</em>
<a class="jxr_linenumber" name="L110" href="#L110">110</a> 				<strong class="jxr_keyword">if</strong> (getEMailProperties().getProperty(<span class="jxr_string">"mail.smtp.password"</span> + Property.ENCRYPTED_ATTRIBUTE, <span class="jxr_string">"false"</span>).equalsIgnoreCase(<span class="jxr_string">"true"</span>))
<a class="jxr_linenumber" name="L111" href="#L111">111</a> 				{
<a class="jxr_linenumber" name="L112" href="#L112">112</a> 					<strong class="jxr_keyword">try</strong> {
<a class="jxr_linenumber" name="L113" href="#L113">113</a> 						pwd = CryptorFactory.getCryptor().decrypt(pwd);
<a class="jxr_linenumber" name="L114" href="#L114">114</a> 					} <strong class="jxr_keyword">catch</strong> (NoSuchPaddingException ex) {
<a class="jxr_linenumber" name="L115" href="#L115">115</a> 						log.error(<span class="jxr_string">"Unable to decrypt settings"</span>,ex);
<a class="jxr_linenumber" name="L116" href="#L116">116</a> 					} <strong class="jxr_keyword">catch</strong> (NoSuchAlgorithmException ex) {
<a class="jxr_linenumber" name="L117" href="#L117">117</a> 						log.error(<span class="jxr_string">"Unable to decrypt settings"</span>,ex);
<a class="jxr_linenumber" name="L118" href="#L118">118</a> 					} <strong class="jxr_keyword">catch</strong> (InvalidAlgorithmParameterException ex) {
<a class="jxr_linenumber" name="L119" href="#L119">119</a> 						log.error(<span class="jxr_string">"Unable to decrypt settings"</span>,ex);
<a class="jxr_linenumber" name="L120" href="#L120">120</a> 					} <strong class="jxr_keyword">catch</strong> (InvalidKeyException ex) {
<a class="jxr_linenumber" name="L121" href="#L121">121</a> 						log.error(<span class="jxr_string">"Unable to decrypt settings"</span>,ex);
<a class="jxr_linenumber" name="L122" href="#L122">122</a> 					} <strong class="jxr_keyword">catch</strong> (IllegalBlockSizeException ex) {
<a class="jxr_linenumber" name="L123" href="#L123">123</a> 						log.error(<span class="jxr_string">"Unable to decrypt settings"</span>,ex);
<a class="jxr_linenumber" name="L124" href="#L124">124</a> 					} <strong class="jxr_keyword">catch</strong> (BadPaddingException ex) {
<a class="jxr_linenumber" name="L125" href="#L125">125</a> 						log.error(<span class="jxr_string">"Unable to decrypt settings"</span>,ex);
<a class="jxr_linenumber" name="L126" href="#L126">126</a> 					}
<a class="jxr_linenumber" name="L127" href="#L127">127</a> 				}
<a class="jxr_linenumber" name="L128" href="#L128">128</a> 				<strong class="jxr_keyword">final</strong> String password = pwd;
<a class="jxr_linenumber" name="L129" href="#L129">129</a>                                 log.debug(<span class="jxr_string">"SMTP username = "</span> + username + <span class="jxr_string">" from address = "</span> + notificationEmailAddress);
<a class="jxr_linenumber" name="L130" href="#L130">130</a>                                 Properties eMailProperties = getEMailProperties();
<a class="jxr_linenumber" name="L131" href="#L131">131</a>                                 eMailProperties.remove(<span class="jxr_string">"mail.smtp.user"</span>);
<a class="jxr_linenumber" name="L132" href="#L132">132</a>                                 eMailProperties.remove(<span class="jxr_string">"mail.smtp.password"</span>);
<a class="jxr_linenumber" name="L133" href="#L133">133</a> 				session = Session.getInstance(getEMailProperties(), <strong class="jxr_keyword">new</strong> javax.mail.Authenticator() {
<a class="jxr_linenumber" name="L134" href="#L134">134</a> 					<strong class="jxr_keyword">protected</strong> PasswordAuthentication getPasswordAuthentication() {
<a class="jxr_linenumber" name="L135" href="#L135">135</a> 						<strong class="jxr_keyword">return</strong> <strong class="jxr_keyword">new</strong> PasswordAuthentication(username, password);
<a class="jxr_linenumber" name="L136" href="#L136">136</a> 					}
<a class="jxr_linenumber" name="L137" href="#L137">137</a> 				});
<a class="jxr_linenumber" name="L138" href="#L138">138</a> 			} <strong class="jxr_keyword">else</strong> {
<a class="jxr_linenumber" name="L139" href="#L139">139</a>                                 Properties eMailProperties = getEMailProperties();
<a class="jxr_linenumber" name="L140" href="#L140">140</a>                                 eMailProperties.remove(<span class="jxr_string">"mail.smtp.user"</span>);
<a class="jxr_linenumber" name="L141" href="#L141">141</a>                                 eMailProperties.remove(<span class="jxr_string">"mail.smtp.password"</span>);
<a class="jxr_linenumber" name="L142" href="#L142">142</a> 				session = Session.getInstance(eMailProperties);
<a class="jxr_linenumber" name="L143" href="#L143">143</a> 			}
<a class="jxr_linenumber" name="L144" href="#L144">144</a> 		}
<a class="jxr_linenumber" name="L145" href="#L145">145</a> 	}
<a class="jxr_linenumber" name="L146" href="#L146">146</a> 
<a class="jxr_linenumber" name="L147" href="#L147">147</a> 	<strong class="jxr_keyword">public</strong> DispositionReport notifySubscriptionListener(NotifySubscriptionListener body) <strong class="jxr_keyword">throws</strong> DispositionReportFaultMessage, RemoteException {
<a class="jxr_linenumber" name="L148" href="#L148">148</a> 
<a class="jxr_linenumber" name="L149" href="#L149">149</a> 		
<a class="jxr_linenumber" name="L150" href="#L150">150</a> 
<a class="jxr_linenumber" name="L151" href="#L151">151</a> 		<strong class="jxr_keyword">try</strong> {
<a class="jxr_linenumber" name="L152" href="#L152">152</a>                         log.info(<span class="jxr_string">"Sending notification email to "</span> + notificationEmailAddress + <span class="jxr_string">" from "</span> + getEMailProperties().getProperty(<span class="jxr_string">"mail.smtp.from"</span>, <span class="jxr_string">"jUDDI"</span>));
<a class="jxr_linenumber" name="L153" href="#L153">153</a> 			<strong class="jxr_keyword">if</strong> (session !=<strong class="jxr_keyword">null</strong> &amp;&amp; notificationEmailAddress != <strong class="jxr_keyword">null</strong>) {
<a class="jxr_linenumber" name="L154" href="#L154">154</a> 				MimeMessage message = <strong class="jxr_keyword">new</strong> MimeMessage(session);
<a class="jxr_linenumber" name="L155" href="#L155">155</a> 				InternetAddress address = <strong class="jxr_keyword">new</strong> InternetAddress(notificationEmailAddress);
<a class="jxr_linenumber" name="L156" href="#L156">156</a> 				Address[] to = {address};
<a class="jxr_linenumber" name="L157" href="#L157">157</a> 				message.setRecipients(RecipientType.TO, to);
<a class="jxr_linenumber" name="L158" href="#L158">158</a> 				message.setFrom(<strong class="jxr_keyword">new</strong> InternetAddress(getEMailProperties().getProperty(<span class="jxr_string">"mail.smtp.from"</span>, <span class="jxr_string">"jUDDI"</span>)));
<a class="jxr_linenumber" name="L159" href="#L159">159</a> 				<em class="jxr_comment">//maybe nice to use a template rather then sending raw xml.</em>
<a class="jxr_linenumber" name="L160" href="#L160">160</a> 				String subscriptionResultXML = JAXBMarshaller.marshallToString(body, JAXBMarshaller.PACKAGE_SUBSCR_RES);
<a class="jxr_linenumber" name="L161" href="#L161">161</a> 				message.setText(subscriptionResultXML, <span class="jxr_string">"UTF-8"</span>);
<a class="jxr_linenumber" name="L162" href="#L162">162</a>                                 <em class="jxr_comment">//message.setContent(subscriptionResultXML, "text/xml; charset=UTF-8;");</em>
<a class="jxr_linenumber" name="L163" href="#L163">163</a> 				message.setSubject(ResourceConfig.getGlobalMessage(<span class="jxr_string">"notifications.smtp.default.subject"</span>) + <span class="jxr_string">" "</span> 
<a class="jxr_linenumber" name="L164" href="#L164">164</a> 						+ StringEscapeUtils.escapeHtml(body.getSubscriptionResultsList().getSubscription().getSubscriptionKey()));
<a class="jxr_linenumber" name="L165" href="#L165">165</a> 				Transport.send(message);
<a class="jxr_linenumber" name="L166" href="#L166">166</a> 			}
<a class="jxr_linenumber" name="L167" href="#L167">167</a>                         <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DispositionReportFaultMessage(<span class="jxr_string">"Session is null!"</span>, <strong class="jxr_keyword">null</strong>);
<a class="jxr_linenumber" name="L168" href="#L168">168</a> 		} <strong class="jxr_keyword">catch</strong> (Exception e) {
<a class="jxr_linenumber" name="L169" href="#L169">169</a> 			log.error(e.getMessage(),e);
<a class="jxr_linenumber" name="L170" href="#L170">170</a> 			<strong class="jxr_keyword">throw</strong> <strong class="jxr_keyword">new</strong> DispositionReportFaultMessage(e.getMessage(), <strong class="jxr_keyword">null</strong>);
<a class="jxr_linenumber" name="L171" href="#L171">171</a> 		}
<a class="jxr_linenumber" name="L172" href="#L172">172</a> 
<a class="jxr_linenumber" name="L173" href="#L173">173</a> 		DispositionReport dr = <strong class="jxr_keyword">new</strong> DispositionReport();
<a class="jxr_linenumber" name="L174" href="#L174">174</a> 		Result res = <strong class="jxr_keyword">new</strong> Result();
<a class="jxr_linenumber" name="L175" href="#L175">175</a> 		dr.getResult().add(res);
<a class="jxr_linenumber" name="L176" href="#L176">176</a> 
<a class="jxr_linenumber" name="L177" href="#L177">177</a> 		<strong class="jxr_keyword">return</strong> dr;
<a class="jxr_linenumber" name="L178" href="#L178">178</a> 	}
<a class="jxr_linenumber" name="L179" href="#L179">179</a> }
</pre>
<hr/>
<div id="footer">Copyright &#169; 2004&#x2013;2022 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</div>
</body>
</html>
