Bug 794141 (JBEPP-1207)

Summary: NameNotFoundException when an authorized user accesses Seam Booking Portlet
Product: [JBoss] JBoss Enterprise Portal Platform 5 Reporter: Miroslav Cupák <mcupak>
Component: unspecifiedAssignee: Thomas Heute <theute>
Status: CLOSED NEXTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: 5.2.0.ER01CC: mwringe, tkyjovsk
Target Milestone: ---   
Target Release: 5.2.0.ER03   
Hardware: Unspecified   
OS: Unspecified   
URL: http://jira.jboss.org/jira/browse/JBEPP-1207
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-10-04 08:05:02 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
seam.log none

Description Miroslav Cupák 2011-09-23 16:03:29 UTC
Workaround: Workaround Exists
Workaround Description: Renaming _seamBooking-ear-2.1.1.GA.EPP51.ear_ (as found in the Portlet Bridge directory) to _seamEAR.ear_ gets you around the problem.
project_key: JBEPP

When the Seam Booking Portlet from the Portal Booking Demo is placed on a page, an anonymous user can access it and the portlet is displayed correctly without any exception being thrown. When accessing the portlet after signing in, the portlet is not displayed, because the authenticator cannot be instantiated.

Stacktrace from the server log (shortened):

{code}
17:27:42,585 ERROR [Exceptions] handled and logged exception
javax.el.ELException: org.jboss.seam.InstantiationException: Could not instantiate Seam component: authenticator
        at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:339)
        at org.jboss.el.util.ReflectionUtil.invokeMethod(ReflectionUtil.java:348)
        at org.jboss.el.parser.AstPropertySuffix.invoke(AstPropertySuffix.java:58)
        ...
        at java.lang.Thread.run(Thread.java:662)
Caused by: org.jboss.seam.InstantiationException: Could not instantiate Seam component: authenticator
        at org.jboss.seam.Component.newInstance(Component.java:2170)
        ...
Caused by: javax.naming.NameNotFoundException: seamEAR not bound
        at org.jnp.server.NamingServer.getBinding(NamingServer.java:771)
        ...
{code}

Comment 1 Miroslav Cupák 2011-09-23 16:04:00 UTC
Full log attached.

Comment 2 Miroslav Cupák 2011-09-23 16:04:00 UTC
Attachment: Added: seam.log


Comment 3 Miroslav Cupák 2011-09-23 16:11:03 UTC
Workaround Description: Added: Renaming _seamBooking-ear-2.1.1.GA.EPP51.ear_ (as found in the Portlet Bridge directory) to _seamEAR.ear_ gets you around the problem.
Workaround: Added: [Workaround Exists]


Comment 4 Miroslav Cupák 2011-09-23 16:23:00 UTC
Link: Added: This issue is related to JBQA-5399


Comment 5 Matt Wringe 2011-09-27 16:10:30 UTC
The seam integration requires that the name of the ear be specified in the WEB-INF/components.xml file of the seamBookingPortlet.war (see line:
<core:init jndi-pattern="seamEAR/#{ejbName}/local" debug="false"/>

See http://docs.jboss.org/seam/2.2.2.Final/reference/en-US/html_single/#config.integration.ejb.container for more information.

Its probably best if when we create the EPP distribution we copy the ear as seamEAR.ear instead of seamBooking-ear-2.1.1.GA.EPP51.ear

Comment 6 Thomas Heute 2011-10-04 08:05:01 UTC
Default name to seamEAR.ear in package like it was done in the past.

Comment 7 Thomas Heute 2011-10-04 08:05:02 UTC
Release Notes Docs Status: Added: Not Required