2 Replies Latest reply on May 8, 2011 11:37 PM by Ondrej Zizka

    seam-wicket doesn't work for me - Jetty 6.1.26, Weld 1.1.1

    Ondrej Zizka Master
      Hi, I am trying seam-wicket with Jetty 6.1.26, Weld 1.1.1

      After I fixed seam-wicket bug which prevents BeanManager being found (JNDI does not work, needs to pull from ServletContext - I used someone's classes for that).

      SLF4J: Class path contains multiple SLF4J bindings.
      SLF4J: Found binding in [jar:file:/mnt/ssd1/data/.m2/repository/org/jboss/weld/servlet/weld-servlet/1.1.1.Final/weld-servlet-1.1.1.Final.jar!/org/slf4j/impl/StaticLoggerBinder.class]
      SLF4J: Found binding in [jar:file:/mnt/ssd1/data/.m2/repository/org/slf4j/slf4j-log4j12/1.5.11/slf4j-log4j12-1.5.11.jar!/org/slf4j/impl/StaticLoggerBinder.class]
      SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
      May 08, 2011 9:16:11 AM org.mortbay.log.Slf4jLog info
      INFO: Logging to org.slf4j.impl.JDK14LoggerAdapter(org.mortbay.log) via org.mortbay.log.Slf4jLog
      May 08, 2011 9:16:11 AM org.jboss.jawabot.web.RunInJetty run
      INFO:   Static files are in:
              /mnt/ssd1/_projekty/GoogleCode-ondrazizka/svn-whole/trunk/bots/JawaBot/branches/2.0/web/workdir/../src/main/java/org/jboss/jawabot/web/files
         ==   /mnt/ssd1/_projekty/GoogleCode-ondrazizka/svn-whole/trunk/bots/JawaBot/branches/2.0/web/src/main/java/org/jboss/jawabot/web/files
        @@@@@@@  _: org.mortbay.naming.NamingContext
        @@@@@@@  env: org.mortbay.naming.NamingContext
        @@@@@@@  BeanManager: javax.naming.Reference
        @@@@@@@  org.mortbay.jetty.servlet.Context@15d3ddab{_,null}: org.mortbay.naming.NamingContext
      May 08, 2011 9:16:11 AM org.jboss.weld.bootstrap.WeldBootstrap <clinit>
      INFO: WELD-000900 1.1.1 (Final)
      May 08, 2011 9:16:11 AM org.mortbay.log.Slf4jLog info
      INFO: jetty-6.1.26
      May 08, 2011 9:16:12 AM org.jboss.weld.bootstrap.WeldBootstrap startContainer
      INFO: WELD-000101 Transactional services not available. Injection of @Inject UserTransaction not available. Transactional observers will be invoked synchronously.
      09:16:12.490 INFO  [main] org.jboss.seam.solder.Version  Seam Solder 3.0.0.Final (build id: 3.0.0.Final)
      May 08, 2011 9:16:12 AM org.jboss.weld.environment.jetty.AbstractJettyPre72Container initialize
      INFO: Jetty detected, JSR-299 injection will be available in Servlets and Filters. Injection into Listeners is not supported.
      09:16:12.972 INFO  [main] org.jboss.seam.solder.core.CoreExtension  Preventing class org.jboss.seam.solder.core.VersionLoggerUtil from being installed as bean due to @Veto annotation
      09:16:13.233 INFO  [main] org.jboss.seam.solder.core.CoreExtension  Preventing class org.jboss.seam.solder.resourceLoader.ResourceProvider from being installed as bean due to @Veto annotation
      May 08, 2011 9:16:13 AM org.jboss.interceptor.util.InterceptionTypeRegistry <clinit>
      WARNING: Class 'javax.ejb.PostActivate' not found, interception based on it is not enabled
      May 08, 2011 9:16:13 AM org.jboss.interceptor.util.InterceptionTypeRegistry <clinit>
      WARNING: Class 'javax.ejb.PrePassivate' not found, interception based on it is not enabled
      09:16:13.632 DEBUG [main] org.jboss.seam.solder.bean.defaultbean.DefaultBeanExtension  Installing default managed bean Default Bean with types [class java.lang.Object, class javax.el.VariableMapper] and qualifiers [@org.jboss.seam.solder.el.Mapper()]
      09:16:13.635 DEBUG [main] org.jboss.seam.solder.bean.defaultbean.DefaultBeanExtension  Installing default managed bean Default Bean with types [class java.lang.Object, class javax.el.FunctionMapper] and qualifiers [@org.jboss.seam.solder.el.Mapper()]
      ----  Wicket init() ----

      Then I tried the RandomNumber example

      http://docs.jboss.org/weld/reference/1.1.0.Final/en-US/html_single/#d0e948

      And tried to @Inject it in Wicket component

      public class CdiTestPanel extends Panel
      {
         //@Inject String user;
         //@Inject Logger log;
         @Inject int randomNumber;
         ...
      }

      Nothing worked, I get:

      Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001408 Unsatisfied dependencies for type [int] with qualifiers [@Default] at injection point [[field] @Inject org.jboss.jawabot.web._co.ReservationListPanel.randomNumber]
           at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:270)
           at org.jboss.weld.bootstrap.Validator.validateInjectionTarget(Validator.java:299)
           at org.jboss.weld.manager.InjectionTargetValidator.addInjectionTarget(InjectionTargetValidator.java:34)
           at org.jboss.weld.manager.BeanManagerImpl.createInjectionTarget(BeanManagerImpl.java:1052)
           at org.jboss.seam.wicket.util.NonContextual.<init>(NonContextual.java:56)
           at org.jboss.seam.wicket.util.NonContextual.of(NonContextual.java:31)
           at org.jboss.seam.wicket.SeamComponentInstantiationListener.onInstantiation(SeamComponentInstantiationListener.java:28)
           at org.apache.wicket.Application.notifyComponentInstantiationListeners(Application.java:1093)
           at org.apache.wicket.Component.<init>(Component.java:923)
           at org.apache.wicket.MarkupContainer.<init>(MarkupContainer.java:113)
           at org.apache.wicket.markup.html.WebMarkupContainer.<init>(WebMarkupContainer.java:49)
           at org.apache.wicket.markup.html.WebMarkupContainerWithAssociatedMarkup.<init>(WebMarkupContainerWithAssociatedMarkup.java:51)
           at org.apache.wicket.markup.html.WebMarkupContainerWithAssociatedMarkup.<init>(WebMarkupContainerWithAssociatedMarkup.java:43)
           at org.apache.wicket.markup.html.panel.Panel.<init>(Panel.java:76)
           at org.jboss.jawabot.web._co.ReservationListPanel.<init>(ReservationListPanel.java:51)
           at org.jboss.jawabot.web._pg.TakePage.<init>(TakePage.java:94)
           ... 31 more

      So, how do I get CDI working?
      Thanks for any ideas.



      PS: Fix the formatting feature here pls - I just lost whole post because it wrote "fix wiki text", I clicked the help link, which got me away and all text is lost. Nice.