Error in locating entity bean

Hi
when i tested my first session bean by IBM websphere Universal Test Client , i got the following error when execute getBookForPlatform(String workPlatform) saying error in locating entity bean Book_catalog and i tried to test Book_catalog entity bean and it's working successfuly but i do not know why seesion bean could not locate it ? :
========== the Error ===========
java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
java.rmi.RemoteException: ; nested exception is:
javax.ejb.EJBException: Error getting TechLibBook_catalogLocalHome from findByPlatform method:Error locating TechLibBook_catalogLocalHome: Context: localhost/nodes/localhost/servers/server1, name: ejb/Book_catalog: First component in name Book_catalog not found.
at com.ibm.CORBA.iiop.UtilDelegateImpl.mapSystemException(UtilDelegateImpl.java:156)
at com.ibm.CORBA.iiop.UtilDelegateImpl.wrapException(UtilDelegateImpl.java:684)
at javax.rmi.CORBA.Util.wrapException(Util.java:295)
at apress.wsad.techlib._TechLibFacade_Stub.getBookForPlatform(_TechLibFacade_Stub.java:267)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled Code))
at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
at com.ibm.etools.utc.model.ReflectionMethodModel.invoke(ReflectionMethodModel.java:68)
at com.ibm.etools.utc.servlet.InvokeServlet.invoke(InvokeServlet.java:110)
at com.ibm.etools.utc.servlet.InvokeServlet.doPost(InvokeServlet.java:366)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictServletInstance.java:110)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLifecycleServlet.java:174)
at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycleServlet.java:313)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLifecycleServlet.java:116)
at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance.java:283)
at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(ValidServletReferenceState.java:42)
at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(ServletInstanceReference.java:40)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:974)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:555)
at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:200)
at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:119)
at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:276)
at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:71)
at com.ibm.ws.webcontainer.cache.invocation.CacheableInvocationContext.invoke(CacheableInvocationContext.java:114)
at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:186)
at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSEListener.java:334)
at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection.java:56)
at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:618)
at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:439)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:593)
Caused by: java.rmi.RemoteException: ; nested exception is:
javax.ejb.EJBException: Error getting TechLibBook_catalogLocalHome from findByPlatform method:Error locating TechLibBook_catalogLocalHome: Context: localhost/nodes/localhost/servers/server1, name: ejb/Book_catalog: First component in name Book_catalog not found.
at com.ibm.ejs.container.RemoteExceptionMappingStrategy.mapEJBException(RemoteExceptionMappingStrategy.java:379)
at com.ibm.ejs.container.RemoteExceptionMappingStrategy.mapException(RemoteExceptionMappingStrategy.java:112)
at com.ibm.ejs.container.RemoteExceptionMappingStrategy.setUncheckedException(RemoteExceptionMappingStrategy.java:202)
at com.ibm.ejs.container.EJSDeployedSupport.setUncheckedException(EJSDeployedSupport.java:296)
at apress.wsad.techlib.EJSRemoteStatelessTechLibFacade_3526fe64.getBookForPlatform(EJSRemoteStatelessTechLibFacade_3526fe64.java:32)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled Code))
at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
at com.ibm.rmi.util.ProxyUtil$4.run(ProxyUtil.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at com.ibm.rmi.util.ProxyUtil.invokeWithClassLoaders(ProxyUtil.java:701)
at com.ibm.CORBA.iiop.ClientDelegate.invoke(ClientDelegate.java:1084)
at $Proxy1.getBookForPlatform(Unknown Source)
at apress.wsad.techlib._TechLibFacade_Stub.getBookForPlatform(_TechLibFacade_Stub.java:260)
... 29 more
Caused by: javax.ejb.EJBException: Error getting TechLibBook_catalogLocalHome from findByPlatform method:Error locating TechLibBook_catalogLocalHome: Context: localhost/nodes/localhost/servers/server1, name: ejb/Book_catalog: First component in name Book_catalog not found.
at apress.wsad.techlib.TechLibFacadeBean.getBookForPlatform(TechLibFacadeBean.java:92)
at apress.wsad.techlib.EJSRemoteStatelessTechLibFacade_3526fe64.getBookForPlatform(EJSRemoteStatelessTechLibFacade_3526fe64.java:22)
... 39 more
===== End of Error ======
====== the source code of session bean=======
package apress.wsad.techlib;
import javax.ejb.*;
import javax.naming.*;
import javax.rmi.*;
import java.rmi.*;
import java.lang.*;
import java.util.*;
public class TechLibFacadeBean implements javax.ejb.SessionBean
private javax.ejb.SessionContext mySessionCtx;
// Variable to keep the Home Local refernce to TechLibBook_catalog object
private TechLibBook_catalogLocalHome catalogLocalHome = null ;
// Method to get the Home Interface of the Book_catalog entity bean.
private TechLibBook_catalogLocalHome getCatalogLocalHome()
throws RemoteException
try
if (catalogLocalHome == null)
InitialContext initContext = new InitialContext();
Object objRef =initContext.lookup("ejb/Book_catalog");
catalogLocalHome = (TechLibBook_catalogLocalHome) objRef;
return (TechLibBook_catalogLocalHome) objRef;
else
return catalogLocalHome;
catch (NamingException ne)
System.out.println("Error locating TechLibBook_catalogLocalHome: " +
ne.getMessage());
throw
new RemoteException("Error locating TechLibBook_catalogLocalHome: " +
ne.getMessage());
// This business method must be promoted to the remote interface
public Vector getBookForPlatform(String workPlatform)
throws FinderException
Vector bookVector = new Vector();
TransportBean transObject;
TechLibBook_catalogLocal bookCatalogLocal = null;
Collection collBookRecords;
try
collBookRecords =
getCatalogLocalHome().findByPlatform(workPlatform);
Iterator iterator = collBookRecords.iterator();
while (iterator.hasNext())
bookCatalogLocal =
(TechLibBook_catalogLocal) iterator.next();
transObject = new TransportBean();
transObject.catalogNumber = bookCatalogLocal.getCatalog_number();
transObject.author = bookCatalogLocal.getAuthor();
transObject.bookTitle = bookCatalogLocal.getBook_title();
transObject.location = bookCatalogLocal.getLocation();
transObject.platform = bookCatalogLocal.getPlatform();
transObject.txnDate = bookCatalogLocal.getLanguage();
bookVector.addElement(transObject);
} // End of while
} // End of try
catch(FinderException fe)
System.out.println("Error executing findByPlatform method: " +
fe.getMessage());
throw
new EJBException("Error executing findByPlatform method: " +
fe.getMessage());
catch(Exception e)
System.out.println("Error getting TechLibBook_catalogLocalHome from findByPlatform method:" + e.getMessage());
throw
new EJBException("Error getting TechLibBook_catalogLocalHome from findByPlatform method:" + e.getMessage());
return bookVector;
public javax.ejb.SessionContext getSessionContext()
return mySessionCtx;
public void setSessionContext(javax.ejb.SessionContext ctx)
mySessionCtx = ctx;
* ejbCreate
public void ejbCreate() throws javax.ejb.CreateException
public void ejbActivate()
public void ejbPassivate()
public void ejbRemove()
==== End if source code =========
Please tell me what's the problem ?
with regards

