geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Jencks <david_jen...@yahoo.com>
Subject Re: ActivationSpec problem (ClassCastException)
Date Thu, 19 Jan 2006 09:13:53 GMT

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