2012-02-04 1 views
0

Как создать экземпляр MimeMessageHelper с помощью конструктора.Отображение конструктора Spring MimeMessageHelper?

MimeMessageHelper mimeMessageHelper2 = new MimeMessageHelper(mimeMessage, true); 

я попробовал с этим

<beans:bean id="mimeMessageHelper" class="org.springframework.mail.javamail.MimeMessageHelper"> 
     <beans:constructor-arg index = "0"> 
      <beans:ref bean="mimeMessage" /> 
     </beans:constructor-arg> 
     <beans:constructor-arg index = "1" type = "java.lang.Boolean" value="true"/> 

    </beans:bean> 

с этой конфигурации пружины может не в состоянии создать экземпляр mimeMessageHelper

org.springframework.beans.factory.BeanCreationException: Ошибка при создании боб с name 'mimeMessageHelper', определенный в ресурсе path path [web-application-config.xml]: 2 аргумента конструктора, но не найден соответствующий конструктор в bean 'mimeMessageHelper' (подсказка: укажите индекс и/или t Ype аргументы для простых параметров, чтобы избежать неоднозначности типа)

+0

Какое сообщение об ошибке вы получаете? –

+0

обновленный код просто посмотрите .. –

+1

'MimeMessageHelper' не предназначен для использования в качестве весеннего боба, он предназначен для создания вручную в вашем коде. В XML нет никакой ценности, просто используйте 'new'. – skaffman

ответ

0

Я не могу проверить это код, в котором I'm сидит сейчас, но попытаться добавить тип для mimeMessage

<beans:constructor-arg index = "0" type="javax.mail.internet.MimeMessage"> 
    <beans:ref bean="mimeMessage" /> 
</beans:constructor-arg> 
+0

но я хочу включить атрибут multipart здесь ... –

+0

Взгляните на свой код, это только один из аргументов конструктора, который у вас есть. Добавьте тип в свой аргумент и попробуйте. Но, как я уже сказал, я не могу попробовать это сейчас, так что это всего лишь предположение. –