Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

With Weld it's a bit more difficult. If the @Alternative approach doesn't work, you have to do it manually via a CDI extension.

Code Block
java
java
titleWorkaround for alternative implementations in combination with Weldjava
public class VetoExtension implements Extension
{
    protected void vetoDefaultImplementations(@Observes ProcessAnnotatedType<Object> processAnnotatedType)
    {
        Class beanClass = processAnnotatedType.getAnnotatedType().getJavaClass();
        if(WindowHandler.class.isAssignableFrom(beanClass) &&
                !AlternativeWindowHandler.class.isAssignableFrom(beanClass))
        {
            processAnnotatedType.veto();
        }
    }
}

public class AlternativeWindowHandler extends ServerSideWindowHandler
{
    private static final long serialVersionUID = 6089519101832237681L;
}

...