Skip to content

Commit

Permalink
WELD-970 Do not stop validation of first failure
Browse files Browse the repository at this point in the history
  • Loading branch information
stuartwdouglas committed Sep 12, 2011
1 parent 8c33736 commit b94f829
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 15 deletions.
25 changes: 19 additions & 6 deletions impl/src/main/java/org/jboss/weld/bootstrap/Validator.java
Expand Up @@ -344,15 +344,28 @@ public void validateDeployment(BeanManagerImpl manager, BeanDeployerEnvironment

public void validateBeans(Collection<? extends Bean<?>> beans, Collection<RIBean<?>> specializedBeans, BeanManagerImpl manager)
{
final List<RuntimeException> problems = new ArrayList<RuntimeException>();

for (Bean<?> bean : beans)
{
if (bean instanceof RIBean<?>)
{
validateRIBean((RIBean<?>) bean, manager, specializedBeans);
try {
if (bean instanceof RIBean<?>)
{
validateRIBean((RIBean<?>) bean, manager, specializedBeans);
}
else
{
validateBean(bean, manager);
}
} catch (RuntimeException e) {
problems.add(e);
}
else
{
validateBean(bean, manager);
}
if(!problems.isEmpty()) {
if(problems.size() == 1) {
throw problems.get(0);
} else {
throw new DeploymentException((List)problems);
}
}
}
Expand Down
Expand Up @@ -16,26 +16,19 @@
*/
package org.jboss.weld.tests.scope.unproxyable;

import java.io.Serializable;

import javax.enterprise.context.RequestScoped;
import javax.enterprise.context.SessionScoped;
import javax.enterprise.inject.Produces;
import javax.enterprise.inject.spi.InjectionPoint;
import javax.inject.Inject;
import java.io.Serializable;

@SessionScoped
public class Foo implements Serializable
{

@Inject
@HttpParam("username")
String username;

@Produces
@RequestScoped
@HttpParam("")
public String produceHttpParam(InjectionPoint ip)
public String produceHttpParam()
{
return "pete";
}
Expand Down

0 comments on commit b94f829

Please sign in to comment.