[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-4105) NullPointer exception configuring a component using a qualified XML element
by Dan Allen (JIRA)
NullPointer exception configuring a component using a qualified XML element
---------------------------------------------------------------------------
Key: JBSEAM-4105
URL: https://jira.jboss.org/jira/browse/JBSEAM-4105
Project: Seam
Issue Type: Bug
Components: Core
Affects Versions: 2.1.2.CR1
Reporter: Dan Allen
Assignee: Dan Allen
Fix For: 2.1.2.GA
Consider the case where there is an existing component defined with the @Name annotation. Now, you want to be able to configure that component in XML. If the class name for the component cannot be derived from the name of the component, then Seam throws a NullPointerException.
Case in point. Assume the following component
package com.mydomain.project;
@Name("com.mydomain.project.init")
public class ProjectInit {
...
}
Now assume I am configuring it with:
<project:init stage="test"/>
Because the class of the component, com.mydomain.project.ProjectInit, cannot be derived form the component name, com.mydomain.project.init, Seam tries to do something with the class object that leads to a NullPointerException. What should happen is that Seam should recognize it is configuring an existing component and ignore that fact that it cannot resolve the class. That is the intended behavior.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
15 years
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-3911) zipped ear files cause seam NullPointerException on deployment
by Adam Montague (JIRA)
zipped ear files cause seam NullPointerException on deployment
--------------------------------------------------------------
Key: JBSEAM-3911
URL: https://jira.jboss.org/jira/browse/JBSEAM-3911
Project: Seam
Issue Type: Bug
Environment: Jboss 5.0.0-GA, jdk 1.6.0_07
Reporter: Adam Montague
A webapp using seam that is deployed as a zipped ear fails to deploy. First you get an exception like this for each war that uses seam:
15:55:08,634 WARN [URLScanner] could not read entries
java.util.zip.ZipException: error in opening zip file
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:114)
at java.util.zip.ZipFile.<init>(ZipFile.java:131)
at org.jboss.seam.deployment.URLScanner.handleArchiveByFile(URLScanner.java:111)
at org.jboss.seam.deployment.URLScanner.handle(URLScanner.java:98)
at org.jboss.seam.deployment.URLScanner.scanResources(URLScanner.java:81)
at org.jboss.seam.deployment.StandardDeploymentStrategy.scan(StandardDeploymentStrateg
y.java:67)
at org.jboss.seam.init.Initialization.create(Initialization.java:102)
at org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:34)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3910)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4393)
at org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeployInternal(Tomca
tDeployment.java:367)
at org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeploy(TomcatDeploym
ent.java:146)
at org.jboss.web.deployers.AbstractWarDeployment.start(AbstractWarDeployment.java:460)
at org.jboss.web.deployers.WebModule.startModule(WebModule.java:118)
at org.jboss.web.deployers.WebModule.start(WebModule.java:96)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:2
5)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:157)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
at org.jboss.system.microcontainer.ServiceProxy.invoke(ServiceProxy.java:206)
at $Proxy36.start(Unknown Source)
at org.jboss.system.microcontainer.StartStopLifecycleAction.installAction(StartStopLif
ecycleAction.java:42)
at org.jboss.system.microcontainer.StartStopLifecycleAction.installAction(StartStopLif
ecycleAction.java:37)
at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallActi
on(SimpleControllerContextAction.java:62)
at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessCon
trollerContextAction.java:71)
at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractContr
ollerContextActions.java:51)
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerCo
ntext.java:348)
at org.jboss.system.microcontainer.ServiceControllerContext.install(ServiceControllerC
ontext.java:286)
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:159
8)
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.j
ava:934)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.
java:1062)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.
java:984)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
at org.jboss.system.ServiceController.doChange(ServiceController.java:688)
at org.jboss.system.ServiceController.start(ServiceController.java:460)
at org.jboss.system.deployers.ServiceDeployer.start(ServiceDeployer.java:146)
at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:104)
at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:45)
at org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(
AbstractSimpleRealDeployer.java:62)
at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDe
ployer.java:50)
at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:1
71)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:143
9)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersI
mpl.java:1157)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersI
mpl.java:1178)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersI
mpl.java:1210)
at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1098
)
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerCo
ntext.java:348)
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:159
8)
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.j
ava:934)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.
java:1062)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.
java:984)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:781)
at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:545
)
at org.jboss.system.server.profileservice.ProfileServiceBootstrap.loadProfile(ProfileS
erviceBootstrap.java:304)
at org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileService
Bootstrap.java:205)
at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:405)
at org.jboss.Main.boot(Main.java:209)
at org.jboss.Main$1.run(Main.java:547)
at java.lang.Thread.run(Thread.java:619)
Then you get the following exception for the first war, causing deployment to fail:
15:16:26,981 ERROR [[/merlin/affiliate]] Exception sending context initialized event to listen
er instance of class org.jboss.seam.servlet.SeamListener
java.lang.NullPointerException
at org.jboss.seam.init.Initialization.installComponents(Initialization.java:958)
at org.jboss.seam.init.Initialization.init(Initialization.java:589)
at org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:34)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3910)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4393)
at org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeployInternal(Tomca
tDeployment.java:367)
at org.jboss.web.tomcat.service.deployers.TomcatDeployment.performDeploy(TomcatDeploym
ent.java:146)
at org.jboss.web.deployers.AbstractWarDeployment.start(AbstractWarDeployment.java:460)
at org.jboss.web.deployers.WebModule.startModule(WebModule.java:118)
at org.jboss.web.deployers.WebModule.start(WebModule.java:96)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:2
5)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:157)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
at org.jboss.system.microcontainer.ServiceProxy.invoke(ServiceProxy.java:206)
at $Proxy36.start(Unknown Source)
at org.jboss.system.microcontainer.StartStopLifecycleAction.installAction(StartStopLif
ecycleAction.java:42)
at org.jboss.system.microcontainer.StartStopLifecycleAction.installAction(StartStopLif
ecycleAction.java:37)
at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallActi
on(SimpleControllerContextAction.java:62)
at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessCon
trollerContextAction.java:71)
at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractContr
ollerContextActions.java:51)
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerCo
ntext.java:348)
at org.jboss.system.microcontainer.ServiceControllerContext.install(ServiceControllerC
ontext.java:286)
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:159
8)
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.j
ava:934)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.
java:1062)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.
java:984)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
at org.jboss.system.ServiceController.doChange(ServiceController.java:688)
at org.jboss.system.ServiceController.start(ServiceController.java:460)
at org.jboss.system.deployers.ServiceDeployer.start(ServiceDeployer.java:146)
at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:104)
at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:45)
at org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(
AbstractSimpleRealDeployer.java:62)
at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDe
ployer.java:50)
at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:1
71)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:143
9)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersI
mpl.java:1157)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersI
mpl.java:1178)
at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersI
mpl.java:1210)
at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1098
)
at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerCo
ntext.java:348)
at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:159
8)
at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.j
ava:934)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.
java:1062)
at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.
java:984)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:781)
at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:545
)
at org.jboss.system.server.profileservice.ProfileServiceBootstrap.loadProfile(ProfileS
erviceBootstrap.java:304)
at org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileService
Bootstrap.java:205)
at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:405)
at org.jboss.Main.boot(Main.java:209)
at org.jboss.Main$1.run(Main.java:547)
at java.lang.Thread.run(Thread.java:619)
If you unzip the ear, then you still get the zipexceptions for each war in the ear, but the final exception does not happen and the deployment succeeds.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
15 years
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-3562) update() should consult the dirty flag on the persistence context
by Dan Allen (JIRA)
update() should consult the dirty flag on the persistence context
-----------------------------------------------------------------
Key: JBSEAM-3562
URL: https://jira.jboss.org/jira/browse/JBSEAM-3562
Project: Seam
Issue Type: Feature Request
Components: Framework
Affects Versions: 2.1.0.CR1
Reporter: Dan Allen
Assignee: Dan Allen
Priority: Minor
Fix For: 2.1.0.GA
When update() is called on a Home instance, only attempt to flush, register the status message, and raise the transaction success event if the persistence context was dirty. Of course, this only is effective if Hibernate is the persistence provider.
@Transactional
public String update()
{
joinTransaction();
// For a non-Hibernate JPA provider, this always returns true
if (PersistenceProvider.instance().isDirty(getEntityManager()))
{
getEntityManager().flush();
updatedMessage();
raiseAfterTransactionSuccessEvent();
return "updated";
}
return "unchanged";
}
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
15 years
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-2257) Raise a session expired and new session event on occurence
by Jacob Orshalick (JIRA)
Raise a session expired and new session event on occurence
----------------------------------------------------------
Key: JBSEAM-2257
URL: http://jira.jboss.com/jira/browse/JBSEAM-2257
Project: JBoss Seam
Issue Type: Feature Request
Components: Security
Affects Versions: 2.0.0.GA
Reporter: Jacob Orshalick
Priority: Minor
You have to make some assumptions here, but you can basically notify the user when the server session has ended with the following in a PhaseListener:
Code:
@Observer("org.jboss.seam.beforePhase")
public void beforePhase(PhaseEvent event)
{
if(event.getPhaseId() == PhaseId.RESTORE_VIEW)
{
HttpServletRequest request =
(HttpServletRequest) FacesContext.getCurrentInstance()
.getExternalContext().getRequest();
if(request.getRequestedSessionId() != null
&& request.getSession().isNew())
Events.instance().raiseEvent("org.jboss.seam.sessionExpired");
...
Based on general cookie settings this will raise the event when the user still has the browser window open, the http session expired, and the user tries to access the app. If the user closes and reopens the browser to start the application, the event will not be raised. This of course makes the assumption that cookies expire when the browser session is ended (which is generally the case).
The org.jboss.seam.newSession event would simply change the condition to:
if(request.getRequestedSessionId() == null
&& request.getSession().isNew())
Events.instance().raiseEvent("org.jboss.seam.newSession");
This is generally useful for user notification on the login screen. Please see the forum reference for more information. Thanks.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
15 years