i found what's the problem i made the url for lookup as the following:
lookup("java:comp/env/Book_catalog")
instead of
lookup("ejb/Book_catalog")
could anyone tell me what's the difference between 'java:comp/env/' and without it
by the way i used for lookup Datasource the following and it's working
DataSource dataSource = (DataSource)jndiContext.lookup("jdbc/TECHBOOK");
thanks

Similar Messages

  • Oracle Application Server 10.1.3, error when deploying entity bean

    I am using 9.0.4.2 and am planning to upgrade to 10.1.3. When trying to deploy the application to 10.1.3 I get the following error for an Entity Bean with Container Managed Persistence
    006-03-20 10:05:51.436 NOTIFICATION Error while compiling EJB component: file:/C:/oc4j/j2ee/home/ap
    plications/ipower/InstitutionMgrSer-EJB.jar
    06/03/20 10:05:51 WARNING: EJBContainer.postInit Error generating wrappers for file:/C:/oc4j/j2ee/ho
    me/applications/ipower/InstitutionMgrSer-EJB.jarcom.evermind.compiler.CompilationException: Method p
    ublic abstract int com.eplinc.gv.bus.instmgr.AccessibleTrailerBean.getInstitution() can not be decla
    red abstract for entity 'AccessibleTrailerBean'
    at com.evermind.server.ejb.compilation.CMPObjectCompilation.verifyMethods(CMPObjectCompilati
    on.java:782)
    at com.evermind.server.ejb.compilation.CMPObjectCompilation.<init>(CMPObjectCompilation.java
    :56)
    at com.evermind.server.ejb.compilation.PersistenceManagerCompilation.<init>(PersistenceManag
    erCompilation.java:30)
    at com.evermind.server.ejb.compilation.EntityBeanCompilation.<init>(EntityBeanCompilation.ja
    va:121)
    at com.evermind.server.ejb.compilation.Compilation.generateAnyOldStyle(Compilation.java:1590
    at com.evermind.server.ejb.compilation.Compilation.compile(Compilation.java:182)
    at com.evermind.server.ejb.compilation.Compilation.doGenerateCode(Compilation.java:250)
    at com.evermind.server.ejb.EJBContainer.postInit(EJBContainer.java:891)
    at com.evermind.server.ApplicationStateRunning.initializeApplication(ApplicationStateRunning
    .java:210)
    at com.evermind.server.Application.setConfig(Application.java:391)
    at com.evermind.server.Application.setConfig(Application.java:308)
    at com.evermind.server.ApplicationServer.addApplication(ApplicationServer.java:1771)
    at oracle.oc4j.admin.internal.ApplicationDeployer.addApplication(ApplicationDeployer.java:50
    7)
    What am I missing? Note that on 9.0.4.2 and its previous versions the deployment was successful.

    We use EJB2.0 and as per the specifications entity class and getters/setters should be abstract. This is what we have. I have verified the dtd used in ejb-jars and it has references to the correct version. Here is an example <!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd">. Also the tag <cmp-version>2.x</cmp-version> is included for all the entity beans.
    Now I am just curious to know if anyone has tried deploying Entity Beans 2.0 on a 10.1.3? and if so was the deployment successful?

  • Error in deploying entity beans - migration from JBoss to Weblogic 10.3.4

    Hi,
    I am migrating EJB2.x code from JBoss to Weblogic 10.3.4. As a first step, I am tyring to deploy just Entity beans. I get following error when deploying to server.
    'weblogic.application.ModuleException: Exception preparing module: EJBModule(myEJB.jar)
    Unable to deploy EJB: CollMetaData from myEJB.jar:
    [EJB:011017]Error while reading 'META-INF/weblogic-cmp-rdbms-jar.xml'. The error was:
    There are 1 nested errors:
    java.lang.NullPointerException
         at weblogic.ejb.container.cmp.rdbms.finders.EjbqlFinder.setMethods(EjbqlFinder.java:288)
         at weblogic.ejb.container.cmp.rdbms.Deployer.processFinders(Deployer.java:744)
         at weblogic.ejb.container.cmp.rdbms.Deployer.readTypeSpecificData(Deployer.java:446)
         at weblogic.ejb.container.persistence.PersistenceType.setTypeSpecificFile(PersistenceType.java:506)
         at weblogic.ejb.container.persistence.PersistenceType.setupDeployer(PersistenceType.java:455)
         at weblogic.ejb.container.deployer.CMPInfoImpl.setup(CMPInfoImpl.java:118)
         at weblogic.ejb.container.deployer.EJBDeployer.prepare(EJBDeployer.java:1214)
         at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:442)
         at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:199)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:517)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:159)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:45)
         at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:613)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
         at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:184)
         at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:58)
         at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:154)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
         at weblogic.deploy.internal.targetserver.operations.ActivateOperation.createAndPrepareContainer(ActivateOperation.java:207)
         at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doPrepare(ActivateOperation.java:98)
         at weblogic.deploy.internal.targetserver.operations.AbstractOperation.prepare(AbstractOperation.java:217)
         at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentPrepare(DeploymentManager.java:747)
         at weblogic.deploy.internal.targetserver.DeploymentManager.prepareDeploymentList(DeploymentManager.java:1216)
         at weblogic.deploy.internal.targetserver.DeploymentManager.handlePrepare(DeploymentManager.java:250)
         at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.prepare(DeploymentServiceDispatcher.java:159)
         at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doPrepareCallback(DeploymentReceiverCallbackDeliverer.java:171)
         at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$000(DeploymentReceiverCallbackDeliverer.java:13)
         at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$1.run(DeploymentReceiverCallbackDeliverer.java:46)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
    Can someone help me fixing the issue?
    I changed schema locations of descriptor files as suggested at http://download.oracle.com/docs/cd/E17904_01/web.1111/e13706/overview.htm#i1074199 (see the third category for '*Enterprise Bean 2.1*' in the listing Table 1-1). Alternatively, you may see the schema locations for EJB2.0 directly at http://download.oracle.com/docs/cd/E17904_01/web.1111/e13719/dd_reference.htm#EJBPG481

    JRE version in JBoss is 1.6.0_16. JVM in web logic is pointing to jrockit_160_22_D1.1.1-3 which is come in the package. It doesn't seem to be related to JVM version mismatch.
    I think it is an issue with definitions in weblogic-cmp-rdbms-jar.xml file. How should be the definition of entity-descriptor appear for entity bean which has finder methods in ejb-jar.xml?
    Please see the snippets from corresponding descriptor files below.
    ejb-jar.xml
    =========
    <entity>
    <display-name>EmpBean</display-name>
    <ejb-name>EmpBean</ejb-name>
    <local-home>LocalEmpBeanHome</local-home>
    <local>LocalEmpBean</local>
    <ejb-class>EmpBeanBean</ejb-class>
    <persistence-type>Container</persistence-type>
    <prim-key-class>java.lang.String</prim-key-class>
    <reentrant>False</reentrant>
    <cmp-version>2.x</cmp-version>
    <abstract-schema-name>EmpBean</abstract-schema-name>
    <cmp-field>
    <field-name>firstName</field-name>
    </cmp-field>
    <cmp-field>
    <field-name>lastName</field-name>
    </cmp-field>
    <cmp-field>
    <field-name>phone</field-name>
    </cmp-field>
    <cmp-field>
    <field-name>address</field-name>
    </cmp-field>
    <primkey-field>lastName</primkey-field>
    <query>
    <query-method>
              <method-name>findByPrimaryKey</method-name>
                   <method-params>
                   <method-param>java.lang.String</method-param>
                   </method-params>
              </query-method>
              <ejb-ql>SELECT Object(o) FROM EmpBean o WHERE o.lastName= ?1</ejb-ql>
         </query>
    </entity>
    weblogic-jar.xml
    ============
    <weblogic-enterprise-bean>
    <ejb-name>EmpBean</ejb-name>
    <entity-descriptor>
         <pool>
              <max-beans-in-free-pool>20</max-beans-in-free-pool>
              <initial-beans-in-free-pool>5</initial-beans-in-free-pool>
         </pool>
    <persistence>
    <persistence-use>
    <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
    <type-version>6.0</type-version>
    <type-storage>meta-inf/weblogic-cmp-rdbms-jar.xml</type-storage>
    </persistence-use>
    <finders-load-bean>true</finders-load-bean>
    </persistence>
    </entity-descriptor>
    <local-jndi-name>ejb/EmpBean</local-jndi-name>
    </weblogic-enterprise-bean>
    weblogic-cmp-rdbms-jar.xml
    ====================
    <weblogic-rdbms-bean>
    <ejb-name>EmpBean</ejb-name>
    <data-source-jndi-name>mysqlDS</data-source-jndi-name>
    <table-map>
    <table-name>emp</table-name>
    <field-map>
    <cmp-field>firstName</cmp-field>
    <dbms-column>first_namel</dbms-column>
    </field-map>
    <field-map>
    <cmp-field>lastName</cmp-field>
    <dbms-column>last_name</dbms-column>
    </field-map>
    <field-map>
    <cmp-field>phone</cmp-field>
    <dbms-column>phone</dbms-column>
    </field-map>
    <field-map>
    <cmp-field>address</cmp-field>
    <dbms-column>address</dbms-column>
    </field-map>
    </table-map>
    <weblogic-rdbms-bean>
    Please ignore any typos that you may notice in above sample descriptions (because I just typed it here changing original names).
    When I try to deploy the application, I get error message as posted in my first post above in this thread. Please correct me if I am making any erros in descriptor files.
    Edited by: 839281 on Feb 25, 2011 10:55 AM
    Edited by: venkatp on Mar 1, 2011 9:31 AM

  • Error while deploying Entity Beans on OC4J 10.1.3

    Hi,
    We have 350 entity beans in our system. Recently a new table is created as per following script.
    CREATE TABLE TBLSMDTATTRIBUTECATREL
    MDTCATEGORYID CHAR(7),
    ATTRIBUTECATEGORYID CHAR(10),
    CONSTRAINT PK_MDTATTRIBUTECATREL PRIMARY KEY (MDTCATEGORYID,ATTRIBUTECATEGORYID)
    Entity Bean for the same has been created. While deploying I am facing the following error.
    06/06/11 13:09:23 Notification ==> Error while compiling EJB component: file:/export/home/oc4j/j2ee/home/applications/JispAppEntities/billing-entities.jar
    com.evermind.compiler.CompilationException: Method public abstract java.lang.String com.elitecore.billing.ejb.system.entity.MdtattributecatrelCMP.getMdtcategoryid() can not be declared abstract for entity 'Mdtattributecatrel'
    at com.evermind.server.ejb.compilation.CMPObjectCompilation.verifyMethods(CMPObjectCompilation.java:800)
    at com.evermind.server.ejb.compilation.CMPObjectCompilation.<init>(CMPObjectCompilation.java:55)
    at com.evermind.server.ejb.compilation.PersistenceManagerCompilation.<init>(PersistenceManagerCompilation.java:26)
    at com.evermind.server.ejb.compilation.EntityBeanCompilation.<init>(EntityBeanCompilation.java:121)
    at com.evermind.server.ejb.compilation.Compilation.generateAnyOldStyle(Compilation.java:1593)
    at com.evermind.server.ejb.compilation.Compilation.compile(Compilation.java:181)
    at com.evermind.server.ejb.compilation.Compilation.doGenerateCode(Compilation.java:249)
    at com.evermind.server.ejb.EJBContainer.postInit(EJBContainer.java:971)
    at com.evermind.server.ApplicationStateRunning.initializeApplication(ApplicationStateRunning.java:205)
    at com.evermind.server.Application.setConfig(Application.java:387)
    at com.evermind.server.Application.setConfig(Application.java:304)
    at com.evermind.server.ApplicationServer.addApplication(ApplicationServer.java:1651)
    at oracle.oc4j.admin.internal.ApplicationDeployer.addApplication(ApplicationDeployer.java:402)
    at oracle.oc4j.admin.internal.ApplicationDeployer.doDeploy(ApplicationDeployer.java:158)
    at oracle.oc4j.admin.internal.DeployerBase.execute(DeployerBase.java:93)
    at com.evermind.server.administration.DefaultApplicationServerAdministrator.internalDeploy(DefaultApplicationServerAdministrator.java:440)
    at com.evermind.server.administration.DefaultApplicationServerAdministrator.deploy(DefaultApplicationServerAdministrator.java:341)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:324)
    at com.evermind.server.rmi.ServerRmiMessageHandler.doMethodCall(ServerRmiMessageHandler.java:560)
    at com.evermind.server.rmi.ServerRmiMessageHandler.handleMethodInvocation(ServerRmiMessageHandler.java:471)
    at com.evermind.server.rmi.ServerRmiMessageHandler.handleOrmiRequest(ServerRmiMessageHandler.java:262)
    at com.evermind.server.rmi.ServerRmiMessageHandler.dispatchRequest(ServerRmiMessageHandler.java:231)
    at com.evermind.server.rmi.RMIServerConnection.processReceivedCommand(RMIServerConnection.java:155)
    at com.evermind.server.rmi.RMIConnection.handleCommand(RMIConnection.java:151)
    at com.evermind.server.rmi.RMIConnection.listenForOrmiCommands(RMIConnection.java:126)
    at com.evermind.server.rmi.RMIConnection.run(RMIConnection.java:105)
    at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
    at java.lang.Thread.run(Thread.java:534)
    Can anybody please suggest the solution?
    Thanks in advance.
    Regards,
    Jinal Shah

    Hi,
    The error was coming because of the table structure. All the columns were composite keys. I alter the structured by removing composite keys and added a new column as primary key. Now it is getting deployed successfully.
    Can anybody comment on such a behaviour of OC4J?
    Regards,
    Jinal Shah

  • Error Deploying CMP Entity Bean

    Hi,
    I am new to Entity Beans and am trying to deploy a CMP Entity Bean without any success.
    I did search this forum for similar issues and tried those suggestions as well but that has not helped. Was wondering if someone could help me out on this.
    The Entity bean has 2 fields: name and description.
    The ejb-jar.xml file for this bean is:
    <enterprise-beans>
    <entity>
    <ejb-name>Product</ejb-name>
    <home>example.cmp.ProductHome</home>
    <remote>example.cmp.Product</remote>
    <ejb-class>example.cmp.ProductBean</ejb-class>
    <persistence-type>Container</persistence-type>
    <prim-key-class>java.lang.String</prim-key-class>
    <reentrant>false</reentrant>
    <cmp-version>2.x</cmp-version>
    <abstract-schema-name>PRODUCTS</abstract-schema-name>
    <cmp-field>
    <field-name>name</field-name>
    </cmp-field>
    <cmp-field>
    <field-name>description</field-name>
    </cmp-field>
    <primkey-field>name</primkey-field>
    <query>
    </query>
    </entity>
    </enterprise-beans>
    The error that I get while deploying the bean is:
    Error deploying EJB homes for: file:/C:/servers/oc4j1013/j2ee/home/applications/cmptest/cmptest.jar
    java.lang.InstantiationException: Error looking up cmt-datasource at jdbc/OracleDS (name not found)
    at com.evermind.server.ApplicationState.getDataSourceContainer(ApplicationState.java:384)
    Error deploying file:/C:/servers/oc4j1013/j2ee/home/applications/cmptest/cmptest.jar
    homes: Error looking up cmt-datasource at jdbc/OracleDS (name not found)
    [java] [TopLink Severe]: 2005.04.17 10:22:20.156--ServerSession(28816172)--
    Local Exception Stack:
    [java] Exception [TOPLINK-7060] (TopLink (Oracle OC4J CMP) - 10g release 3(10.1.3.0) (Build 041129)): oracle.toplink.exceptions.ValidationException
    [java] Exception Description: Cannot acquire data source [jdbc/OracleDS].
    [java] Internal Exception: javax.naming.NameNotFoundException: jdbc/OracleDS not found
    [java] at oracle.toplink.exceptions.ValidationException.cannotAcquireDataSource(ValidationException.java:208)
    [java] at oracle.toplink.internal.ejb.cmp.oc4j.Oc4jNonJtaConnector.getOrCreateDataSource(Oc4jNonJtaConnector.java:62)
    If anybody knows what the problem is please let me know.
    Thanks in advance.
    Bhupen

    Please note that the data-source has been re-architectured in 10.1.3 DP3 and you should have DataSource as follows:
    <data-sources xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:noNamespaceSchemaLocation='http://xmlns.oracle.com/oracleas/schema/data-sources-10_1.xsd' schema-major-version='10' schema-minor-version='1'>
    <managed-data-source connection-pool-name='Example Connection Pool' jndi-name='jdbc/OracleDS' name='OracleManagedDS' />
    <connection-pool name='Example Connection Pool' >
    <connection-factory factory-class='oracle.jdbc.pool.OracleDataSource' user='scott' password='tiger' url='jdbc:oracle:thin:@localhost:1521:orcl'>
    </connection-factory>
    </connection-pool>
    </data-sources>

  • Bad Performance/OutOfMemory Error in CMP Entity Bean with Large DB

    Hello:
    I have an CMP Entity deployed on WLS 7.0
    The entity bean maps to a table that has 97,480 records.
    It has a finder: findAll() -- SELECT OBJECT(e) FROM Equipment e
    I have a JSP client that invokes the findALL()
    The performance is very poor ~ 150 seconds just to perform the findAll() - (Benchmark
    from within the JSP code)
    If more than one simultaneous call is made then I get outOfMemory Error.
    WLS is started with max memory of 512MB
    EJB is deployed with <max-beans-in-cache>100000</max-beans-in-cache>
    (without max-beans-in-cache directive the performance is worse)
    Is there any documentation available to help us in deploying CMP Entity Beans
    with very large number of records (instances) ?
    Any help is greatly appreciated.
    Regards
    Rajan

    Hi
    You should use a Select Method, it does support cursors.
    Or a Home Select Method combination.
    Regards
    Thomas
    WLS is started with max memory of 512MB
    EJB is deployed with <max-beans-in-cache>100000</max-beans-in-cache>>
    (without max-beans-in-cache directive the performance is worse)>
    Is there any documentation available to help us in deploying CMP
    Entity Beans with very large number of records (instances) ? Any help
    is greatly appreciated.>
    Regards>
    Rajan>
    >
    "Rajan Jena" <[email protected]> schrieb im Newsbeitrag
    news:3dadd7d1$[email protected]..
    >
    Hello:
    I have an CMP Entity deployed on WLS 7.0
    The entity bean maps to a table that has 97,480 records.
    It has a finder: findAll() -- SELECT OBJECT(e) FROM Equipment e
    I have a JSP client that invokes the findALL()
    The performance is very poor ~ 150 seconds just to perform the findAll() -(Benchmark
    from within the JSP code)
    If more than one simultaneous call is made then I get outOfMemory Error.
    WLS is started with max memory of 512MB
    EJB is deployed with <max-beans-in-cache>100000</max-beans-in-cache>
    (without max-beans-in-cache directive the performance is worse)
    Is there any documentation available to help us in deploying CMP EntityBeans
    with very large number of records (instances) ?
    Any help is greatly appreciated.
    Regards
    Rajan

  • Error While deploying Entity Bean

    Hi,
    We are using JDeveloper 3.2.2 to deploy EJB into Oracle 9ias (Oracle 8.1.7 database). The following error occured while deploying entity bean.
    "Persistence provider declared in the deployment descriptor is not supported
    *** Errors occurred while deploying the EJB to 8i JVM ***
    *** Deployment completed ***"
    Please help us with the solution if anyone have come across this kind of error.
    Regards
    Santhosh
    null

    Thank you Raghu, We were in a position to deploy the entity bean to the database. We solved the problem by adding the following parameters to the init.ora file
    (a) Java_max_sessionspace_size
    (b) java_soft_sessionspace_limit
    When I tried to create an EJB for a table in another schema, it started deploying the BC4J to that schama also. Is it necessary that BC4J should deploy in all the schemas of the database ? Can I deploy BC4J to one schema and grant required permissions to others users or create public synonym for BC4J ? Can you please tell me how I can deploy BC4J globally for an instance of Oracle (Applicable to all the schemas in that instance) ?
    Santhosh

  • Using a BLOB data type in a CMP Entity Bean??

    Hi all,
    i am trying to store blob type data using entity bean, The corresponding field in the Entity bean is defined with data type byte[ ] , and i'm getting error while creating entity bean, could anyone please help me!
    This is the error:
    [6/7/06 11:19:05:559 EEST] 5b7936b5 ExceptionUtil E CNTR0019E: Non-application exception occurred while processing method "create". Exception data: com.ibm.ejs.container.CreateFailureException: ; nested exception is:
         javax.ejb.EJBException: nested exception is: com.ibm.ws.ejbpersistence.utilpm.PersistenceManagerException: PMGR6022E: Error using adapter to create or execute an Interaction. com.ibm.ws.rsadapter.cci.WSInteractionImpl@6593f6a7
    javax.ejb.EJBException: nested exception is: com.ibm.ws.ejbpersistence.utilpm.PersistenceManagerException: PMGR6022E: Error using adapter to create or execute an Interaction. com.ibm.ws.rsadapter.cci.WSInteractionImpl@6593f6a7
    com.ibm.ws.ejbpersistence.utilpm.PersistenceManagerException: PMGR6022E: Error using adapter to create or execute an Interaction. com.ibm.ws.rsadapter.cci.WSInteractionImpl@6593f6a7
         at com.ibm.ws.ejbpersistence.dataaccess.DataAccessRequestImpl.execute(Unknown Source)
         at com.ibm.ws.ejbpersistence.beanextensions.ConcreteBeanStatefulInstanceExtensionImpl.executeCreate(Unknown Source)
         at com.ibm.ws.ejbpersistence.beanextensions.CBNotExistState.ejbCreate(Unknown Source)
         at com.ibm.ws.ejbpersistence.beanextensions.ConcreteBeanStatefulInstanceExtensionImpl.ejbPostCreate(Unknown Source)
         at org.epo.dg3.task.ConcreteDocStore_5418fe50.ejbPostCreate(ConcreteDocStore_5418fe50.java:133)
         at org.epo.dg3.task.EJSCMPDocStoreHomeBean_5418fe50.create_Local(EJSCMPDocStoreHomeBean_5418fe50.java:29)
         at org.epo.dg3.task.EJSLocalCMPDocStoreHome_5418fe50.create(EJSLocalCMPDocStoreHome_5418fe50.java:23)
         at java.lang.reflect.Method.invoke(Native Method)
         at com.ibm.etools.utc.model.ReflectionMethodModel.invoke(ReflectionMethodModel.java:68)

    Try to use the OCI native driver instead of THIN.

  • Retrieving auto inc primary key from entity bean (MySQL DB)

    Hello,
    I searched the forum intensively, but did not find an answer for the following problem.
    I've set up an MySQL database "Location" with two fields (ID, Description), ID is my primary key and I've added the AUTO_INCREMENT flag to this field. This works fine, i can add a row in the table with my entity bean "Location" from my session bean :
    Location l = new Location();
    l.setDescription("at home");
    em.persist(l);
    and even when I ask this location back from the DB, there is no problem :
    Location l = em.find(Location.class,1);
    return l.getDescription();
    The rows in the table increment nicely. The problem however is, that you don't allways know the ID. So I would like to do the following from my session bean:
    Location l = new Location();
    l.setDescription("at home");
    em.persist(l);
    int id = l.getId();
    the getID method allways returns a null object. The row is added in the DB, but the auto incremented ID is not returned to the entity bean!
    I know I could solve this by generating the ID's myself, but one of the strengths of autoincrement should be not to have to do this, no?
    If anyone has a clue how to solve this issue, I would very much appreciate it !
    Michiel
    Edited by: Michiel82 on Dec 6, 2007 6:01 AM

    No reactions so far ... this is a work-around for the issue :
    I've created an additional table sequence with two fields: gen_key and gen_value. Then, in my Location entity bean I can add the following:
    @TableGenerator(
    name="locationGen",
    table="sequence",
    pkColumnName="gen_key",
    valueColumnName="gen_value",
    pkColumnValue="location",
    allocationSize=1
    @Id
    @GeneratedValue(strategy=GenerationType.TABLE,generator="locationGen")
    @Column(name = "id", nullable=false)
    private Short id;
    This generates the primary key in the bussiness logic, but I would like to get the autogenerated key from my MySQL database (see previous post). Is this perhaps not supported by EJB3.0?
    Michiel

  • Error in weblogic.ejbc while deploying the CMP entity bean.!!!

    Tried to deploy the entity bean[CMP] with the following folder structure.
    examples [package]
    Product.class
    productBean.class
    etc.
    META-INF
    ejb-jar.xml
    weblogic-ejb-jar.xml.
    weblogic-cmp-rdbms-jar.xml
    created a jar..with the following command
    1.jar cvf rgegcmp.jar examples META-INF
    tried to create the stubs and skeletons using weblogic.ejbc command.
    2. java weblogic.ejbc rgegcmp.jar rgegcmp1.jar
    C:\btcomprj\BTCOMPRJ\classes>java weblogic.ejbc rgegcmp.jar rgegcmp1.jar
    <Oct 11, 2004 4:29:29 PM IST> <Warning> <EJB> <010054> <EJB Deployment: Product has a
    class examples.ProductBean which is in
    the classpath. This class should only be located in the ejb-jar file.>
    <Oct 11, 2004 4:29:29 PM IST> <Warning> <EJB> <010054> <EJB Deployment: Product has a
    class examples.ProductHome which is in
    the classpath. This class should only be located in the ejb-jar file.>
    <Oct 11, 2004 4:29:29 PM IST> <Warning> <EJB> <010054> <EJB Deployment: Product has a
    class examples.Product which is in the
    classpath. This class should only be located in the ejb-jar file.>
    <Oct 11, 2004 4:29:29 PM IST> <Warning> <EJB> <010054> <EJB Deployment: Product has a
    class examples.ProductLocalHome which i
    s in the classpath. This class should only be located in the ejb-jar file.>
    <Oct 11, 2004 4:29:29 PM IST> <Warning> <EJB> <010054> <EJB Deployment: Product has a
    class examples.ProductLocal which is in
    the classpath. This class should only be located in the ejb-jar file.>
    <Oct 11, 2004 4:29:29 PM IST> <Warning> <EJB> <010054> <EJB Deployment: Product has a
    class examples.ProductPK which is in th
    e classpath. This class should only be located in the ejb-jar file.>
    ERROR: Error from ejbc: null
    java.lang.NullPointerException
    at
    weblogic.ejb20.deployer.CompositeMBeanDescriptor.getPersistenceUseIdentifier(Composite
    MBeanDescriptor.java:1484)
    at weblogic.ejb20.deployer.CMPInfoImpl.<init>(CMPInfoImpl.java:104)
    at
    weblogic.ejb20.deployer.EntityBeanInfoImpl.<init>(EntityBeanInfoImpl.java:135)
    at
    weblogic.ejb20.deployer.BeanInfoImpl.createBeanInfoImpl(BeanInfoImpl.java:349)
    at
    weblogic.ejb20.deployer.MBeanDeploymentInfoImpl.initializeBeanInfos(MBeanDeploymentInf
    oImpl.java:438)
    at
    weblogic.ejb20.deployer.MBeanDeploymentInfoImpl.<init>(MBeanDeploymentInfoImpl.java:16
    5)
    at weblogic.ejb20.ejbc.EJBCompiler.setupEJB(EJBCompiler.java:151)
    at weblogic.ejb20.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:332)
    at weblogic.ejbc20.runBody(ejbc20.java:479)
    at weblogic.utils.compiler.Tool.run(Tool.java:126)
    at weblogic.ejbc.main(ejbc.java:29)
    ERROR: ejbc found errors
    1. want to know why Null pointer exception is thrown by 'weblogic.ejbc'...
    is it indicating an error in my code(bean); .....
    i dont know how to fix the error.
    find the deployments descriptors which i have written for deployment.
    weblogic-ejb-jar.xml
    <?xml version="1.0"?>
    <!DOCTYPE weblogic-ejb-jar PUBLIC
    '-//BEA Systems, Inc.//DTD WebLogic 7.0.0 EJB//EN'
    'http://www.bea.com/servers/wls700/dtd/weblogic-ejb-jar.dtd'>
    <weblogic-ejb-jar>
    <weblogic-enterprise-bean>
    <ejb-name>Product</ejb-name>
    <jndi-name>rgexample</jndi-name>
    </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    ejb-jar.xml
    <?xml version="1.0"?>
    <!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN"
    "http://java.sun.com/dtd/ejb-jar_2_0.dtd">
    <ejb-jar>
    <enterprise-beans>
    <entity>
    <ejb-name>Product</ejb-name>
    <home>examples.ProductHome</home>
    <remote>examples.Product</remote>
    <local-home>examples.ProductLocalHome</local-home>
    <local>examples.ProductLocal</local>
    <ejb-class>examples.ProductBean</ejb-class>
    <persistence-type>Container</persistence-type>
    <prim-key-class>examples.ProductPK</prim-key-class>
    <reentrant>False</reentrant>
    <cmp-version>2.x</cmp-version>
    <abstract-schema-name>ProductBean</abstract-schema-name>
    <cmp-field>
    <field-name>productID</field-name>
    </cmp-field>
    <cmp-field>
    <field-name>name</field-name>
    </cmp-field>
    <cmp-field>
    <field-name>description</field-name>
    </cmp-field>
    <cmp-field>
    <field-name>basePrice</field-name>
    </cmp-field>
    <query>
    <query-method>
    <method-name>findByName</method-name>
    <method-params>
    <method-param>java.lang.String</method-param>
    </method-params>
    </query-method>
    <ejb-ql>
    <![CDATA[SELECT OBJECT(a) FROM ProductBean AS a WHERE name =
    ?1]]>
    </ejb-ql>
    </query>
    <query>
    <query-method>
    <method-name>findByDescription</method-name>
    <method-params>
    <method-param>java.lang.String</method-param>
    </method-params>
    </query-method>
    <ejb-ql>
    <![CDATA[SELECT OBJECT(a) FROM ProductBean AS a WHERE description
    = ?1]]>
    </ejb-ql>
    </query>
    <query>
    <query-method>
    <method-name>findByBasePrice</method-name>
    <method-params>
    <method-param>double</method-param>
    </method-params>
    </query-method>
    <ejb-ql>
    <![CDATA[SELECT OBJECT(a) FROM ProductBean AS a WHERE basePrice =
    ?1]]>
    </ejb-ql>
    </query>
    <query>
    <query-method>
    <method-name>findExpensiveProducts</method-name>
    <method-params>
    <method-param>double</method-param>
    </method-params>
    </query-method>
    <ejb-ql>
    <![CDATA[SELECT OBJECT(a) FROM ProductBean AS a WHERE basePrice >
    ?1]]>
    </ejb-ql>
    </query>
    <query>
    <query-method>
    <method-name>findCheapProducts</method-name>
    <method-params>
    <method-param>double</method-param>
    </method-params>
    </query-method>
    <ejb-ql>
    <![CDATA[SELECT OBJECT(a) FROM ProductBean AS a WHERE basePrice < ?1]]>
    </ejb-ql>
    </query>
    <query>
    <query-method>
    <method-name>findAllProducts</method-name>
    <method-params>
    </method-params>
    </query-method>
    <ejb-ql>
    <![CDATA[SELECT OBJECT(a) FROM ProductBean AS a WHERE productID
    IS NOT NULL]]>
    </ejb-ql>
    </query>
    </entity>
    </enterprise-beans>
    <assembly-descriptor>
    <container-transaction>
    <method>
    <ejb-name>Product</ejb-name>
    <method-intf>Remote</method-intf>
    <method-name>*</method-name>
    </method>
    <trans-attribute>Required</trans-attribute>
    </container-transaction>
    </assembly-descriptor>
    </ejb-jar>
    weblogic-cmp-rdbms-jar.xml
    <!DOCTYPE weblogic-rdbms-jar PUBLIC
    '-//BEA Systems, Inc.//DTD WebLogic 7.0.0 EJB RDBMS Persistence//EN'
    'http://www.bea.com/servers/wls700/dtd/weblogic-rdbms20-persistence-700.dtd'>
    <weblogic-rdbms-jar>
    <weblogic-rdbms-bean>
    <ejb-name>Product</ejb-name>
    <data-source-name>examples-dataSource-demoPool</data-source-name>
    <table-map>
    <table-name>TORDER</table-name>
    <field-map>
    <cmp-field>productID</cmp-field>
    <dbms-column>PRODUCTID</dbms-column>
    </field-map>
    <field-map>
    <cmp-field>name</cmp-field>
    <dbms-column>NAME</dbms-column>
    </field-map>
    <field-map>
    <cmp-field>description</cmp-field>
    <dbms-column>DESCRIPTION</dbms-column>
    </field-map>
    <field-map>
    <cmp-field>basePrice</cmp-field>
    <dbms-column>BASEPRICE</dbms-column>
    </field-map>
    </table-map>
    </weblogic-rdbms-bean>
    <create-default-dbms-tables>True</create-default-dbms-tables>
    </weblogic-rdbms-jar>

    If you can have a look at a cmp example in the samples that ship with the server. My guess is that the weblogic-ejb-jar.xml file is missing the <persistence-use> element which for 810 would look like:
    <persistence>
    <persistence-use>
    <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
    <type-version>7.0</type-version>
    <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
    </persistence-use>
    </persistence>
    I seem to recall that the elements might be slightly different in structure for the wls700 version of the DTD, so please check that (I cannot, I'm at home and don't have everything here).
    Give that a try and see if it doesn't solve your compilation failure.
    Also, the compilation should not be throwing a null pointer exception in a case like that, I consider that to be a bug.
    -thorick

  • Error in deploying CMP Entity Beans

    Hello,
    When I created a CMP Entity Bean using the JDeveloper Release Candidate and try to deploy it I get the following message:
    Auto-creating table: create table POGROUP_PRESS_RELEASE (press_release_id integer not null primary key, press_release_date varchar (255) null, title varchar (255) null, time varchar (255) null, release_type varchar (255) null, URL VARCHAR2(100))
    Warning: Error creating table: ORA-00955: name is already used by an existing object
    What does this mean? Does it mean that this bean cannot be deployed. If the table already exists in the database shouldn't it use the table instead of trying to create the table?
    Any help would be appreciated,
    Gopi

    initialize "table" attribute of <entity-deployment> element to POGROUP_PRESS_RELEASE.This will prevent auto-create functionality of OC4J.
    However this <entity-deployment> tag present only in orion-ejb-jar.xml.So you have to create this file and include along with ejb-jar.xml in jar file.
    Sample orion-ejb-jar.xml looks like this....
    <orion-ejb-jar deployment-version="1.0.2.2" deployment-time="ea013a2eda">
    <enterprise-beans>
    <entity-deployment name="TestHome" location="TestHome" wrapper="TestHome_EntityHomeWrapper5" table="POGROUP_PRESS_RELEASE" data-source="jdbc/OracleDS">
    <primkey-mapping>
    <cmp-field-mapping name="m_ID" persistence-name="ID" />
    </primkey-mapping>
    <resource-ref-mapping name="jdbc/OracleCoreDS" />
    </entity-deployment>
    </enterprise-beans>
    </entity-deployment>
    </orion-ejb-jar>
    For complete DTD :
    http://xmlns.oracle.com/ias/dtds/orion-ejb-jar.dtd
    Hope this helps.....
    --Venky                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • CAN'T LOOKUP SIMPLE ENTITY BEAN : ''JAVAX.NAMING.NAMINGEXCEPTION: LOOKUP ERROR''

    Hello, we were forwarded to this forum from TAR section of Metalink. We are facing a problem with JDev-RC2/OC4J-9.0.3 and seems that we are hitting Bug 2276197. The BUG is marked as internal and therefore we can't see it. So, it's not clear where the problem is, if in JDev or OC4J or both ?
    Testcase Step-by-step:
    1. Invoke JDeveloper 9.0.3.815
    2. Create a workspace & a project.
    3. Create an default Container-managed Entity Beans frim Tables.
    4. Create Sample Java Client with "Connect to OC4J Embedded in Jdeveloper" and run it, it gives above error.
    You can download a testcase that is part of TAR-2125538.995, that we opened on Metalink.
    Please help. Thanks in advance.

    Hi Radim,
    Personally, I have played a little with JDeveloper, but I am not
    actively using it for my development -- I prefer to do most things
    myself. True, the JDeveloper wizards do a lot of the work for you,
    but at least (with my way), when something goes wrong, I have a
    better idea of where to look.
    So I can't help you much on the JDeveloper side, but an app is an
    app regardless of how you develop it, so I'll offer a list of things
    to check (just in case you haven't already done so :-).
    I haven't looked at your test case, but from your description, I
    assume you have a standalone java client. Again, I assume JDeveloper
    handles the details for you (and it may be doing it wrong -- as
    you suggest), but the way you do your JNDI lookup depends on the
    type of client you use. For a standalone java client (that is also
    deployed to OC4J), your "initial context factory" class should be:
    com.evermind.server.ApplicationClientInitialContextFactory
    and your "provider URL" should be:
    ormi://<host>/<app-name>
    where <host> is the name of the computer where OC4J is running
    (you can also use "localhost") and <app-name> is the name given
    to your application at deployment time. Again, JDeveloper handles
    the deployment, but the "app-name" should also appear in the
    "server.xml" configuration file which is usually located in the
    "config" subdirectory of the OC4J home directory.
    The lookup string for your entity bean should be the "logical"
    name, meaning the name of your bean prefixed with "java:comp/env".
    Again, I guess JDeveloper handles the bean name part for you,
    but the bean name appears in the "ejb-jar.xml" file under the
    "ejb-name" element.
    So if you've already checked all of the above, then please excuse
    me for not telling you anything you don't already know.
    Good Luck,
    Avi.

  • Error While Deploying A CMP Entity Bean With A Composite Primary Key

    Hello all,
    I have a problem deploying CMP Entity beans with composite primary keys. I have a CMP Entity Bean, which contains a composite primary key composed of two local stubs. If you know more about this please respond to my post on the EJB forum (subject: CMP Bean Local Stub as a Field of a Primary Key Class).
    In the mean time, can you please tell me what following error message means and how to resolve it? From what I understand it might be a problem with Sun ONE AS 7, but I would like to make sure it's not me doing something wrong.
    [05/Jan/2005:12:49:03] WARNING ( 1896):      Validation error in bean CustomerSubscription: The type of non-static field customer of the key class
    test.subscription.CustomerSubscriptionCMP_1530383317_JDOState$Oid must be primitive or must implement java.io.Serializable.
         Update the type of the key class field.
         Warning: All primary key columns in primary table CustomerSubscription of the bean corresponding to the generated class test.subscription.CustomerSubscriptionCMP_1530383317_JDOState must be mapped to key fields.
         Map the following primary key columns to key fields: CustomerSubscription.CustomerEmail,CustomerSubscription.SubscriptionType. If you already have fields mapped to these columns, verify that they are key fields.Is it enough that a primary key class be serializable or all fields have to implement Serializable or be a primitive?
    Please let me know if you need more information to answer my question.
    Thanks.
    Nikola

    Hi Nikola,
    There are several problems with your CMP bean.
    1. Fields of a Primary Key Class must be a subset of CMP fields, so yes, they must be either a primitive or a Serializable type.
    2. Sun Application Server does not support Primary Key fields of an arbitrary Serializable type (i.e. those that will be stored
    as BLOB in the database), but only primitives, Java wrappers, String, and Date/Time types.
    Do you try to use stubs instead of relationships or for some other reason?
    If it's the former - look at the CMR fields.
    If it's the latter, I suggest to store these fields as regular CMP fields and use some other value as the PK. If you prefer that
    the CMP container generates the PK values, use the Unknown
    PrimaryKey feature.
    Regards,
    -marina

  • Deploying CMP entity bean throws compilation error.

    Jdeveloper build works fine but the server deployment ( embedded) fails. I linked tools.jar to j2ee home dir, same version as jdev uses. Session beans deploy OK.
    The table corr to the entity bean has a primary key and the entity bean was created by dragging-dropping table onto UML diagram.
    error is >>>cmp-field of type 'java.lang.Long' does not have a no-arg constructor which is needed for properties/fields based mapping<<<, message details follow after dashed line.
    Platform details - Jdeveloper 9.0.3 on mdk 9.0, JDK 1.4.1 ( JDK 1.3.1 also does the same).
    [Starting OC4J using the following ports: HTTP=8988, RMI=23891, JMS=9227.]
    /usr/java/j2sdk1.4.1/bin/java -hotspot -classpath /var/jdeveloper/j2ee/home/oc4j.jar -Xverify:none -Doracle.j2ee.dont.use.memory.archive=true -Xrs com.evermind.server.OC4JServer -config /home/demo/jdevhome/system9.0.3.1035/oc4j-config/server.xml
    [waiting for the server to complete its initialization...]
    Embedded OC4J startup time: 9611 ms.
    Copying default deployment descriptor from archive at /home/demo/jdevhome/mywork/MyHRApplication/EJB-Tier/classes/META-INF/orion-ejb-jar.xml to deployment directory /home/demo/jdevhome/system9.0.3.1035/oc4j-config/application-deployments/current-workspace-app/classes...
    Auto-deploying file:/home/demo/jdevhome/mywork/MyHRApplication/EJB-Tier/classes/ (No previous deployment found)... Error compiling /home/demo/jdevhome/mywork/MyHRApplication/EJB-Tier/classes: cmp-field of type 'java.lang.Long' does not have a no-arg constructor which is needed for properties/fields based mapping
    Oracle9iAS (9.0.3.0.0) Containers for J2EE initialized

    Please note that the data-source has been re-architectured in 10.1.3 DP3 and you should have DataSource as follows:
    <data-sources xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:noNamespaceSchemaLocation='http://xmlns.oracle.com/oracleas/schema/data-sources-10_1.xsd' schema-major-version='10' schema-minor-version='1'>
    <managed-data-source connection-pool-name='Example Connection Pool' jndi-name='jdbc/OracleDS' name='OracleManagedDS' />
    <connection-pool name='Example Connection Pool' >
    <connection-factory factory-class='oracle.jdbc.pool.OracleDataSource' user='scott' password='tiger' url='jdbc:oracle:thin:@localhost:1521:orcl'>
    </connection-factory>
    </connection-pool>
    </data-sources>

  • Error while deploying an entity bean

    Hi,
    I am trying to deploy an entity bean in weblogic 7.0 .
    My weblogic-ejb-jar.xml has the entry as :
    <weblogic-enterprise-bean>
    <ejb-name>enroleejb.ManagedObjectImplHome</ejb-name>
    <stateless-session-descriptor>
    <pool>
    <max-beans-in-free-pool>100</max-beans-in-free-pool>
    <initial-beans-in-free-pool>0</initial-beans-in-free-pool>
    </pool>
    <stateless-clustering>
    <stateless-bean-is-clusterable>True</stateless-bean-is-clusterable>
    <stateless-bean-methods-are-idempotent>False</stateless-bean-methods-are-ide
    mpotent>
    </stateless-clustering>
    </stateless-session-descriptor>
    <transaction-descriptor>
    <trans-timeout-seconds>60</trans-timeout-seconds>
    </transaction-descriptor>
    <enable-call-by-reference>True</enable-call-by-reference>
    <jndi-name>enroleejb.ManagedObjectImplHome</jndi-name>
    </weblogic-enterprise-bean>
    When I run ejbc it gives the following error.
    [java] The file /meta-inf/weblogic-cmp-rdbms-jar.xml, specified in a
    type-storage element
    of your weblogic-ejb-jar.xml descriptor, does not exist in the jar
    file.
    [java] at
    weblogic.ejb20.persistence.PersistenceType.setTypeSpecificFile(PersistenceTy
    pe.java:475)
    [java] at
    weblogic.ejb20.persistence.PersistenceType.setupDeployer(PersistenceType.jav
    a:407)
    [java] at
    weblogic.ejb20.deployer.CMPInfoImpl.setup(CMPInfoImpl.java:114)
    [java] at
    weblogic.ejb20.ejbc.EJB20CMPCompiler.generatePersistenceSources(EJB20CMPComp
    iler.java:64)
    [java] at
    weblogic.ejb20.ejbc.EJBCompiler.doCompile(EJBCompiler.java:223)
    [java] at
    weblogic.ejb20.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:344)
    [java] at weblogic.ejbc20.runBody(ejbc20.java:470)
    [java] at weblogic.utils.compiler.Tool.run(Tool.java:126)
    [java] at weblogic.ejbc.main(ejbc.java:29)
    In the generated jar file I have meta-inf\weblogic-cmp-rdbms.jar file.
    Still it gives the error.
    What could be the problem?
    Any help would be appreciated.
    Thanks,
    Namrata

    Ejb jar file should have META-INF/weblogic-cmp-rdbms-jar.xml
    "Sarita Satoor" <[email protected]> wrote:
    Hi,
    I am trying to deploy an entity bean in weblogic 7.0 .
    My weblogic-ejb-jar.xml has the entry as :
    <weblogic-enterprise-bean>
    <ejb-name>enroleejb.ManagedObjectImplHome</ejb-name>
    <stateless-session-descriptor>
    <pool>
    <max-beans-in-free-pool>100</max-beans-in-free-pool>
    <initial-beans-in-free-pool>0</initial-beans-in-free-pool>
    </pool>
    <stateless-clustering>
    <stateless-bean-is-clusterable>True</stateless-bean-is-clusterable>
    <stateless-bean-methods-are-idempotent>False</stateless-bean-methods-are-ide
    mpotent>
    </stateless-clustering>
    </stateless-session-descriptor>
    <transaction-descriptor>
    <trans-timeout-seconds>60</trans-timeout-seconds>
    </transaction-descriptor>
    <enable-call-by-reference>True</enable-call-by-reference>
    <jndi-name>enroleejb.ManagedObjectImplHome</jndi-name>
    </weblogic-enterprise-bean>
    When I run ejbc it gives the following error.
    [java] The file /meta-inf/weblogic-cmp-rdbms-jar.xml, specified
    in a
    type-storage element
    of your weblogic-ejb-jar.xml descriptor, does not exist in the jar
    file.
    [java] at
    weblogic.ejb20.persistence.PersistenceType.setTypeSpecificFile(PersistenceTy
    pe.java:475)
    [java] at
    weblogic.ejb20.persistence.PersistenceType.setupDeployer(PersistenceType.jav
    a:407)
    [java] at
    weblogic.ejb20.deployer.CMPInfoImpl.setup(CMPInfoImpl.java:114)
    [java] at
    weblogic.ejb20.ejbc.EJB20CMPCompiler.generatePersistenceSources(EJB20CMPComp
    iler.java:64)
    [java] at
    weblogic.ejb20.ejbc.EJBCompiler.doCompile(EJBCompiler.java:223)
    [java] at
    weblogic.ejb20.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:344)
    [java] at weblogic.ejbc20.runBody(ejbc20.java:470)
    [java] at weblogic.utils.compiler.Tool.run(Tool.java:126)
    [java] at weblogic.ejbc.main(ejbc.java:29)
    In the generated jar file I have meta-inf\weblogic-cmp-rdbms.jar file.
    Still it gives the error.
    What could be the problem?
    Any help would be appreciated.
    Thanks,
    Namrata

Maybe you are looking for

  • I need to get rid of a credit card but there is no "none" button

    I can't update any apps or download apps with this credit card on here. So I need help

  • How can I integration BPM with OWC spaces

    I use BPM 11g PS4 (11.1.1.5) and I want to integrate my process spaces and displayed in webcenter spaces. I read and practice from http://andrejusb.blogspot.com/2011/02/bpm-portal-11g-ps3-how-to-configure.html and http://andrejusb.blogspot.com/2010/1

  • Load data issue: Job is longrunning on R1P side

    Hi All, We are working in the production system. There is one process chain "ZIBWCIMSH" which executes once in a month.This process chain was executed successfully till last month. But in this month the load step in this process chain is not getting

  • Some keys on my N900 are losing their black paint ...

    So far just 4 keys have shown this problem, including the space bar.    The bad news is that when the black paint starts to goes, the white plastic underneath is illuminated from below and the keys are difficult to read.  I think it may be that the k

  • Open qty for 311 movement type to appear in MD04

    Hi, We are using MRP area at plant level,our client requirement is the sloc to sloc stock transfer qty with in a plant has to appear in MD04,we are using 311 movement type to transfer the stock. Is it possible ? If yes, what are the settings required