In JSR 299, only necessary that resource is injectable if it defines @Produces so you can not remove this annotation. Actually, OWB is not responsible for injecting those fields . .ResourcePlugin is responsible for injecting fields that are annotated with @Produces.
OWB just collect injectable resources by looking at @Produces fields(Creating ResourceModel instance) and provides those fields into ResourcePlugin for injecting. After creating bean instance, if it has injectable fields(any ResourceModel), those fields are delegated to ResourcePlugin for injecting. Therefore we can not remove @Produces or @Qualifier and injects those. This is not specified in JSR-299. Your idea is used for injecting component resource defining in Java EE specification. Generally web containers and ejb container do it. (Actually, when JSR299, still those containers (plugins) do injection. JSR299 just defines Resource Beans that its instance is produced by those containers/plugins) Thanks; --Gurkan ________________________________ From: Mark Struberg <[email protected]> To: [email protected] Sent: Mon, February 15, 2010 10:11:27 PM Subject: Re: [jira] Closed: (OWB-282) Adding Default SPI Implementation for 3.6. Update names of Default service implementations. Exactly, as far as I read Section 3.5.1 and 1.3.3 which provide the following example for a producer field: @Produces @PersistenceContext(unitName="CustomerDatabase") @CustomerDatabase EntityManager customerDatabasePersistenceContext; it actually should be allowed. Take away the @Produces and @CustomerDatabase which are only for making the field a ProducerField, and you have exactly what I wrote. wdyt? LieGrue, strub --- Gurkan Erdogdu <[email protected]> schrieb am Mo, 15.2.2010: > Von: Gurkan Erdogdu <[email protected]> > Betreff: Re: [jira] Closed: (OWB-282) Adding Default SPI Implementation for > 3.6. Update names of Default service implementations. > An: [email protected] > Datum: Montag, 15. Februar, 2010 20:38 Uhr > This is not supported by OWB. > Supports resource producers beans via @Produces > @PersistenceContext EntityManager and injecting it via > @Inject EntityManager > > See section 3.5 how to inject resources. > > Thanks; > > --Gurkan > > > > > ________________________________ > From: Mark Struberg <[email protected]> > To: [email protected] > Sent: Mon, February 15, 2010 6:20:42 PM > Subject: Re: [jira] Closed: (OWB-282) Adding Default SPI > Implementation for 3.6. Update names of Default > service implementations. > > injecting a > > public class EntityManagerProducer > { > private > @PersistenceContext(unitName="TissCore") EntityManager > entityManager; > .. > > also seems broken. > > LieGrue, > strub > > --- Mark Struberg <[email protected]> > schrieb am Mo, 15.2.2010: > > > Von: Mark Struberg <[email protected]> > > Betreff: Re: [jira] Closed: (OWB-282) Adding Default > SPI Implementation for 3.6. Update names of Default > service implementations. > > An: [email protected] > > Datum: Montag, 15. Februar, 2010 12:16 Uhr > > changed and seems to work. > > > > But I also had to temporarily remove webbeans-porting > from > > our build because this is broken too. > > > > Also the change to externally injecting the id into > the > > SerializableBean (without checking it) instead of > getting it > > from the bean causes a NPE. > > I will revert those changes. > > > > LieGrue, > > strub > > > > --- Mark Struberg <[email protected]> > > schrieb am Mo, 15.2.2010: > > > > > Von: Mark Struberg <[email protected]> > > > Betreff: Re: [jira] Closed: (OWB-282) Adding > Default > > SPI Implementation for 3.6. Update names of > Default > > service implementations. > > > An: [email protected] > > > Datum: Montag, 15. Februar, 2010 10:54 Uhr > > > thanks, will try that out and report > > > back. > > > > > > LieGrue, > > > strub > > > > > > --- Gurkan Erdogdu <[email protected]> > > > schrieb am Mo, 15.2.2010: > > > > > > > Von: Gurkan Erdogdu <[email protected]> > > > > Betreff: Re: [jira] Closed: (OWB-282) > Adding > > Default > > > SPI Implementation for 3.6. Update names of > Default > > > service implementations. > > > > An: [email protected] > > > > Datum: Montag, 15. Februar, 2010 10:51 Uhr > > > > Ahh, seems found what is wrong :) > > > > > > > > Newlay added beans PrinicipalBean, > > ValidatorBean, > > > > ValidatorFactoryBean, > > > > UserTransactionBean uses super(WebBeansType) > and > > > therefore > > > > its return type > > > > is null. And in AbstractOwbBean#getId > --> > > > > returnType.equals(Object.class) > > > > throws NullPointerException. > > > > > > > > Simply change super(WebBeansType) --> > > > > super(WebBeansType, related class) > > > > > > > > Thanks; > > > > > > > > --Gurkan > > > > > > > > 2010/2/15 Gurkan Erdogdu <[email protected]> > > > > > > > > > I am going to look at it afternoon. > > > > > > > > > > > > > > > 2010/2/15 Mark Struberg <[email protected]> > > > > > > > > > >> sorry, same errors again. > > > > >> I did a complete clean checkout > and > > also > > > cleaned > > > > my maven repo. > > > > >> Here is the report: > > > > >> Results : > > > > >> > > > > >> Tests in error: > > > > >> > > > > >> > > > > > > > > > > testInheritedStereoTypeWihtInterceptorBinding(org.apache.webbeans.newtests.interceptors.business.tests.WithInheritedStereoTypeInterceptorTest) > > > > >> > > > > >> > > > > > > > > > > testDependingBeanInterceptor(org.apache.webbeans.newtests.interceptors.business.tests.DependingInterceptorTest) > > > > >> > > > > >> > > > > > > > > > > testDisposerMethod(org.apache.webbeans.newtests.disposes.DisposerMethodBeanTest) > > > > >> > > > > >> > > > > > > > > > > testProxyFactoryWithMultipleInterfaces(org.apache.webbeans.newtests.managed.ProxyFactoryTest) > > > > >> > > > > >> > > > > > > > > > > testProducerFieldAlternativeNotEnabled(org.apache.webbeans.newtests.concepts.alternatives.tests.AlternativeOnProducerFieldTest) > > > > >> > > > > >> > > > > > > > > > > testInjectionTarget(org.apache.webbeans.newtests.portable.injectiontarget.InjectionTargetTest) > > > > >> > > > > >> > > > > > > > > > > testOneNormalOneDependent(org.apache.webbeans.newtests.injection.circular.tests.CircularInjectionIntoConstructorTest) > > > > >> > > > > >> > > > > > > > > > > testInjectionTarget(org.apache.webbeans.newtests.portable.injectiontarget.supportInjections.SupportInjectionTest) > > > > >> > > > > >> > > > > > > > > > > testExtensionServices(org.apache.webbeans.test.unittests.portable.events.ExtensionTest) > > > > >> > > > > >> > > > > > > > > > > testDependentProducerMethodInjectionPoint(org.apache.webbeans.newtests.injection.injectionpoint.tests.DependentProducerMethodInjectionPointTest) > > > > >> > > > > >> > > > > > > > > > > testConversationDecorator(org.apache.webbeans.newtests.decorators.tests.ConversationDecoratorTest) > > > > >> > > > > >> > > > > > > > > > > testAppleExtension(org.apache.webbeans.newtests.portable.events.PortableEventTest) > > > > >> > > > > >> > > > > > > > > > > testNotAppleExtension(org.apache.webbeans.newtests.portable.events.PortableEventTest) > > > > >> > > > > >> > > > > > > > > > > testRawTypeExtension(org.apache.webbeans.newtests.portable.events.PortableEventTest) > > > > >> > > > > >> > > > > > > > > > > testTypeVariableExtension(org.apache.webbeans.newtests.portable.events.PortableEventTest) > > > > >> > > > > >> > > > > > > > > > > testwildcardExtension(org.apache.webbeans.newtests.portable.events.PortableEventTest) > > > > >> > > > > >> > > > > > > > > > > testWrongTypeVariableExtension(org.apache.webbeans.newtests.portable.events.PortableEventTest) > > > > >> > > > > >> > > > > > > > > > > testWrongWildcardTypeExtension(org.apache.webbeans.newtests.portable.events.PortableEventTest) > > > > >> > > > > >> > > > > > > > > > > testAfterBeanDiscoveryError(org.apache.webbeans.newtests.portable.events.ExtensionErrorsTest) > > > > >> > > > > >> > > > > > > > > > > testAfterBeanDeploymentValidationError(org.apache.webbeans.newtests.portable.events.ExtensionErrorsTest) > > > > >> > > > > >> > > > > > > > > > > testWebBeansScanner(org.apache.webbeans.test.unittests.config.WebBeansScannerTest) > > > > >> > > > > >> > > > > > > > > > > testOneNormalOneDependent(org.apache.webbeans.newtests.injection.circular.tests.CircularInjectionTest) > > > > >> > > > > >> > > > > > > > > > > testOneDependentOneNormal(org.apache.webbeans.newtests.injection.circular.tests.CircularInjectionTest) > > > > >> > > > > >> > > > > > > > > > > testPersonProducer(org.apache.webbeans.newtests.promethods.PersonProducerTest) > > > > >> > > > > >> > > > > > > > > > > testLifecycle(org.apache.webbeans.newtests.interceptors.lifecycle.inheritance.LifecycleInheritanceTest) > > > > >> > > > > >> > > > > > > > > > > testLifecycle(org.apache.webbeans.newtests.interceptors.dependent.DependentInterceptorTest) > > > > >> > > > > >> > > > > > > > > > > testBrokenInitializerBecauseofGeneric(org.apache.webbeans.newtests.concepts.initializerMethods.tests.BrokenInitializerMethodBecauseofGenericTest) > > > > >> > > > > >> > > > > > > > > > > testPersonalDataBean(org.apache.webbeans.newtests.contexts.session.tests.SessionContextTest) > > > > >> > > > > >> > > > > > > > > > > testCreationalContextSerialization(org.apache.webbeans.newtests.contexts.SerializationTest) > > > > >> > > > > >> > > > > > > > > > > testPersonalDataBean(org.apache.webbeans.newtests.contexts.SerializationTest) > > > > >> > > > > >> > > > > > > > > > > testLifecycle(org.apache.webbeans.newtests.interceptors.lifecycle.LifecycleTest) > > > > >> > > > > >> > > > > > > > > > > testNotannotated(org.apache.webbeans.newtests.interceptors.lifecycle.LifecycleTest) > > > > >> > > > > >> > > > > > > > > > > testInnerClassProducerInjection(org.apache.webbeans.newtests.profields.InnerClassInjectStringProducerTest) > > > > >> > > > > >> > > > > > > > > > > testDisposerMethod(org.apache.webbeans.newtests.disposes.DependentMethodBeanTest) > > > > >> > > > > >> > > > > > > > > > > testGetterStringInjector(org.apache.webbeans.newtests.profields.GetterStringInjectorTest) > > > > >> > > > > >> > > > > > > > > > > testAddBeanExtension(org.apache.webbeans.newtests.portable.events.PortableAddBeanTest) > > > > >> > > > > >> > > > > > > > > > > testStereoTypeBasedInterceptor(org.apache.webbeans.newtests.interceptors.business.tests.WithInheritedBindingTypeTest) > > > > >> > > > > >> > > > > > > > > > > testInheritedOverridenMethods(org.apache.webbeans.newtests.interceptors.lifecycle.inheritance.LifecycleInheritedOverridenTest) > > > > >> > > > > >> > > > > > > > > > > testAddBeanExtension(org.apache.webbeans.newtests.portable.events.PortableAddObserverMethodTest) > > > > >> > > > > > > > > > > testScopeExtension(org.apache.webbeans.newtests.portable.ExtensionTest) > > > > >> > > > > >> > > > > > > > > > > testUnserializableBean(org.apache.webbeans.newtests.portable.ExtensionTest) > > > > >> > > > > >> > > > > > > > > > > testStereoTypeBasedInterceptor(org.apache.webbeans.newtests.interceptors.business.tests.WithStereoTypeInterceptorTest) > > > > >> > > > > >> Tests run: 216, Failures: 0, > Errors: > > 42, > > > Skipped: > > > > 1 > > > > >> > > > > >> > > > > >> And a sample trace: > > > > >> > > > > > > > > > > org.apache.webbeans.newtests.interceptors.lifecycle.LifecycleTest > > > > >> > > > > >> > > > > > > > > > > testLifecycle(org.apache.webbeans.newtests.interceptors.lifecycle.LifecycleTest) > > > > >> Time elapsed: 0.014 sec > > <<< > > > > ERROR! > > > > >> > > > > > > > > > > org.apache.webbeans.exception.WebBeansDeploymentException: > > > > >> java.lang.NullPointerException > > > > >> at > > > > >> > > > > > > > > > > org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:173) > > > > >> at > > > > >> > > > > > > > > > > org.apache.webbeans.lifecycle.StandaloneLifeCycle.applicationStarted(StandaloneLifeCycle.java:112) > > > > >> ... > > > > >> Caused by: > > java.lang.NullPointerException > > > > >> at > > > > >> > > > > > > > > > > org.apache.webbeans.component.AbstractOwbBean.getId(AbstractOwbBean.java:210) > > > > >> at > > > > >> > > > > > > > > > > org.apache.webbeans.util.WebBeansUtil.isPassivationCapable(WebBeansUtil.java:2564) > > > > >> at > > > > >> > > > > > > > > > > org.apache.webbeans.container.BeanManagerImpl.addPassivationCapableBean(BeanManagerImpl.java:311) > > > > >> at > > > > >> > > > > > > > > > > org.apache.webbeans.container.BeanManagerImpl.addBean(BeanManagerImpl.java:289) > > > > >> at > > > > >> > > > > > > > > > > org.apache.webbeans.config.BeansDeployer.configureDefaultBeans(BeansDeployer.java:198) > > > > >> at > > > > >> > > > > > > > > > > org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:137) > > > > >> > > > > >> > > > > >> LieGrue, > > > > >> strub > > > > >> > > > > >> > > > > >> --- Gurkan Erdogdu <[email protected]> > > > > schrieb am Mo, 15.2.2010: > > > > >> > > > > >> > Von: Gurkan Erdogdu <[email protected]> > > > > >> > Betreff: Re: [jira] Closed: > > (OWB-282) > > > Adding > > > > Default SPI Implementation > > > > >> for 3.6. Update names of > Default > > service > > > > implementations. > > > > >> > An: [email protected] > > > > >> > Datum: Montag, 15. Februar, > 2010 > > 10:08 > > > Uhr > > > > >> > I run it but no compile > errors. > > > > >> > Please remove your OWB relaetd > .m2 > > > > >> > repository. And try again; > > > > >> > > > > > >> > Also ensure that you checkout > all > > > trunk. > > > > >> > > > > > >> > Thanks; > > > > >> > > > > > >> > --Gurkan > > > > >> > > > > > >> > 2010/2/15 Mark Struberg <[email protected]> > > > > >> > > > > > >> > > hi! > > > > >> > > > > > > >> > > I get 42 test errors > while > > > compiling > > > > webbeans-impl. > > > > >> > > > > > > >> > > I did a complete clean > > checkout. > > > > >> > > > > > > >> > > txs and LieGrue, > > > > >> > > strub > > > > >> > > > > > > >> > > --- Gurkan Erdogdu > (JIRA) > > <[email protected]> > > > > >> > schrieb am So, 14.2.2010: > > > > >> > > > > > > >> > > > Von: Gurkan Erdogdu > > (JIRA) > > > <[email protected]> > > > > >> > > > Betreff: [jira] > Closed: > > > (OWB-282) > > > > Adding Default > > > > >> > SPI Implementation for > > > > >> > > 3.6. Update names of > Default > > > service > > > > implementations. > > > > >> > > > An: [email protected] > > > > >> > > > Datum: Sonntag, 14. > > Februar > > > 2010, > > > > 22:59 > > > > >> > > > > > > > >> > > > > [ > > > > >> > > > > > > >> https://issues.apache.org/jira/browse/OWB-282?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel > > > > >> > > > ] > > > > >> > > > > > > > >> > > > Gurkan Erdogdu > closed > > > OWB-282. > > > > >> > > > > > > ------------------------------ > > > > >> > > > > > > > >> > > > > Resolution: > > > > Fixed > > > > >> > > > > > > > >> > > > > Adding Default > SPI > > > > Implementation for 3.6. > > > > >> > Update > > > > >> > > > names of Default > service > > > > implementations. > > > > >> > > > > > > > > >> > > > > > > > >> > > > > > > >> > > > > > >> > > > > > > > > > > ------------------------------------------------------------------------------------------- > > > > >> > > > > > > > > >> > > > > > > > > >> > > > Key: > OWB-282 > > > > >> > > > > > > > > >> > > > URL: https://issues.apache.org/jira/browse/OWB-282 > > > > >> > > > > > > > > >> > > > > Project: > > OpenWebBeans > > > > >> > > > > > > > > > Issue > > > > >> > Type: > > > > >> > > > Improvement > > > > >> > > > > > Affects > > Versions: > > > > M3 > > > > >> > > > > > > > > >> > Reporter: > > > > >> > > > Gurkan Erdogdu > > > > >> > > > > > > > > >> > Assignee: > > > > >> > > > Gurkan Erdogdu > > > > >> > > > > > > > > >> > > > Fix > For: M4 > > > > >> > > > > > > > > >> > > > > > > > > >> > > > > > > > >> > > > > > > > >> > > > -- > > > > >> > > > This message is > > automatically > > > > generated by JIRA. > > > > >> > > > - > > > > >> > > > You can reply to > this > > email to > > > add > > > > a comment to > > > > >> > the issue > > > > >> > > > online. > > > > >> > > > > > > > >> > > > > > > > >> > > > > > > >> > > > > > > > > __________________________________________________ > > > > >> > > Do You Yahoo!? > > > > >> > > Sie sind Spam leid? > Yahoo! > > Mail > > > verfügt > > > > über einen > > > > >> > herausragenden Schutz > > > > >> > > gegen Massenmails. > > > > >> > > http://mail.yahoo.com > > > > >> > > > > > > >> > > > > > >> > > > > > >> > > > > > >> > -- > > > > >> > Gurkan Erdogdu > > > > >> > http://gurkanerdogdu.blogspot.com > > > > >> > > > > > >> > > > > >> > > > > > > __________________________________________________ > > > > >> Do You Yahoo!? > > > > >> Sie sind Spam leid? Yahoo! Mail > > verfügt > > > über > > > > einen herausragenden Schutz > > > > >> gegen Massenmails. > > > > >> http://mail.yahoo.com > > > > >> > > > > > > > > > > > > > > > > > > > > -- > > > > > Gurkan Erdogdu > > > > > http://gurkanerdogdu.blogspot.com > > > > > > > > > > > > > > > > > > > > > -- > > > > Gurkan Erdogdu > > > > http://gurkanerdogdu.blogspot.com > > > > > > > > > > > __________________________________________________ > > > Do You Yahoo!? > > > Sie sind Spam leid? Yahoo! Mail verfügt über > einen > > > herausragenden Schutz gegen Massenmails. > > > http://mail.yahoo.com > > > > > > > __________________________________________________ > > Do You Yahoo!? > > Sie sind Spam leid? Yahoo! Mail verfügt über einen > > herausragenden Schutz gegen Massenmails. > > http://mail.yahoo.com > > > > __________________________________________________ > Do You Yahoo!? > Sie sind Spam leid? Yahoo! Mail verfügt über einen > herausragenden Schutz gegen Massenmails. > http://mail.yahoo.com > > > > > ___________________________________________________________________ > Yahoo! Türkiye açıldı! http://yahoo.com.tr > İnternet üzerindeki en iyi içeriği Yahoo! Türkiye > sizlere sunuyor! __________________________________________________ Do You Yahoo!? Sie sind Spam leid? Yahoo! Mail verfügt über einen herausragenden Schutz gegen Massenmails. http://mail.yahoo.com ___________________________________________________________________ Yahoo! Türkiye açıldı! http://yahoo.com.tr İnternet üzerindeki en iyi içeriği Yahoo! Türkiye sizlere sunuyor!
