Hi: 
Jboss is calling with null on the Constractor of a PK class with a compound key 
after calling a finder that searches by one of the two fields of the key.

ejb-jar.xml

  | <entity>
  |                     <display-name>CouponPayments</display-name>
  |                     <ejb-name>CouponPaymentEJB</ejb-name>
  |                     
<abstract-schema-name>CouponPayments</abstract-schema-name>
  |                     
<home>com.db.gto.cio.gm.it.madrid.dbsales.ejbs.CouponPaymentHomeRemote</home>
  |                     
<remote>com.db.gto.cio.gm.it.madrid.dbsales.ejbs.CouponPaymentRemote</remote>
  |                     
<ejb-class>com.db.gto.cio.gm.it.madrid.dbsales.ejbs.CouponPaymentBean</ejb-class>
  |                     <persistence-type>Container</persistence-type>
  |                     
<prim-key-class>com.db.gto.cio.gm.it.madrid.dbsales.ejbs.CouponPaymentPK</prim-key-class>
  |                     <reentrant>False</reentrant>
  |                     <cmp-version>2.x</cmp-version> 
  |                     <cmp-field><field-name>bondsId</field-name></cmp-field>
  |                     
<cmp-field><field-name>couponDate</field-name></cmp-field>      
  |                     <query>
  |                             <query-method>
  |                                     <method-name>findByBondsId</method-name>
  |                                     <method-params>
  |                                             
<method-param>java.lang.Integer</method-param>
  |                                     </method-params>
  |                             </query-method>
  |                             <ejb-ql/>
  |                     </query></entity>

Pk class:


  | package com.db.gto.cio.gm.it.madrid.dbsales.ejbs;
  | 
  | 
  | public class BondStripPK implements java.io.Serializable {
  |     
  |   public Integer bondsId;
  |   public Integer bondsIdSTRIP;
  |   
  |   public BondStripPK(Integer BondsId, Integer BondsIdSTRIP){
  |     this.bondsId = BondsId;
  |     this.bondsIdSTRIP = BondsIdSTRIP;
  |     
  |     System.out.println("bondsId: " + bondsId + ". bondsIdSTRIP: " + 
bondsIdSTRIP);
  |   }
  |   
  |     public Integer getBondsId(){
  |             return(bondsId);
  |     }
  | 
  |     public Integer getBondsIdSTRIP(){
  |             return(bondsIdSTRIP);
  |     }
  |   public boolean equals(Object bondStripPKObject){
  |     System.out.println("EQUALS bondsId: " + bondsId + ". bondsIdSTRIP: " + 
bondsIdSTRIP);
  |     if (bondStripPKObject instanceof BondStripPK) { 
  |             BondStripPK bondStripPK = (BondStripPK)bondStripPKObject;
  |             return(bondStripPK.bondsId.equals(bondsId) 
  |                     && bondStripPK.bondsIdSTRIP.equals(bondsIdSTRIP));
  |     }
  |     else{
  |             return(false);
  |     }
  |   }
  |   public BondStripPK()
  |   {
  |   }
  |  
  | 
  |   public int hashCode(){ 
  |       StringBuffer buff = new StringBuffer ();        
  |       buff.append(bondsId); 
  |       buff.append("-");
  |       buff.append(bondsIdSTRIP);      
  |       int hashCode =buff.toString().hashCode(); 
  |       return hashCode;
  |   }
  |   
  | }
  | 

