[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-1650) NPE thrown when attempting to configure pojo as Seam component
by Michael Youngstrom (JIRA)
NPE thrown when attempting to configure pojo as Seam component
--------------------------------------------------------------
Key: JBSEAM-1650
URL: http://jira.jboss.com/jira/browse/JBSEAM-1650
Project: JBoss Seam
Issue Type: Bug
Affects Versions: 2.0.0.CR1
Reporter: Michael Youngstrom
Fix For: 2.0.0.CR1
NPE thrown when attempting to configure pojo as Seam component.
<component name="expanderState" class="java.util.HashMap" auto-create="true" scope="conversation"/>
throws:
java.lang.RuntimeException: Could not create Component: expanderState
at org.jboss.seam.init.Initialization.addComponent(Initialization.java:910)
at org.jboss.seam.init.Initialization.installComponents(Initialization.java:841)
at org.jboss.seam.init.Initialization.init(Initialization.java:508)
at org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:34)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3764)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4216)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:448)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:615)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
Caused by:
java.lang.NullPointerException
at org.jboss.seam.init.DeploymentDescriptor.<init>(DeploymentDescriptor.java:33)
at org.jboss.seam.Seam.getEjbDescriptor(Seam.java:51)
at org.jboss.seam.Seam.getComponentType(Seam.java:102)
at org.jboss.seam.Component.<init>(Component.java:216)
at org.jboss.seam.Component.<init>(Component.java:207)
at org.jboss.seam.init.Initialization.addComponent(Initialization.java:896)
--
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
16 years, 8 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-1641) redirect do proper page in pageflow as out of order request comes in
by Michael Kozak (JIRA)
redirect do proper page in pageflow as out of order request comes in
--------------------------------------------------------------------
Key: JBSEAM-1641
URL: http://jira.jboss.com/jira/browse/JBSEAM-1641
Project: JBoss Seam
Issue Type: Feature Request
Components: BPM
Reporter: Michael Kozak
I'll describe scenario.
Pages used in page flow "p1, p2, p3, pfinal".
Transitions:
p1 to p2
p2 to p3
p3 to pfinal
eg. p1 -> p2 -> p3 -> pfinal
p1 starts conversation, pfinal ends conversation
p2,p3,pfinal requires conversation.
Now let's consider out of order requests.
I enter page p1, conversation is started.
Next I point the browser manually to page p3 with cid included.
Page p3 is displayed with "garbage" - no logic in p2 was executed.
Buttons on page redirect to p1 of course.
Feature request: redirect the request to page p3 to go to proper page (p1 in this case).
This applies only when conversation is in progress as other requests are handled by no-conversation-view-id.
Seam has org.jboss.seam.core.pageflow in conversation scope with "page" and "node" properties set to "p1" but it seems that it is checked only on POST requests.
--
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
16 years, 8 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-1602) exception handler not recognizing end-conversation
by Hung Tang (JIRA)
exception handler not recognizing end-conversation
--------------------------------------------------
Key: JBSEAM-1602
URL: http://jira.jboss.com/jira/browse/JBSEAM-1602
Project: JBoss Seam
Issue Type: Bug
Components: Core
Affects Versions: 2.0.0.BETA1
Environment: Seam-CVS
Reporter: Hung Tang
In my application, I'm using pages.xml exception handling mechanism to automatically end conversations when optimistic locking exceptions ever arise.
This is what I have
<exception class="javax.persistence.OptimisticLockException">
<end-conversation/>
<redirect view-id="/p/home.xhtml">
<message severity="ERROR">#{messages['concurrentmodification']}</message>
</redirect>
</exception>
However, when it does come up, the conversation is not ending as I want.
I could reproduce this error in the contact-list example. Just add begin propagation to the editContact and the exception handler will recognize it as a javax.persistence.PersistenceException, but it will not end the conversation as you have told it to.
--
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
16 years, 8 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-1593) New processing for stateful bean @Destroy and @Remove causes problems.
by Chris Rudd (JIRA)
New processing for stateful bean @Destroy and @Remove causes problems.
----------------------------------------------------------------------
Key: JBSEAM-1593
URL: http://jira.jboss.com/jira/browse/JBSEAM-1593
Project: JBoss Seam
Issue Type: Bug
Components: Core
Affects Versions: 2.0.0.BETA1
Reporter: Chris Rudd
I have an EJB that has several methods marked as @Remove, as I want the bean remove whenever those methods are executed.
One of which is marked as @Destroy, which is the ONLY one that should be called because the object is being destroyed (ie from a call to Component.destroy. The problem is that under the new processing rules the "defaultRemoveMethod is set to the last parameterless @Remove method.
I would suggest that the defaultRemoveMethod only be set to a "found @Remove" method if the @Destroy method has not been defined / does not have the @Remove annotation.
my class :
class Foo {
@Destroy
@Remove
public void cleanup() { /* does state cleanup*/ }
@Remove
public String removeEntity() { /* does some work*/ }
}
For this class cleanup is executed because its the destroy method, then removeEntity is executed since it was the last @Remove method found.
--
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
16 years, 8 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-1584) @Logger and Spring beans
by Magnus Heino (JIRA)
@Logger and Spring beans
------------------------
Key: JBSEAM-1584
URL: http://jira.jboss.com/jira/browse/JBSEAM-1584
Project: JBoss Seam
Issue Type: Feature Request
Components: Spring
Affects Versions: 2.0.0.BETA1
Reporter: Magnus Heino
It would be nice if spring beans could be scanned for @Logger and injected with Log instances just like seam components.
Using the code below, you can add this to applicationContext.xml...
<bean class="org.jboss.seam.ioc.spring.LoggerPostProcessor" />
...to have all spring beans scanned for @Logger and have a Log instance injected, just like seam components. Then you can access the same context and log functionallity in your spring beans as in your seam components.
I guess the seam spring namespace could be extended with <seam:logger/> to make it even more simple to use.
package org.jboss.seam.ioc.spring;
import java.lang.reflect.Field;
import org.jboss.seam.annotations.Logger;
import org.jboss.seam.log.Logging;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.config.BeanPostProcessor;
import org.springframework.util.ReflectionUtils;
import org.springframework.util.StringUtils;
import org.springframework.util.ReflectionUtils.FieldCallback;
public class LoggerPostProcessor implements BeanPostProcessor {
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
return bean;
}
public Object postProcessBeforeInitialization(final Object bean, final String beanName) throws BeansException {
ReflectionUtils.doWithFields(bean.getClass(), new FieldCallback() {
public void doWith(Field field) throws IllegalArgumentException, IllegalAccessException {
if (field.isAnnotationPresent(Logger.class)) {
String category = field.getAnnotation(Logger.class).value();
if(!StringUtils.hasText(category)) {
category = bean.getClass().getName();
}
ReflectionUtils.makeAccessible(field);
field.set(bean, Logging.getLog(category));
}
}
});
return bean;
}
}
--
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
16 years, 8 months