6 Replies Latest reply on Jun 11, 2007 1:13 PM by gavin.king

    Seam + OC4J 11g (Technology Preview)

      I'm working on getting my Seam application to work with Oracle's newest version of OC4J (which is finally J2EE 5 compatible...yay!). So far I've got my application to deploy and the Seam container initializes successfully, but when I hit the login page, I get the following stacktrace:

      11:40:22,625 ERROR [ExceptionFilter] could not roll back transaction
      javax.naming.NameNotFoundException: java:comp/EJBContext not found
       at com.evermind.server.rmi.RMIClientContext.lookup(RMIClientContext.java:60)
       at com.evermind.naming.FilterContext.lookup(FilterContext.java:126)
       at com.evermind.server.ApplicationClientContext.lookup(ApplicationClientContext.java:63)
       at javax.naming.InitialContext.lookup(InitialContext.java:351)
       at org.jboss.seam.util.EJB.getEJBContext(EJB.java:115)
       at org.jboss.seam.util.Transactions.isEJBCTransactionActiveOrMarkedRollback(Transactions.jav
      a:111)
       at org.jboss.seam.util.Transactions.isTransactionActiveOrMarkedRollback(Transactions.java:54
      )
       at org.jboss.seam.web.ExceptionFilter.rollbackTransactionIfNecessary(ExceptionFilter.java:12
      8)
       at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:63)
       at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
       at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
       at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)
       at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:96)
       at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:220)
       at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:61
      7)
       at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatche
      r.java:368)
       at com.evermind.server.http.HttpRequestHandler.doDispatchRequest(HttpRequestHandler.java:889
      )
       at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:797)
      
       at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:607)
       at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:376)
       at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:161)
       at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:142)
       at oracle.oc4j.network.ServerSocketReadHandler$ClientRunnable.run(ServerSocketReadHandler.ja
      va:275)
       at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
       at java.lang.Thread.run(Thread.java:595)
      


      Here's what's in my log before this point:
      C:\oc4j\bin>oc4j -start
      Starting OC4J from C:\oc4j\j2ee\home ...
      May 15, 2007 3:29:43 PM oracle.dms.trace.TraceManager record_config
      INFO: TransactionTracing is enabled at MIN level
      2007-05-15 15:29:44.562 NOTIFICATION J2EE DEP-00102 Auto-unpacking C:\oc4j\j2ee\home\applications\jboss-seam-lunchvote.war...
      2007-05-15 15:29:44.718 NOTIFICATION J2EE DEP-00101 Unjarring archive C:\oc4j\j2ee\home\applications\jboss-seam-lunchvote.war in directory C:\oc4jj2ee\home\applications\jboss-seam-lunchvote
      2007-05-15 15:29:51.859 NOTIFICATION J2EE DEP-00103 Finished auto-unpacking C:\oc4j\j2ee\home\applications\jboss-seam-lunchvote.war
      WARNING: Code-source C:\oc4j\j2ee\home\applications\jboss-seam-lunchvote\WEB-INF\lib\activation.jar (from WEB-INF/lib/ directory in C:\oc4j\j2ee\home\applications\jboss-seam-lunchvote\WEB-INF\lib) has the same filename but is not identical to /C:/oc4j/j2ee/home/lib/activation.jar (from <code-source>
      (ignore manifest Class-Path) in META-INF/boot.xml in C:\oc4j\j2ee\home\oc4j.jar). If it contains different versions of the same classes, it will be masked as the latter is already visible in the search path of loader default.web.jboss-seam-lunchvote:0.0.0.
      WARNING: Code-source C:\oc4j\j2ee\home\applications\jboss-seam-lunchvote\WEB-INF\lib\el-ri.jar (from WEB-INF/lib/ directory in C:\oc4j\j2ee\home\applications\jboss-seam-lunchvote\WEB-INF\lib) has the same filename but is not identical to /C:/oc4j/j2ee/home/lib/el-ri.jar (from <code-source> in META-I
      NF/boot.xml in C:\oc4j\j2ee\home\oc4j.jar). If it contains different versions of the same classes, it will be masked as the latter is already visible in the search path of loader default.web.jboss-seam-lunchvote:0.0.0.
      WARNING: Code-source C:\oc4j\j2ee\home\applications\jboss-seam-lunchvote\WEB-INF\lib\mail.jar (from WEB-INF/lib/ directory in C:\oc4j\j2ee\home\applications\jboss-seam-lunchvote\WEB-INF\lib) has the s
      ame filename but is not identical to /C:/oc4j/j2ee/home/lib/mail.jar (from <code-source>
      (ignore manifest Class-Path) in META-INF/boot.xml in C:\oc4j\j2ee\home\oc4j.jar). If it contains different vers
      ions of the same classes, it will be masked as the latter is already visible in the search path of loader default.web.jboss-seam-lunchvote:0.0.0.
      07/05/15 15:30:11 WARNING: IGNORED file: /WEB-INF/lib/jsf-impl.jar
      07/05/15 15:30:11 WARNING: IGNORED file: /WEB-INF/lib/myfaces-impl-1.1.4.jar
      07/05/15 15:30:11 WARNING: IGNORED file: /WEB-INF/lib/myfaces-impl-1.1.5.jar
      15:30:12,937 INFO [ServletContextListener] Welcome to Seam 1.2.1
      15:30:12,953 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam.jar
      15:30:12,968 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-remoting.jar
      15:30:12,968 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-ioc.jar
      15:30:12,968 INFO [Initialization] Namespace: http://jboss.com/products/seam/security, package: org.jboss.seam.security, prefix: org.jboss.seam.security
      15:30:12,984 INFO [Initialization] Namespace: http://jboss.com/products/seam/drools, package: org.jboss.seam.drools, prefix: org.jboss.seam.drools
      15:30:12,984 INFO [Initialization] Namespace: http://jboss.com/products/seam/spring, package: org.jboss.seam.ioc.spring, prefix: org.jboss.seam.ioc.spring
      15:30:13,000 INFO [Initialization] Namespace: http://jboss.com/products/seam/mail, package: org.jboss.seam.mail, prefix: org.jboss.seam.mail
      15:30:13,000 INFO [Initialization] Namespace: http://jboss.com/products/seam/remoting, package: org.jboss.seam.remoting, prefix: org.jboss.seam.remoting
      15:30:13,000 INFO [Initialization] Namespace: http://jboss.com/products/seam/web, package: org.jboss.seam.web, prefix: org.jboss.seam.web
      15:30:13,000 INFO [Initialization] Namespace: http://jboss.com/products/seam/theme, package: org.jboss.seam.theme, prefix: org.jboss.seam.theme
      15:30:13,000 INFO [Initialization] Namespace: http://jboss.com/products/seam/core, package: org.jboss.seam.core, prefix: org.jboss.seam.core
      15:30:13,000 INFO [Initialization] Namespace: http://jboss.com/products/seam/jms, package: org.jboss.seam.jms, prefix: org.jboss.seam.jms
      15:30:13,000 INFO [Initialization] Namespace: http://jboss.com/products/seam/framework, package: org.jboss.seam.framework, prefix: org.jboss.seam.core.framework
      15:30:13,000 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-debug.jar
      15:30:13,000 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-pdf.jar
      15:30:13,000 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-lunchvote.jar
      15:30:13,000 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-mail.jar
      15:30:13,000 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-ui.jar
      15:30:13,000 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/selectitems.jar
      15:30:13,000 INFO [Initialization] Namespace: http://jboss.com/products/seam/selectitems, package: org.jboss.seam.selectitems, prefix: org.jboss.seam.selectitems
      15:30:13,000 INFO [Initialization] Namespace: http://jboss.com/products/seam/pdf, package: org.jboss.seam.pdf, prefix:
      15:30:13,000 INFO [Initialization] reading /WEB-INF/components.xml
      15:30:13,125 INFO [Initialization] reading code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-ioc.jar!/META-INF/components.xml
      15:30:13,125 INFO [Initialization] reading code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-remoting.jar!/META-INF/components.xml
      15:30:13,125 INFO [Initialization] reading code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam.jar!/META-INF/components.xml
      15:30:13,140 INFO [Initialization] reading properties from: /seam.properties
      15:30:13,140 INFO [Initialization] reading properties from: /jndi.properties
      15:30:13,140 INFO [Initialization] initializing Seam
      15:30:13,156 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-debug.jar
      15:30:13,265 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-pdf.jar
      15:30:13,359 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-lunchvote.jar
      15:30:13,468 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-mail.jar
      15:30:13,515 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-ui.jar
      15:30:13,718 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/selectitems.jar
      15:30:13,734 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam.jar
      15:30:15,171 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-remoting.jar
      15:30:15,296 INFO [Scanner] scanning: /C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-ioc.jar
      15:30:15,375 INFO [Initialization] two components with same name, higher precedence wins: org.jboss.seam.security.identity
      15:30:15,468 INFO [Initialization] two components with same name, higher precedence wins: org.jboss.seam.persistence.persistenceProvider
      15:30:15,484 INFO [Component] Component: org.jboss.seam.core.init, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.Init
      15:30:15,562 INFO [Initialization] Installing components...
      15:30:15,593 INFO [Component] Component: beginningOfElectionJob, scope: SESSION, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.BeginningOfElectionJobImpl, JNDI: BeginningOfElectionJobImpl/local
      15:30:15,625 INFO [Component] Component: castVote, scope: SESSION, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.CastVoteAction, JNDI: CastVoteAction/local
      15:30:15,687 INFO [Component] Component: castVoteJobListener, scope: SESSION, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.CastVoteJobListenerImpl, JNDI: CastVoteJobListenerImpl/local
      15:30:15,687 WARN [Component] Stateful session beans was bound to the APPLICATION context - note that it is not safe to make concurrent calls to the bean: chatManager
      15:30:15,687 INFO [Component] Component: chatManager, scope: APPLICATION, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.ChatManagerImpl, JNDI: ChatManagerImpl/local
      15:30:15,687 INFO [Component] Component: election, scope: CONVERSATION, type: ENTITY_BEAN, class: com.akimeka.lunchvote.Election
      15:30:15,703 INFO [Component] Component: electionScheduler, scope: SESSION, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.ElectionSchedulerImpl, JNDI: ElectionSchedulerImpl/local
      15:30:15,703 INFO [Component] Component: electionStartStop, scope: SESSION, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.ElectionStartStopAction, JNDI: ElectionStartStopAction/local
      15:30:15,718 INFO [Component] Component: emailer, scope: SESSION, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.EmailerImpl, JNDI: EmailerImpl/local
      15:30:15,718 INFO [Component] Component: entityManager, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.core.ManagedPersistenceContext
      15:30:15,734 INFO [Component] Component: login, scope: SESSION, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.LoginAction, JNDI: LoginAction/local
      15:30:15,734 INFO [Component] Component: org.jboss.seam.captcha.captcha, scope: PAGE, type: JAVA_BEAN, class: org.jboss.seam.captcha.Captcha
      15:30:15,734 INFO [Component] Component: org.jboss.seam.captcha.captchaImage, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.captcha.CaptchaImage
      15:30:15,750 INFO [Component] Component: org.jboss.seam.core.applicationContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.ApplicationContext
      15:30:15,750 INFO [Component] Component: org.jboss.seam.core.businessProcessContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.BusinessProcessContext
      15:30:15,750 INFO [Component] Component: org.jboss.seam.core.conversation, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.core.Conversation
      15:30:15,750 INFO [Component] Component: org.jboss.seam.core.conversationContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.ConversationContext
      15:30:15,750 INFO [Component] Component: org.jboss.seam.core.conversationEntries, scope: SESSION, type: JAVA_BEAN, class: org.jboss.seam.core.ConversationEntries
      15:30:15,750 INFO [Component] Component: org.jboss.seam.core.conversationList, scope: PAGE, type: JAVA_BEAN, class: org.jboss.seam.core.ConversationList
      15:30:15,750 INFO [Component] Component: org.jboss.seam.core.conversationStack, scope: PAGE, type: JAVA_BEAN, class: org.jboss.seam.core.ConversationStack
      15:30:15,750 INFO [Component] Component: org.jboss.seam.core.dispatcher, scope: STATELESS, type: STATELESS_SESSION_BEAN, class: org.jboss.seam.core.Dispatcher, JNDI: Dispatcher/local
      15:30:15,750 INFO [Component] Component: org.jboss.seam.core.eventContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.EventContext
      15:30:15,765 INFO [Component] Component: org.jboss.seam.core.events, scope: STATELESS, type: JAVA_BEAN, class: org.jboss.seam.core.Events
      15:30:15,765 INFO [Component] Component: org.jboss.seam.core.exceptions, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.Exceptions
      15:30:15,765 INFO [Component] Component: org.jboss.seam.core.expressions, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.Expressions
      15:30:15,765 INFO [Component] Component: org.jboss.seam.core.facesContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.FacesContext
      15:30:15,765 INFO [Component] Component: org.jboss.seam.core.facesMessages, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.core.FacesMessages
      15:30:15,781 INFO [Component] Component: org.jboss.seam.core.facesPage, scope: PAGE, type: JAVA_BEAN, class: org.jboss.seam.core.FacesPage
      15:30:15,781 INFO [Component] Component: org.jboss.seam.core.httpError, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.HttpError
      15:30:15,781 INFO [Component] Component: org.jboss.seam.core.image, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.core.Image
      15:30:15,781 INFO [Component] Component: org.jboss.seam.core.interpolator, scope: STATELESS, type: JAVA_BEAN, class: org.jboss.seam.core.Interpolator
      15:30:15,781 INFO [Component] Component: org.jboss.seam.core.isUserInRole, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.IsUserInRole
      15:30:15,781 INFO [Component] Component: org.jboss.seam.core.locale, scope: STATELESS, type: JAVA_BEAN, class: org.jboss.seam.core.Locale
      15:30:15,781 INFO [Component] Component: org.jboss.seam.core.localeSelector, scope: SESSION, type: JAVA_BEAN, class: org.jboss.seam.core.LocaleSelector
      15:30:15,781 INFO [Component] Component: org.jboss.seam.core.manager, scope: EVENT, type: JAVA_BEAN, class: org.jboss.seam.core.Manager
      15:30:15,796 INFO [Component] Component: org.jboss.seam.core.messages, scope: SESSION, type: JAVA_BEAN, class: org.jboss.seam.core.Messages
      15:30:15,796 INFO [Component] Component: org.jboss.seam.core.methodContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.MethodContext
      15:30:15,796 INFO [Component] Component: org.jboss.seam.core.pageContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.PageContext
      15:30:15,796 INFO [Component] Component: org.jboss.seam.core.pages, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.Pages
      15:30:15,812 INFO [Component] Component: org.jboss.seam.core.persistenceContexts, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.core.PersistenceContexts
      15:30:15,812 INFO [Component] Component: org.jboss.seam.core.pojoCache, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.PojoCache
      15:30:15,812 INFO [Component] Component: org.jboss.seam.core.redirect, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.core.Redirect
      15:30:15,812 INFO [Component] Component: org.jboss.seam.core.renderer, scope: STATELESS, type: JAVA_BEAN, class: org.jboss.seam.ui.facelet.FaceletsRenderer
      15:30:15,812 INFO [Component] Component: org.jboss.seam.core.resourceBundle, scope: SESSION, type: JAVA_BEAN, class: org.jboss.seam.core.ResourceBundle
      15:30:15,828 INFO [Component] Component: org.jboss.seam.core.safeActions, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.SafeActions
      15:30:15,828 INFO [Component] Component: org.jboss.seam.core.sessionContext, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.SessionContext
      15:30:15,828 INFO [Component] Component: org.jboss.seam.core.switcher, scope: PAGE, type: JAVA_BEAN, class: org.jboss.seam.core.Switcher
      15:30:15,828 INFO [Component] Component: org.jboss.seam.core.transactionListener, scope: EVENT, type: STATEFUL_SESSION_BEAN, class: org.jboss.seam.core.TransactionListener, JNDI: TransactionListener/local
      15:30:15,828 INFO [Component] Component: org.jboss.seam.core.uiComponent, scope: STATELESS, type: JAVA_BEAN, class: org.jboss.seam.core.UiComponent
      15:30:15,828 INFO [Component] Component: org.jboss.seam.core.userPrincipal, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.core.UserPrincipal
      15:30:15,828 INFO [Component] Component: org.jboss.seam.core.validation, scope: EVENT, type: JAVA_BEAN, class: org.jboss.seam.core.Validation
      15:30:15,828 INFO [Component] Component: org.jboss.seam.core.validators, scope: APPLICATION, type:JAVA_BEAN, class: org.jboss.seam.core.Validators
      15:30:15,828 INFO [Component] Component: org.jboss.seam.debug.contexts, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.debug.Contexts
      15:30:15,828 INFO [Component] Component: org.jboss.seam.debug.hotDeployFilter, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.debug.hot.HotDeployFilter
      15:30:15,828 INFO [Component] Component: org.jboss.seam.debug.introspector, scope: EVENT, type: JAVA_BEAN, class: org.jboss.seam.debug.Introspector
      15:30:15,828 INFO [Component] Component: org.jboss.seam.framework.currentDate, scope: STATELESS, type: JAVA_BEAN, class: org.jboss.seam.framework.CurrentDate
      15:30:15,828 INFO [Component] Component: org.jboss.seam.framework.currentDatetime, scope: STATELESS, type: JAVA_BEAN, class: org.jboss.seam.framework.CurrentDatetime
      15:30:15,828 INFO [Component] Component: org.jboss.seam.framework.currentTime, scope: STATELESS, type: JAVA_BEAN, class: org.jboss.seam.framework.CurrentTime
      15:30:15,843 INFO [Component] Component: org.jboss.seam.ioc.spring.springELResolver, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.ioc.spring.SpringELResolver
      15:30:15,843 INFO [Component] Component: org.jboss.seam.mail.mailSession, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.mail.MailSession
      15:30:15,843 INFO [Component] Component: org.jboss.seam.pdf.documentStore, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.pdf.DocumentStore
      15:30:15,843 INFO [Component] Component: org.jboss.seam.persistence.persistenceProvider, scope: STATELESS, type: JAVA_BEAN, class: org.jboss.seam.persistence.HibernatePersistenceProvider
      15:30:15,843 INFO [Component] Component: org.jboss.seam.remoting.remoting, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.remoting.Remoting
      15:30:15,843 INFO [Component] Component: org.jboss.seam.security.configuration, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.security.Configuration
      15:30:15,843 INFO [Component] Component: org.jboss.seam.security.identity, scope: SESSION, type: JAVA_BEAN, class: org.jboss.seam.security.Identity
      15:30:15,859 WARN [Component] Component class should be serializable: org.jboss.seam.selectitems.config
      15:30:15,859 INFO [Component] Component: org.jboss.seam.selectitems.config, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.selectitems.Config
      15:30:15,859 INFO [Component] Component: org.jboss.seam.selectitems.selectItemsConfig, scope: EVENT, type: JAVA_BEAN, class: org.jboss.seam.selectitems.Config
      15:30:15,859 INFO [Component] Component: org.jboss.seam.servlet.exceptionFilter, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.web.ExceptionFilter
      15:30:15,859 INFO [Component] Component: org.jboss.seam.servlet.multipartFilter, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.web.MultipartFilter
      15:30:15,859 INFO [Component] Component: org.jboss.seam.servlet.redirectFilter, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.web.RedirectFilter
      15:30:15,859 INFO [Component] Component: org.jboss.seam.theme.theme, scope: SESSION, type: JAVA_BEAN, class: org.jboss.seam.theme.Theme
      15:30:15,859 INFO [Component] Component: org.jboss.seam.theme.themeSelector, scope: SESSION, type: JAVA_BEAN, class: org.jboss.seam.theme.ThemeSelector
      15:30:15,859 INFO [Component] Component: org.jboss.seam.ui.entityConverter, scope: CONVERSATION, type: JAVA_BEAN, class: org.jboss.seam.ui.EntityConverter
      15:30:15,875 INFO [Component] Component: org.jboss.seam.ui.entityConverterStore, scope: PAGE, type: JAVA_BEAN, class: org.jboss.seam.ui.EntityConverterStore
      15:30:15,875 INFO [Component] Component: org.jboss.seam.ui.graphicImage.dynamicImageResource, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.ui.graphicImage.DynamicImageResource
      15:30:15,875 INFO [Component] Component: org.jboss.seam.ui.graphicImage.dynamicImageStore, scope: SESSION, type: JAVA_BEAN, class: org.jboss.seam.ui.graphicImage.DynamicImageStore
      15:30:15,875 INFO [Component] Component: org.jboss.seam.ui.resource.webResource, scope: APPLICATION, type: JAVA_BEAN, class: org.jboss.seam.ui.resource.WebResource
      15:30:15,875 INFO [Component] Component: restaurant, scope: CONVERSATION, type: ENTITY_BEAN, class: com.akimeka.lunchvote.Restaurant
      15:30:15,875 INFO [Component] Component: restaurantAddEdit, scope: SESSION, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.RestaurantAddEditAction, JNDI: RestaurantAddEditAction/local
      15:30:15,875 INFO [Component] Component: restaurantList, scope: SESSION, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.RestaurantListAction, JNDI: RestaurantListAction/local
      15:30:15,875 INFO [Component] Component: user, scope: SESSION, type: ENTITY_BEAN, class: com.akimeka.lunchvote.User
      15:30:15,906 INFO [Component] Component: userChangePassword, scope: EVENT, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.UserChangePasswordAction, JNDI: UserChangePasswordAction/local
      15:30:15,921 INFO [Component] Component: userEdit, scope: SESSION, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.UserEditAction, JNDI: UserEditAction/local
      15:30:15,921 INFO [Component] Component: userList, scope: SESSION, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.UserListAction, JNDI: UserListAction/local
      15:30:15,921 INFO [Component] Component: userRegister, scope: EVENT, type: STATEFUL_SESSION_BEAN, class: com.akimeka.lunchvote.UserRegisterAction, JNDI: UserRegisterAction/local
      15:30:15,921 INFO [Component] Component: vote, scope: CONVERSATION, type: ENTITY_BEAN, class: com.akimeka.lunchvote.Vote
      15:30:15,921 INFO [Lifecycle] starting up: org.jboss.seam.remoting.remoting
      15:30:15,921 INFO [Lifecycle] starting up: org.jboss.seam.servlet.exceptionFilter
      15:30:15,937 INFO [Lifecycle] starting up: org.jboss.seam.ui.graphicImage.dynamicImageResource
      15:30:15,937 INFO [Lifecycle] starting up: org.jboss.seam.debug.hotDeployFilter
      15:30:15,937 INFO [Lifecycle] starting up: org.jboss.seam.captcha.captchaImage
      15:30:18,921 INFO [Lifecycle] starting up: org.jboss.seam.ioc.spring.springELResolver
      15:30:18,968 INFO [Lifecycle] starting up: org.jboss.seam.servlet.multipartFilter
      15:30:18,968 INFO [Lifecycle] starting up: org.jboss.seam.ui.resource.webResource
      15:30:18,968 INFO [Lifecycle] starting up: org.jboss.seam.servlet.redirectFilter
      15:30:18,968 INFO [Initialization] done initializing Seam
      May 15, 2007 3:30:19 PM com.sun.faces.config.ConfigureListener contextInitialized
      INFO: Initializing Sun's JavaServer Faces implementation (1.2_04-b10-p01) for context '/jboss-seam-lunchvote'
      May 15, 2007 3:30:19 PM com.sun.faces.spi.InjectionProviderFactory createInstance
      INFO: JSF1048: PostConstruct/PreDestroy annotations present. ManagedBeans methods marked with these annotations will have said annotations processed.
      07/05/15 15:30:20 Oracle Containers for Java EE (11.1.1.0.0) Technology Preview initialized
      15:30:33,562 INFO [ServletCacheAdministrator] Created new instance of ServletCacheAdministrator
      15:30:33,562 INFO [ServletCacheAdministrator] Created new application-scoped cache at key: __oscache_cache
      15:30:33,703 INFO [Lifecycle] starting up: org.jboss.seam.security.identity
      May 15, 2007 3:31:00 PM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
      INFO: Added Library from: code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jsf-facelets.jar!/META-INF/jstl-core.taglib.xml
      May 15, 2007 3:31:00 PM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
      INFO: Added Library from: code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-ui.jar!/META-INF/seam-ui.taglib.xml
      May 15, 2007 3:31:00 PM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
      INFO: Added Library from: code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jsf-facelets.jar!/META-INF/jstl-fn.taglib.xml
      May 15, 2007 3:31:00 PM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
      INFO: Added Library from: code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jsf-facelets.jar!/META-INF/jsf-ui.taglib.xml
      May 15, 2007 3:31:00 PM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
      INFO: Added Library from: code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jsf-facelets.jar!/META-INF/jsf-html.taglib.xml
      May 15, 2007 3:31:00 PM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
      INFO: Added Library from: code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-mail.jar!/META-INF/seam-mail.taglib.xml
      May 15, 2007 3:31:00 PM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
      INFO: Added Library from: code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/selectitems-ui.jar!/META-INF/selectitems.taglib.xml
      May 15, 2007 3:31:00 PM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
      INFO: Added Library from: code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/ajax4jsf-1.1.1-SNAPSHOT.jar!/META-INF/a4j.taglib.xml
      May 15, 2007 3:31:00 PM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
      INFO: Added Library from: code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/ajax4jsf-1.1.0.jar!/META-INF/a4j.taglib.xml
      May 15, 2007 3:31:00 PM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
      INFO: Added Library from: code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/richfaces-3.0.1-SNAPSHOT.jar!/META-INF/rich.taglib.xml
      May 15, 2007 3:31:00 PM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
      INFO: Added Library from: code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jsf-facelets.jar!/META-INF/jsf-core.taglib.xml
      May 15, 2007 3:31:00 PM com.sun.facelets.compiler.TagLibraryConfig loadImplicit
      INFO: Added Library from: code-source:/C:/oc4j/j2ee/home/applications/jboss-seam-lunchvote/WEB-INF/lib/jboss-seam-pdf.jar!/META-INF/seam-pdf.taglib.xml
      15:31:01,609 ERROR [ExceptionFilter] could not roll back transaction
      



      The stacktrace indicates it cannot find "java:comp/EJBContext"...is this a relatively new part of the EJB3 spec that Oracle hasn't got around to implementing yet, is this an app server-specific configuration detail I'm missing, or what? Any direction would be most helpful.

      --Rich

      (Once I get this completely working I plan on posting step-by-step instructions on how to integrate Seam with OC4J 11g....I don't wish this OC4J pain on anyone, and believe me, if I could use JBoss AS, I would.)

        • 1. Re: Seam + OC4J 11g (Technology Preview)

          I took Seam (1.2.1 GA)'s "glassfish" example and got it deployed to OC4J 11 (11.1.1.0.0). Here's how I did it:

          Keep in mind, the glassfish example compiles into an ear file, so these instructions involve how to manually deploy an ear file to OC4J...see below for hints on how to manually deploy a war file to OC4J. Also...THIS DOES NOT WORK in OC4J 10, since OC4J 11 is the first release which is "fully" Java EE 5.0 compatible (according to http://www.oracle.com/technology/tech/java/oc4j/index.html).

          ---

          Section 1: Change some code so OC4J doesn't choke on it
          (1) change persistence.xml:
          (add this line)

          <property name="hibernate.transaction.manager_lookup_class"
          value="org.hibernate.transaction.OrionTransactionManagerLookup"/>
          

          (delete this line if not using Derby)
          <property name="hibernate.dialect" value="org.hibernate.dialect.DerbyDialect"/>
          


          (2) change web.xml:
          (delete this line in the ejb reference for jboss-seam-glassfish/AuthenticatorAction/local)
          <local-home/>
          


          (3) make the following classes implement Serializable (Oracle chokes on them, saying they don't adhere to the EJB 2.1 spec if you don't, which is lame):
          ChangePasswordAction.java
          HotelBookingAction.java
          HotelSearchingAction.java
          RegisterAction.java
          


          (4) update conversations.xhtml to be the latest in CVS, as there's a bug in it which will cause an XML parsing error:
          http://fisheye.jboss.com/browse/JBoss/jboss-seam/examples/booking/view/conversations.xhtml?ignore1=B&ignore2=w&k=&r1=1.8&r2=1.9&u=3

          ---

          Section 2: Configuring OC4J to see and successfully run your application
          (1) configure oc4j/j2ee/home/config/server.xml:
          (add this line)
          <application name="jboss-seam-glassfish" path="../../home/applications/jboss-seam-glassfish.ear"
          parent="default" start="true" />
          


          (2) configure oc4j/j2ee/home/config/default-web-site.xml:
          (add this line)
          <web-app application="jboss-seam-glassfish" name="jboss-seam-glassfish"
          load-on-startup="true" root="/jboss-seam-glassfish" />
          


          (3) configure oc4j/j2ee/home/config/data-sources.xml:
          (add these lines, which assume you have a MySQL database installed and available, given the following url, user and password)
          <managed-data-source user="test" password="test" connection-pool-name="mysqlDS"
          jndi-name="jdbc/__default" name="jdbc/__default"/>
           <connection-pool name="mysqlDS">
           <connection-factory factory-class="com.mysql.jdbc.jdbc2.optional.MysqlDataSource"
          user="test" password="test" url="jdbc:mysql://localhost:3306/test" commit-record-table-name=""/>
           </connection-pool>
          


          (4) copy the following jar files to the oc4j/j2ee/home/applib directory:
          commons-beanutils-core.jar **can be found in oc4j/j2ee/home/lib
          commons-digester.jar **can be found in oc4j/j2ee/home/lib
          jsf-api.jar **can be found in oc4j/lib/java/shared/oracle.jsf/1.2
          jsf-impl.jar **can be found in oc4j/lib/java/shared/oracle.jsf/1.2
          sun-commons-beanutils.jar **can be found in oc4j/lib/java/shared/oracle.jsf/1.2
          sun-commons-collections.jar **can be found in oc4j/lib/java/shared/oracle.jsf/1.2
          sun-commons-digester.jar **can be found in oc4j/lib/java/shared/oracle.jsf/1.2
          sun-commons-logging.jar **can be found in oc4j/lib/java/shared/oracle.jsf/1.2
          jboss-seam.jar **can be found in the root of your Seam directory
          hibernate-all.jar **can be found in [Seam directory]/lib
          jboss-ejb3-all.jar **can be found in [Seam directory]/lib
          thirdparty-all.jar **can be found in [Seam directory]/lib
          mysql-connector-java-5.0.4-bin.jar (if using MySql)
          


          ---

          Section 3: Deploy your application to OC4J
          (1) run "ant clean main" in the examples/glassfish directory

          (2) copy the ear file from the examples/glassfish/build directory to the oc4j/j2ee/home/applications directory

          (3) copy the jar file from the examples/glassfish/build directory to the oc4j/j2ee/home/applib directory

          (4) start up oc4j and enjoy

          ---

          You'll get some warnings and stuff (it's possible to do some more code and configuration tweaks to get rid of them), but your app should work.

          ---
          ---

          Some other helpful hints:
          (1) if you're not using an ear file, but rather a war file, you'll need to do a couple other (different from Section 2 above) things:
          (a) register both the ejb jar and the war fiile in oc4j/j2ee/home/config/application.xml:
          <ejb-module id="jboss-seam-glassfish_ejb" path="../../home/applications/jboss-seam-glassfish.jar"/>
          <web-module id="jboss-seam-glassfish" path="../../home/applications/jboss-seam-glassfish.war"/>
          

          (b) register your app in oc4j/j2ee/home/config/default-web-site.xml:
          <web-app application="default" name="jboss-seam-lunchvote" root="/jboss-seam-lunchvote" load-on-startup="true" />
          

          (note the application is simply "default")
          (c) don't change oc4j/j2ee/home/config/server.xml
          (d) make sure the ejb-module id you specify (in this case, "jboss-seam-glassfish_ejb") matches the jndi pattern you use in your application (in components.xml and web.xml)

          (2) if you are wondering whether OC4J contains any of your Beans when it starts up (you're getting JNDI lookup problems, for example), try this utility:
          http://localhost:8888/dmsoc4j/Spy (I've found clicking on the "Text" link in the upper left corner and doing a search on the bean name I'm looking for is most helpful)

          (3) if you still get JNDI lookup problems and you know OC4J has your EJBs someplace, try putting @Startup at the top of the Session Bean it cannot find

          (4) if you get the cryptic "java:comp/EJBContext not found" error, delete everything in your jndi.properties file...you don't need it...I got this error when trying to use something like:
          java.naming.factory.initial=com.evermind.server.ApplicationClientInitialContextFactory
          (or com.evermind.server.rmi.RMIInitialContextFactory)
          java.naming.provider.url=ormi://localhost/jndidemo
          java.naming.security.principal=SCOTT
          java.naming.security.credentials=TIGER
          

          A blank jndi.properties file works, though. *shrug*

          (5) if you ever get an AnnotatedNoClassDefFoundError, just throw the appropriate jar file in oc4j/j2ee/home/applib and it should work


          • 2. Re: Seam + OC4J 11g (Technology Preview)
            gavin.king

            Great! Thanks for that. Would you be able to add a Wiki page with this information?

            Thanks!

            • 3. Re: Seam + OC4J 11g (Technology Preview)

              Sure thing...

              Maybe I'm a n00b, but I can't seem to add a wiki page. I can edit an existing one ( here: http://wiki.jboss.org/wiki/Wiki.jsp?page=UndefinedPages), but none of the existing wiki pages - even those with no content - have relevant file names.

              Please advise.

              --Rich

              • 4. Re: Seam + OC4J 11g (Technology Preview)
                pmuir

                http://www.jboss.com/wiki/Edit.jsp?page=SeamOC4J11g - if you are logged in that should work.

                • 5. Re: Seam + OC4J 11g (Technology Preview)

                  Done!

                  • 6. Re: Seam + OC4J 11g (Technology Preview)
                    gavin.king

                    Thanks man, appreciated.