[ 
https://issues.jboss.org/browse/WELD-994?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Marko Lukša resolved WELD-994.
------------------------------

    Fix Version/s:     (was: 1.2.0.Beta1)
       Resolution: Won't Fix


Reverted.
                
> Passivating Beans do not allow Injection of non-serializable Instance 
> injections
> --------------------------------------------------------------------------------
>
>                 Key: WELD-994
>                 URL: https://issues.jboss.org/browse/WELD-994
>             Project: Weld
>          Issue Type: Bug
>          Components: Producers (Methods, Fields and Disposers)
>    Affects Versions: 1.1.2.Final
>         Environment: AS 7.0.2
> WELD-000900 1.1.2 (Final)
>            Reporter: Cody Lerum
>            Assignee: Marko Lukša
>
> Given the following Code
> {code:java}
> @ConversationScoped
> @Named
> public class EmailTester implements Serializable {
>     private static final long serialVersionUID = 1L;
>     @Inject
>     private Instance<MailMessage> mailMessage;
>     @Inject
>     private ActiveUser activeUser;
>     @Inject
>     private Messages messages;
>     
>     @Inject 
>     private Instance<Session> session;
>     public void send()
>     {
>         MailMessage m = mailMessage.get();
>         m.from(activeUser.getUser());
>         m.to(activeUser.getUser());
>         m.subject("test");
>         m.bodyText("Blah blah blah");
>         m.send(session.get());
>         messages.info("Message Sent");
>     }
> }
> {code}
> Weld throws
> org.jboss.weld.exceptions.IllegalProductException: WELD-000054 Producers 
> cannot produce non-serializable instances for injection into non-transient 
> fields of passivating beans\\n\\nProducer\:  Producer Method [Session] with 
> qualifiers [@Any @Default] declared as [[method] @Produces @ExtensionManaged 
> public 
> org.jboss.seam.mail.core.MailSessionProducer.getMailSession(MailConfig)]\\nInjection
>  Point\:  
> org.jboss.weld.bean.builtin.InstanceImpl$InstanceInjectionPoint@2146ca: 
> javax.faces.FacesException: #{emailTester.send()}: 
> org.jboss.weld.exceptions.IllegalProductException: WELD-000054 Producers 
> cannot produce non-serializable instances for injection into non-transient 
> fields of passivating beans\\n\\nProducer\:  Producer Method [Session] with 
> qualifiers [@Any @Default] declared as [[method] @Produces @ExtensionManaged 
> public 
> org.jboss.seam.mail.core.MailSessionProducer.getMailSession(MailConfig)]\\nInjection
>  Point\:  
> org.jboss.weld.bean.builtin.InstanceImpl$InstanceInjectionPoint@2146ca
> Since a new instance is returned each time a get() is called it should not 
> matter that the javax.mail.Session is not non-serializable

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

_______________________________________________
weld-issues mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/weld-issues

Reply via email to