Hi,

I'm using the Deltaspike servlet module successfully on JBoss EAP 6.2.
The same deployment (WAR) fails on startup when deployed on
Websphere 8.5.5.1 (Liberty profile)

This is the error

[4/27/14 10:09:00:432 CEST] 00000025
org.apache.webbeans.config.BeansDeployer                     E
WebBeans producer method : getHttpSession return type in the component
implementation class :
org.apache.deltaspike.servlet.impl.produce.ServletObjectProducer with
passivating scope @javax.enterprise.context.SessionScoped must be
Serializable
javax.enterprise.inject.IllegalProductException: WebBeans producer
method : getHttpSession return type in the component implementation
class : org.apache.deltaspike.servlet.impl.produce.ServletObjectProducer
with passivating scope @javax.enterprise.context.SessionScoped must be
Serializable
        at 
org.apache.webbeans.util.WebBeansUtil.checkSerializableScopeType(WebBeansUtil.java:2089)
        at 
org.apache.webbeans.component.ProducerMethodBean.checkScopeType(ProducerMethodBean.java:307)
        at 
org.apache.webbeans.component.ProducerMethodBean.isPassivationCapable(ProducerMethodBean.java:315)
        at 
org.apache.webbeans.util.WebBeansUtil.isPassivationCapable(WebBeansUtil.java:2537)
        at 
org.apache.webbeans.config.BeansDeployer.checkPassivationScope(BeansDeployer.java:738)
        at 
org.apache.webbeans.config.BeansDeployer.validate(BeansDeployer.java:432)
        at 
org.apache.webbeans.config.BeansDeployer.validateInjectionPoints(BeansDeployer.java:383)
        at 
org.apache.webbeans.config.BeansDeployer.deploy(BeansDeployer.java:184)
        at 
org.apache.webbeans.lifecycle.AbstractLifeCycle.startApplication(AbstractLifeCycle.java:155)
        at 
org.apache.webbeans.web.lifecycle.WebContainerLifecycle.startApplication(WebContainerLifecycle.java:97)
        at 
com.ibm.ws.webbeans.WebBeansInitializer.onStartup(WebBeansInitializer.java:72)


It would appear as if apache webbeans takes exception to this method
in ServletObjectProducer
<https://github.com/apache/deltaspike/blob/master/deltaspike/modules/servlet/impl/src/main/java/org/apache/deltaspike/servlet/impl/produce/ServletObjectProducer.java>
as HttpSession (the return type) is not Serializable


    @Produces

    @DeltaSpike

    @SessionScoped

    public HttpSession getHttpSession()
    {
    ...

    }

Is this an issue with apache webbeans or should all return types of
SessionScoped producers be Serializable?

Regards
Justin

Reply via email to