error:



  | 18:45:54,019 INFO  [STDOUT] EQUALS bondsId: 88011. bondsIdSTRIP: null
  | 18:45:54,019 ERROR [BondStripEJB#findByBondsId] Find failed
  | java.lang.NullPointerException
  |         at 
com.db.gto.cio.gm.it.madrid.dbsales.ejbs.BondStripPK.equals(BondStripPK.java:30)
  |         at 
org.jboss.ejb.plugins.cmp.jdbc.ReadAheadCache$PreloadKey.equals(ReadAheadCache.java:730)
  |         at java.util.HashMap.eq(HashMap.java:274)
  |         at java.util.HashMap.get(HashMap.java:323)
  |         at 
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.getEntityTxData(JDBCStoreManager.java:294)
  |         at 
org.jboss.ejb.plugins.cmp.jdbc.ReadAheadCache.getPreloadDataMap(ReadAheadCache.java:555)
  |         at 
org.jboss.ejb.plugins.cmp.jdbc.ReadAheadCache.addPreloadData(ReadAheadCache.java:475)
  |         at 
org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractQueryCommand$EagerCollectionFactory.createCollection(JDBCAbstractQueryCommand.
  | java:712)
  |         at 
org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractQueryCommand.execute(JDBCAbstractQueryCommand.java:226)
  |         at 
org.jboss.ejb.plugins.cmp.jdbc.JDBCAbstractQueryCommand.execute(JDBCAbstractQueryCommand.java:128)
  |         at 
org.jboss.ejb.plugins.cmp.jdbc.JDBCFindEntitiesCommand.execute(JDBCFindEntitiesCommand.java:40)
  |         at 
org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.findEntities(JDBCStoreManager.java:598)
  |         at 
org.jboss.ejb.plugins.CMPPersistenceManager.findEntities(CMPPersistenceManager.java:322)
  |         at 
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.findEntities(CachedConnectionInterceptor.java:321)
  |         at org.jboss.ejb.EntityContainer.find(EntityContainer.java:700)
  |         at sun.reflect.GeneratedMethodAccessor120.invoke(Unknown Source)
  |         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:324)
  |         at org.jboss.invocation.Invocation.performCall(Invocation.java:345)
  |         at 
org.jboss.ejb.EntityContainer$ContainerInterceptor.invokeHome(EntityContainer.java:1113)
  |         at 
org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:90)
  |         at 
org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invokeHome(EntitySynchronizationInterceptor.java:192)
  |         at 
org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invokeHome(CachedConnectionInterceptor.java:212)
  |         at 
org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInterceptor.java:90)
  |         at 
org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityInstanceInterceptor.java:113)
  |         at 
org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockInterceptor.java:61)
  |         at 
org.jboss.ejb.plugins.EntityCreationInterceptor.invokeHome(EntityCreationInterceptor.java:28)
  |         at 
org.jboss.ejb.plugins.CallValidationInterceptor.invokeHome(CallValidationInterceptor.java:41)
  |         at 
org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:109)
  |         at 
org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:316)
  |         at 
org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT.java:129)
  |         at 
org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInterceptor.java:106)
  |         at 
org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:120)
  |         at 
org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invokeHome(ProxyFactoryFinderInterceptor.java:93)
  |         at 
org.jboss.ejb.EntityContainer.internalInvokeHome(EntityContainer.java:508)
  |         at org.jboss.ejb.Container.invoke(Container.java:876)
  |         at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
  |         at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:324)
  |         at 
org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
  |         at 
org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
  |         at 
org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
  |         at 
org.jboss.invocation.local.LocalInvoker$MBeanServerAction.invoke(LocalInvoker.java:155)
  |         at 
org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:104)
  |         at 
org.jboss.invocation.MarshallingInvokerInterceptor.invoke(MarshallingInvokerInterceptor.java:55)
  |         at 
org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)
  |         at 
org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:55)
  |         at 
org.jboss.proxy.ejb.HomeInterceptor.invoke(HomeInterceptor.java:169)
  |         at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:86)
  |         at $Proxy433.findByBondsId(Unknown Source)
  | 

Any ideas?

View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3876457#3876457

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3876457


-------------------------------------------------------
This SF.Net email is sponsored by: NEC IT Guy Games.
Get your fingers limbered up and give it your best shot. 4 great events, 4
opportunities to win big! Highest score wins.NEC IT Guy Games. Play to
win an NEC 61 plasma display. Visit http://www.necitguy.com/?r=20
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to