geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ken McArthur <...@fgood.org>
Subject Re: ActivationSpec problem (ClassCastException)
Date Thu, 19 Jan 2006 16:13:44 GMT
You've probably already looked into this but, just in case, this sounds like
class exists in multiple jar repositories and classLoaders are different.


On 1/19/06, David Jencks <david_jencks@yahoo.com> wrote:
>
>
> On Jan 19, 2006, at 1:01 AM, johnxmas wrote:
>
> > Hi Aaron,
> >
> > a) I tried with just one setter and getter
> >
> > private int port;
> > public int getPort()
> > public void setPortl(int port)  throws InvalidPropertyException
> >
> > and the problem persists.
>
> Unfortunately the spec doesn't provide any guidance on what types are
> allowed for activation spec properties.  Reasonable conclusions might
> be,
> - only string
> - only types allowed for ManagedConnectionFactory properties
> - only strings and primitive types.....
>
> We might support only types allowed for MCF properties, which rules
> out primitive types.  Could you try Integer and String and report the
> results?
>
> thanks
> david jencks
>
> >
> > b) If I suppress the property port in all descriptors and force the
> > value in my ActivationSpec,
> > the MDB deploys with no problem.
> >
> > I m a bit puzzled there. If I can be of any help for investigating
> > deeper, let me know
> >
> > Thanks for your help
> >
> > Jean-Noel
> >
> >
> >
> >
> >
> >> I wonder if the problem is due to the multiple setters.  Can you
> >> temporarily try with an ActivationSpec class with only one int setter
> >> (assuming the getter and private variable are also ints) and see if
> >> that solves the problem?  It so, it would suggest that we need to try
> >> harder to distinguish the proper setter to call in the face of
> >> overloading like that.  If that doesn't help, maybe we have a problem
> >> with setting primitives or something?
> >>
> >> Thanks,
> >>    Aaron
> >>
> >> On 1/18/06, johnxmas <johnxmas@free.fr> wrote:
> >>> Hi,
> >>>
> >>> id is String
> >>>
> >>> As regards port, it's an int. But the ActivationSpec implements
> >>> three setters
> >>> (each required due to WebLogic, Jboss, Sun and others
> >>> implementations of their application server):
> >>> - with an int parameter
> >>> -  with an Integer parameter
> >>> - with a String parameter
> >>>
> >>>
> >>> Jean-Noël
> >>>
> >>>
> >>>
> >>>
> >>>> Hmm...  It looks like we're trying to set the wrong data type on
> >>>> the
> >>>> properties.  Can you check the data types of the "port" and "id"
> >>>> properties?
> >>>>
> >>>> Thanks,
> >>>>    Aaron
> >>>>
> >>>> On 1/17/06, johnxmas <johnxmas@free.fr> wrote:
> >>>>> I've written an InboundResourceAdapter. When deploying my
> >>>>> MessageDrivenBean, with the following
> >>>>> descriptor
> >>>>>
> >>>>> <openejb-jar
> >>>>>     xmlns="http://www.openejb.org/xml/ns/openejb-jar"
> >>>>>     xmlns:naming="http://geronimo.apache.org/xml/ns/naming"
> >>>>>     xmlns:security="http://geronimo.apache.org/xml/ns/security"
> >>>>>     xmlns:sys="http://geronimo.apache.org/xml/ns/deployment"
> >>>>>     configId="InboundMdb"  parentId="ScortJcaAdapter15">
> >>>>>  <enterprise-beans>
> >>>>>         <message-driven>
> >>>>>         <ejb-name>InboundMdb</ejb-name>
> >>>>>         <resource-adapter>
> >>>>>           <resource-link>ScortJcaAdapter15</resource-link>
> >>>>>         </resource-adapter>
> >>>>>         <activation-config>
> >>>>>                 <activation-config-property>
> >>>>>                         <activation-config-property-name>port</
> >>>>> activation-config-property-name>
> >>>>>                         <activation-config-property-
> >>>>> value>23072</activation-config-property-value>
> >>>>>                 </activation-config-property>
> >>>>>                 <activation-config-property>
> >>>>>                         <activation-config-property-name>id</
> >>>>> activation-config-property-name>
> >>>>>                         <activation-config-property-
> >>>>> value>CUSTLIST</activation-config-property-value>
> >>>>>                 </activation-config-property>
> >>>>>         </activation-config>
> >>>>>           </message-driven>
> >>>>>  </enterprise-beans>
> >>>>> </openejb-jar>
> >>>>>
> >>>>>  I encounter the following problem (using geronimo 1.0)
> >>>>> (BTW, it reminds me of GERONIMO-689)
> >>>>>
> >>>>> 17:26:08,054 ERROR [GBeanInstanceState] Error while starting;
> >>>>> GBean is now in the FAILED state:
> >>>>> objectName="geronimo.server:EJBModule=InboundMdb,J2EEApplication=n
> >>>>> ull,J2EEServer=geronimo,j2eeType=JCAActivationSpec,name=InboundMdb
> >>>>> "
> >>>>> java.lang.ClassCastException
> >>>>>         at
> >>>>> com.scort.inbound.jca.socket.impl.SocketActivationSpec$
> >>>>> $FastClassByCGLIB$$7d9f9cac.invoke(<generated>)
> >>>>>         at net.sf.cglib.reflect.FastMethod.invoke
> >>>>> (FastMethod.java:53)
> >>>>>         at org.apache.geronimo.gbean.DynamicGBeanDelegate
> >>>>> $Operation.invoke(DynamicGBeanDelegate.java:181)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.DynamicGBeanDelegate.setAttribute
> >>>>> (DynamicGBeanDelegate.java:134)
> >>>>>         at
> >>>>> org.apache.geronimo.connector.ActivationSpecWrapperGBean.setAttrib
> >>>>> ute(ActivationSpecWrapperGBean.java:68)
> >>>>>         at org.apache.geronimo.gbean.runtime.GBeanAttribute
> >>>>> $DynamicSetterMethodInvoker.invoke(GBeanAttribute.java:430)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.GBeanAttribute.setValue
> >>>>> (GBeanAttribute.java:403)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.GBeanAttribute.inject
> >>>>> (GBeanAttribute.java:334)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.createInstance
> >>>>> (GBeanInstance.java:925)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.GBeanInstanceState.attemptFullSt
> >>>>> art(GBeanInstanceState.java:325)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.GBeanInstanceState.start
> >>>>> (GBeanInstanceState.java:110)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.GBeanInstanceState.startRecursiv
> >>>>> e(GBeanInstanceState.java:132)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.startRecursive
> >>>>> (GBeanInstance.java:537)
> >>>>>         at
> >>>>> org.apache.geronimo.kernel.basic.BasicKernel.startRecursiveGBean
> >>>>> (BasicKernel.java:208)
> >>>>>         at
> >>>>> org.apache.geronimo.kernel.config.Configuration.startRecursiveGBea
> >>>>> ns(Configuration.java:315)
> >>>>>         at org.apache.geronimo.kernel.config.Configuration$
> >>>>> $FastClassByCGLIB$$7f4b4a9b.invoke(<generated>)
> >>>>>         at net.sf.cglib.reflect.FastMethod.invoke
> >>>>> (FastMethod.java:53)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke
> >>>>> (FastMethodInvoker.java:38)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke
> >>>>> (GBeanOperation.java:118)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke
> >>>>> (GBeanInstance.java:835)
> >>>>>         at org.apache.geronimo.kernel.basic.BasicKernel.invoke
> >>>>> (BasicKernel.java:178)
> >>>>>         at org.apache.geronimo.kernel.basic.BasicKernel.invoke
> >>>>> (BasicKernel.java:173)
> >>>>>         at
> >>>>> org.apache.geronimo.kernel.config.ConfigurationManagerImpl.start
> >>>>> (ConfigurationManagerImpl.java:142)
> >>>>>         at
> >>>>> org.apache.geronimo.kernel.config.ConfigurationManagerImpl$
> >>>>> $FastClassByCGLIB$$fbed85d2.invoke(<generated>)
> >>>>>         at net.sf.cglib.reflect.FastMethod.invoke
> >>>>> (FastMethod.java:53)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke
> >>>>> (FastMethodInvoker.java:38)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke
> >>>>> (GBeanOperation.java:118)
> >>>>>         at
> >>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke
> >>>>> (GBeanInstance.java:800)
> >>>>>         at org.apache.geronimo.gbean.runtime.RawInvoker.invoke
> >>>>> (RawInvoker.java:57)
> >>>>>         at
> >>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke
> >>>>> (RawOperationInvoker.java:36)
> >>>>>         at
> >>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(
> >>>>> ProxyMethodInterceptor.java:96)
> >>>>>         at
> >>>>> org.apache.geronimo.kernel.config.ConfigurationManager$
> >>>>> $EnhancerByCGLIB$$49a67291.start(<generated>)
> >>>>>         at
> >>>>> org.apache.geronimo.console.configmanager.DeploymentPortlet.proces
> >>>>> sAction(DeploymentPortlet.java:126)
> >>>>>         at org.apache.pluto.core.PortletServlet.dispatch
> >>>>> (PortletServlet.java:229)
> >>>>>         at org.apache.pluto.core.PortletServlet.doPost
> >>>>> (PortletServlet.java:163)
> >>>>>         at javax.servlet.http.HttpServlet.service
> >>>>> (HttpServlet.java:615)
> >>>>>         at javax.servlet.http.HttpServlet.service
> >>>>> (HttpServlet.java:688)
> >>>>>         at org.apache.pluto.core.PortletServlet.service
> >>>>> (PortletServlet.java:153)
> >>>>>         at
> >>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
> >>>>> (ApplicationFilterChain.java:252)
> >>>>>         at
> >>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter
> >>>>> (ApplicationFilterChain.java:173)
> >>>>>         at org.apache.catalina.core.ApplicationDispatcher.invoke
> >>>>> (ApplicationDispatcher.java:672)
> >>>>>         at
> >>>>> org.apache.catalina.core.ApplicationDispatcher.doInclude
> >>>>> (ApplicationDispatcher.java:574)
> >>>>>         at
> >>>>> org.apache.catalina.core.ApplicationDispatcher.include
> >>>>> (ApplicationDispatcher.java:499)
> >>>>>         at
> >>>>> org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke
> >>>>> (PortletInvokerImpl.java:120)
> >>>>>         at
> >>>>> org.apache.pluto.invoker.impl.PortletInvokerImpl.action
> >>>>> (PortletInvokerImpl.java:68)
> >>>>>         at
> >>>>> org.apache.pluto.PortletContainerImpl.processPortletAction
> >>>>> (PortletContainerImpl.java:164)
> >>>>>         at
> >>>>> org.apache.pluto.portalImpl.core.PortletContainerWrapperImpl.proce
> >>>>> ssPortletAction(PortletContainerWrapperImpl.java:82)
> >>>>>         at org.apache.pluto.portalImpl.Servlet.doGet
> >>>>> (Servlet.java:227)
> >>>>>         at org.apache.pluto.portalImpl.Servlet.doPost
> >>>>> (Servlet.java:267)
> >>>>>         at javax.servlet.http.HttpServlet.service
> >>>>> (HttpServlet.java:615)
> >>>>>         at javax.servlet.http.HttpServlet.service
> >>>>> (HttpServlet.java:688)
> >>>>>         at
> >>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
> >>>>> (ApplicationFilterChain.java:252)
> >>>>>         at
> >>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter
> >>>>> (ApplicationFilterChain.java:173)
> >>>>>         at org.apache.catalina.core.StandardWrapperValve.invoke
> >>>>> (StandardWrapperValve.java:213)
> >>>>>         at org.apache.catalina.core.StandardContextValve.invoke
> >>>>> (StandardContextValve.java:178)
> >>>>>         at
> >>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke
> >>>>> (AuthenticatorBase.java:482)
> >>>>>         at org.apache.geronimo.tomcat.GeronimoStandardContext
> >>>>> $SystemMethodValve.invoke(GeronimoStandardContext.java:272)
> >>>>>         at
> >>>>> org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke
> >>>>> (DefaultSubjectValve.java:46)
> >>>>>         at
> >>>>> org.apache.geronimo.tomcat.valve.PolicyContextValve.invoke
> >>>>> (PolicyContextValve.java:50)
> >>>>>         at
> >>>>> org.apache.geronimo.tomcat.valve.TransactionContextValve.invoke
> >>>>> (TransactionContextValve.java:53)
> >>>>>         at
> >>>>> org.apache.geronimo.tomcat.valve.ComponentContextValve.invoke
> >>>>> (ComponentContextValve.java:47)
> >>>>>         at
> >>>>> org.apache.geronimo.tomcat.valve.InstanceContextValve.invoke
> >>>>> (InstanceContextValve.java:60)
> >>>>>         at org.apache.catalina.core.StandardHostValve.invoke
> >>>>> (StandardHostValve.java:126)
> >>>>>         at org.apache.catalina.valves.ErrorReportValve.invoke
> >>>>> (ErrorReportValve.java:105)
> >>>>>         at org.apache.catalina.core.StandardEngineValve.invoke
> >>>>> (StandardEngineValve.java:107)
> >>>>>         at org.apache.catalina.valves.AccessLogValve.invoke
> >>>>> (AccessLogValve.java:526)
> >>>>>         at org.apache.catalina.connector.CoyoteAdapter.service
> >>>>> (CoyoteAdapter.java:148)
> >>>>>         at org.apache.coyote.http11.Http11Processor.process
> >>>>> (Http11Processor.java:856)
> >>>>>         at org.apache.coyote.http11.Http11Protocol
> >>>>> $Http11ConnectionHandler.processConnection(Http11Protocol.java:
> >>>>> 744)
> >>>>>         at
> >>>>> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket
> >>>>> (PoolTcpEndpoint.java:527)
> >>>>>         at
> >>>>> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt
> >>>>> (LeaderFollowerWorkerThread.java:80)
> >>>>>         at org.apache.tomcat.util.threads.ThreadPool
> >>>>> $ControlRunnable.run(ThreadPool.java:684)
> >>>>>         at java.lang.Thread.run(Thread.java:534)
> >>>>> 17:26:08,070 DEBUG [GBeanSingleReference] Waiting to start
> >>>>> geronimo.server:EJBModule=InboundMdb,J2EEApplication=null,J2EEServ
> >>>>> er=geronimo,j2eeType=MessageDrivenBean,name=InboundMdb because
> >>>>> no targets are running for reference ActivationSpecWrapper
> >>>>> matching the patterns
> >>>>> geronimo.server:EJBModule=InboundMdb,J2EEApplication=null,J2EEServ
> >>>>> er=geronimo,j2eeType=JCAActivationSpec,name=InboundMdb
> >>>>>
> >>>>>
> >>>>> Thanks for your help
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>
> >>>> .
> >>>
> >>
> >> .
>
>

Mime
View raw message