<p dir="auto"><strong><a href="https://jira.spring.io/secure/ViewProfile.jspa?name=kuzmich" rel="nofollow">Pavel Kuzin</a></strong> opened <strong><a href="https://jira.spring.io/browse/SPR-6359?redirect=false" rel="nofollow">SPR-6359</a></strong> and commented</p>
<p dir="auto">Error while deploing application.<br>
With RC1 - it was OK.</p>
<p dir="auto">SEVERE: Application context refresh failed (OsgiBundleXmlApplicationContext(bundle=ndx.billing.DatabaseFunctions, config=osgibundle:/META-INF/spring/*.xml))<br>
java.lang.NullPointerException<br>
at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:861)<br>
at org.springframework.osgi.context.support.AbstractOsgiBundleApplicationContext.finishRefresh(AbstractOsgiBundleApplicationContext.java:235)<br>
at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:358)<br>
at org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)<br>
at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:320)<br>
at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:136)<br>
at java.lang.Thread.run(Thread.java:619)<br>
Nov 16, 2009 12:27:05 PM<br>
SEVERE: Exception in thread "SpringOsgiExtenderThread-14"<br>
Nov 16, 2009 12:27:05 PM<br>
SEVERE: java.lang.NullPointerException<br>
at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:861)<br>
at org.springframework.osgi.context.support.AbstractOsgiBundleApplicationContext.finishRefresh(AbstractOsgiBundleApplicationContext.java:235)<br>
at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:358)<br>
at org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)<br>
at org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:320)<br>
at org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:136)<br>
at java.lang.Thread.run(Thread.java:619)</p>
<hr>
<p dir="auto"><strong>Affects:</strong> 3.0 RC2</p>
<p dir="auto"><strong>Issue Links:</strong></p>
<ul dir="auto">
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398099188" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/11022" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/11022/hovercard" href="https://github.com/spring-projects/spring-framework/issues/11022">#11022</a> NPE in AbstractApplicationContext finishRefresh when initialized via Spring DM (<em><strong>"duplicates"</strong></em>)</li>
</ul>
<p dir="auto"><strong><a href="https://jira.spring.io/secure/ViewProfile.jspa?name=chelya" rel="nofollow">Andrey Akselrod</a></strong> opened <strong><a href="https://jira.spring.io/browse/SPR-2018?redirect=false" rel="nofollow">SPR-2018</a></strong> and commented</p>
<p dir="auto">MailSender uses conrete class SimpleMailMessage. Instead it should use an interface with the getter methods it needs - the opposite of MailMessage interface which contains setters.<br>
SimpleMailMessage would implement MailMessage and this other new interface.</p>
<p dir="auto">It will allow to specify an alternative way for setting email values. For example I can implement my own SimpleVelocityMailMessage class that will only implement that new interface. I can have setTemplate(tpl, model) in my class without having to have setText(text). I don't have to implement MailMessage interface or extend SimpleMailMessage class.</p>
<hr>
<p dir="auto"><strong>Affects:</strong> 2.0 M4</p>
<p dir="auto"><strong>Issue Links:</strong></p>
<ul dir="auto">
<li><a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="398061223" data-permission-text="Title is private" data-url="https://github.com/spring-projects/spring-framework/issues/6139" data-hovercard-type="issue" data-hovercard-url="/spring-projects/spring-framework/issues/6139/hovercard" href="https://github.com/spring-projects/spring-framework/issues/6139">#6139</a> MailSender.send() method takes SimpleMailMessage parameter, which causes trouble when abstracting (<em><strong>"duplicates"</strong></em>)</li>
</ul>