Hello Mark;

This can be resulted from updated NamedLiteral. Please try with inverting
change?

Sure, we can look at the evening!

thanks;

--Gurkan

2010/2/25 Mark Struberg <strub...@yahoo.de>

> Hi!
>
> usually I don't commits which break the tests, but this is really an
> outstanding blocker. Basically all ProducerMethods are not working anymore
> as far as I saw.
>
> Looks like it has something to do with the ParameterizedType.
>
> Gurkan, can we look at this together in the evening please?
>
> LieGrue,
> strub
>
> --- strub...@apache.org <strub...@apache.org> schrieb am Do, 25.2.2010:
>
> > Von: strub...@apache.org <strub...@apache.org>
> > Betreff: svn commit: r916274 - in /openwebbeans/trunk/webbeans-impl/src:
> main/java/org/apache/webbeans/annotation/
> main/java/org/apache/webbeans/decorator/
> main/java/org/apache/webbeans/inject/instance/
> main/java/org/apache/webbeans/util/ test/java/org/apache/w...
> > An: comm...@openwebbeans.apache.org
> > Datum: Donnerstag, 25. Februar, 2010 14:00 Uhr
> > Author: struberg
> > Date: Thu Feb 25 13:00:29 2010
> > New Revision: 916274
> >
> > URL: http://svn.apache.org/viewvc?rev=916274&view=rev
> > Log:
> > OWB-304 add test for broken behaviour
> >
> > + a few cleanup tasks
> >
> > Added:
> >
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/profields/beans/InformationConsumerBean.java
> > Modified:
> >
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/annotation/NamedLiteral.java
> >
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/DecoratorUtil.java
> >
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceImpl.java
> >
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/WebBeansAnnotatedTypeUtil.java
> >
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/AbstractUnitTest.java
> >
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/injection/typeliteral/TypeLiteralTest.java
> >
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/profields/GetterStringInjectorTest.java
> >
> > Modified:
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/annotation/NamedLiteral.java
> > URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/annotation/NamedLiteral.java?rev=916274&r1=916273&r2=916274&view=diff
> >
> ==============================================================================
> > ---
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/annotation/NamedLiteral.java
> > (original)
> > +++
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/annotation/NamedLiteral.java
> > Thu Feb 25 13:00:29 2010
> > @@ -25,6 +25,16 @@
> >  public class NamedLiteral extends
> > AnnotationLiteral<Named> implements Named
> >  {
> >      private String value;
> > +
> > +    public NamedLiteral()
> > +    {
> > +
> > +    }
> > +
> > +    public NamedLiteral(String value)
> > +    {
> > +        this.value = value;
> > +    }
> >
> >      @Override
> >      public String value()
> >
> > Modified:
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/DecoratorUtil.java
> > URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/DecoratorUtil.java?rev=916274&r1=916273&r2=916274&view=diff
> >
> ==============================================================================
> > ---
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/DecoratorUtil.java
> > (original)
> > +++
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/decorator/DecoratorUtil.java
> > Thu Feb 25 13:00:29 2010
> > @@ -26,7 +26,6 @@
> >  import javax.enterprise.inject.spi.Decorator;
> >
> >  import
> > org.apache.webbeans.component.AbstractInjectionTargetBean;
> > -import org.apache.webbeans.component.ManagedBean;
> >  import org.apache.webbeans.config.OWBLogConst;
> >  import org.apache.webbeans.container.BeanManagerImpl;
> >  import
> > org.apache.webbeans.exception.WebBeansConfigurationException;
> >
> > Modified:
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceImpl.java
> > URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceImpl.java?rev=916274&r1=916273&r2=916274&view=diff
> >
> ==============================================================================
> > ---
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceImpl.java
> > (original)
> > +++
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/inject/instance/InstanceImpl.java
> > Thu Feb 25 13:00:29 2010
> > @@ -38,6 +38,8 @@
> >   */
> >  class InstanceImpl<T> implements Instance<T>,
> > Serializable
> >  {
> > +    private static final long serialVersionUID =
> > -8401944412490389024L;
> > +
> >      /** Injected class type */
> >      private Type injectionClazz;
> >
> >
> > Modified:
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/WebBeansAnnotatedTypeUtil.java
> > URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/WebBeansAnnotatedTypeUtil.java?rev=916274&r1=916273&r2=916274&view=diff
> >
> ==============================================================================
> > ---
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/WebBeansAnnotatedTypeUtil.java
> > (original)
> > +++
> >
> openwebbeans/trunk/webbeans-impl/src/main/java/org/apache/webbeans/util/WebBeansAnnotatedTypeUtil.java
> > Thu Feb 25 13:00:29 2010
> > @@ -67,7 +67,6 @@
> >  import org.apache.webbeans.config.OWBLogConst;
> >  import
> > org.apache.webbeans.config.OpenWebBeansConfiguration;
> >  import org.apache.webbeans.container.InjectionResolver;
> > -import org.apache.webbeans.decorator.DecoratorUtil;
> >  import org.apache.webbeans.decorator.DecoratorsManager;
> >  import
> > org.apache.webbeans.decorator.WebBeansDecoratorConfig;
> >  import org.apache.webbeans.event.NotificationManager;
> > @@ -104,11 +103,9 @@
> >
> >      {
> >
> >          throw new
> > WebBeansConfigurationException("There are more than one
> > constructor with @Inject annotation in annotation type : " +
> > type);
> >
> >      }
> > -
> >     else
> > -
> >     {
> > -
> >         found = true;
> > -
> >         result = annConst;
> > -
> >     }
> >
> > +
> >
> > +
> >     found = true;
> > +
> >     result = annConst;
> >
> >    }
> >
> >    else
> >
> >    {
> > @@ -254,10 +251,7 @@
> >
> >      throw new
> > UnsatisfiedResolutionException("Producer method component of
> > the disposal method : " + declaredMethod.getName() + " in
> > class : " +
> > annotatedMethod.getDeclaringType().getJavaClass() + "is not
> > found");
> >
> >    }
> >
> > -
> > else
> > -                {
> > -
> >     pr = (ProducerMethodBean<?>) foundBean;
> > -                }
> > +                pr
> > = (ProducerMethodBean<?>) foundBean;
> >
> >
> >    if (previous == null)
> >
> >    {
> > @@ -623,9 +617,8 @@
> >
> >              + ".
> > Multiple disposes annotation.");
> >
> >    }
> >
> >    else
> > -                {
> > -
> >     found = true;
> > -                }
> > +
> > +
> > found = true;
> >              }
> >          }
> >
> > @@ -728,12 +721,10 @@
> >
> >    {
> >
> >      throw new
> > WebBeansConfigurationException("Maanged bean class : " +
> > clazz.getName() + " can not define non-static, non-private
> > final methods. Because it is annotated with at least one
> > @InterceptorBinding");
> >
> >    }
> > -
> > else
> > +
> > +                if
> >
> (AnnotationUtil.hasInterceptorBindingMetaAnnotation(AnnotationUtil.getAnnotationsFromSet(methodA.getAnnotations())))
> >
> >    {
> > -
> >     if
> >
> (AnnotationUtil.hasInterceptorBindingMetaAnnotation(AnnotationUtil.getAnnotationsFromSet(methodA.getAnnotations())))
> > -
> >     {
> > -
> >         throw new
> > WebBeansConfigurationException("Method : " +
> > method.getName() + "in managed bean class : " +
> > clazz.getName() + " can not be defined as non-static,
> > non-private and final . Because it is annotated with at
> > least one @InterceptorBinding");
> > -
> >     }
> > +
> >     throw new
> > WebBeansConfigurationException("Method : " +
> > method.getName() + "in managed bean class : " +
> > clazz.getName() + " can not be defined as non-static,
> > non-private and final . Because it is annotated with at
> > least one @InterceptorBinding");
> >
> >    }
> >              }
> >
> >
> > Modified:
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/AbstractUnitTest.java
> > URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/AbstractUnitTest.java?rev=916274&r1=916273&r2=916274&view=diff
> >
> ==============================================================================
> > ---
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/AbstractUnitTest.java
> > (original)
> > +++
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/AbstractUnitTest.java
> > Thu Feb 25 13:00:29 2010
> > @@ -13,18 +13,21 @@
> >   */
> >  package org.apache.webbeans.newtests;
> >
> > +import java.lang.annotation.Annotation;
> >  import java.net.URL;
> >  import java.util.ArrayList;
> >  import java.util.Collection;
> >  import java.util.List;
> > +import java.util.Set;
> >
> > +import javax.enterprise.inject.spi.Bean;
> >  import javax.enterprise.inject.spi.BeanManager;
> >  import javax.enterprise.inject.spi.Extension;
> >
> >  import
> > org.apache.webbeans.lifecycle.test.OpenWebBeansTestLifeCycle;
> >  import
> >
> org.apache.webbeans.lifecycle.test.OpenWebBeansTestMetaDataDiscoveryService;
> >  import
> > org.apache.webbeans.portable.events.ExtensionLoader;
> > -
> > +import org.junit.Assert;
> >
> >
> >  public abstract class AbstractUnitTest
> > @@ -95,6 +98,18 @@
> >          return
> > this.testLifecycle.getBeanManager();
> >      }
> >
> > +    @SuppressWarnings("unchecked")
> > +    protected <T> T
> > getInstance(Class<T> type, Annotation... qualifiers)
> > +    {
> > +        Set<Bean<?>> beans
> > = getBeanManager().getBeans(type, qualifiers);
> > +        Assert.assertNotNull(beans);
> > +        Assert.assertTrue("resolving
> > bean with type" + type + " is ambiguous!", beans.size() ==
> > 1);
> > +
> > +        Bean<T> bean =
> > (Bean<T>) beans.iterator().next();
> > +
> > +        return (T)
> > getBeanManager().getReference(bean, type,
> > getBeanManager().createCreationalContext(bean));
> > +    }
> > +
> >      protected URL getXMLUrl(String
> > packageName, String fileName)
> >      {
> >          StringBuilder prefix
> > = new StringBuilder(packageName.replace('.', '/'));
> >
> > Modified:
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/injection/typeliteral/TypeLiteralTest.java
> > URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/injection/typeliteral/TypeLiteralTest.java?rev=916274&r1=916273&r2=916274&view=diff
> >
> ==============================================================================
> > ---
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/injection/typeliteral/TypeLiteralTest.java
> > (original)
> > +++
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/injection/typeliteral/TypeLiteralTest.java
> > Thu Feb 25 13:00:29 2010
> > @@ -19,22 +19,16 @@
> >  package
> > org.apache.webbeans.newtests.injection.typeliteral;
> >
> >  import java.lang.annotation.Annotation;
> > -import java.lang.reflect.Field;
> >  import java.net.URL;
> >  import java.util.ArrayList;
> >  import java.util.Collection;
> >  import java.util.Set;
> >
> > -import javax.enterprise.context.spi.CreationalContext;
> >  import javax.enterprise.inject.spi.Bean;
> > -import javax.enterprise.inject.spi.InjectionPoint;
> >  import javax.enterprise.util.TypeLiteral;
> >
> > -import junit.framework.Assert;
> >
> >  import org.apache.webbeans.newtests.AbstractUnitTest;
> > -import
> >
> org.apache.webbeans.newtests.injection.injectionpoint.beans.InjectionPointMetaDataOwner;
> > -import
> >
> org.apache.webbeans.newtests.injection.injectionpoint.beans.LoggerInjectedBean;
> >  import org.junit.Test;
> >
> >  public class TypeLiteralTest extends AbstractUnitTest
> >
> > Modified:
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/profields/GetterStringInjectorTest.java
> > URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/profields/GetterStringInjectorTest.java?rev=916274&r1=916273&r2=916274&view=diff
> >
> ==============================================================================
> > ---
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/profields/GetterStringInjectorTest.java
> > (original)
> > +++
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/profields/GetterStringInjectorTest.java
> > Thu Feb 25 13:00:29 2010
> > @@ -26,9 +26,11 @@
> >
> >  import junit.framework.Assert;
> >
> > +import org.apache.webbeans.annotation.NamedLiteral;
> >  import org.apache.webbeans.newtests.AbstractUnitTest;
> >  import
> > org.apache.webbeans.newtests.profields.beans.GetterStringFieldInjector;
> >  import
> > org.apache.webbeans.newtests.profields.beans.GetterStringProducerBean;
> > +import
> > org.apache.webbeans.newtests.profields.beans.InformationConsumerBean;
> >  import org.junit.Test;
> >
> >  public class GetterStringInjectorTest extends
> > AbstractUnitTest
> > @@ -42,6 +44,7 @@
> >
> >    Collection<Class<?>>
> > beanClasses = new ArrayList<Class<?>>();
> >
> >    beanClasses.add(GetterStringProducerBean.class);
> >
> >    beanClasses.add(GetterStringFieldInjector.class);
> > +
> > beanClasses.add(InformationConsumerBean.class);
> >
> >
> >    startContainer(beanClasses,
> > beanXmls);
> >
> > @@ -50,6 +53,8 @@
> >
> >
> >    Assert.assertEquals("Sucess from
> > getProducts",injector.getTestNamed3());
> >
> > +        InformationConsumerBean icb =
> > getInstance(InformationConsumerBean.class, new
> > NamedLiteral("ProMethodNamed1"));
> > +
> >
> >    shutDownContainer();
> >      }
> >
> >
> > Added:
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/profields/beans/InformationConsumerBean.java
> > URL:
> http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/profields/beans/InformationConsumerBean.java?rev=916274&view=auto
> >
> ==============================================================================
> > ---
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/profields/beans/InformationConsumerBean.java
> > (added)
> > +++
> >
> openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/profields/beans/InformationConsumerBean.java
> > Thu Feb 25 13:00:29 2010
> > @@ -0,0 +1,38 @@
> > +/*
> > + * Licensed to the Apache Software Foundation (ASF) under
> > one
> > + * or more contributor license agreements. See the NOTICE
> > file
> > + * distributed with this work for additional information
> > + * regarding copyright ownership. The ASF licenses this
> > file
> > + * to you under the Apache License, Version 2.0 (the
> > + * "License"); you may not use this file except in
> > compliance
> > + * with the License. You may obtain a copy of the License
> > at
> > + *
> > + * http://www.apache.org/licenses/LICENSE-2.0
> > + *
> > + * Unless required by applicable law or agreed to in
> > writing,
> > + * software distributed under the License is distributed
> > on an
> > + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> > + * KIND, either express or implied. See the License for
> > the
> > + * specific language governing permissions and
> > limitations
> > + * under the License.
> > + */
> > +package org.apache.webbeans.newtests.profields.beans;
> > +
> > +import javax.enterprise.context.ApplicationScoped;
> > +import javax.inject.Inject;
> > +import javax.inject.Named;
> > +
> > +/**
> > + * This simply tests if actually injecting the String
> > values
> > + * from our fancy producer methods really works.
> > + */
> > +...@applicationscoped
> > +public class InformationConsumerBean {
> > +
> > +    private  @Inject
> > @Named("ProMethodNamed1") String proMethodString;
> > +
> > +    public String getProMethodString()
> > +    {
> > +        return proMethodString;
> > +    }
> > +}
> >
> >
> >
>
> __________________________________________________
> 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

Reply via email to