Deploying Entity Bean
I am trying to deploy Entity Bean(Bean-Managed Persistence) using deploytool. But in halfway of deployment, I am getting an error.
Error Says "There was deployment error.java.rmi.ServerException:Remote Exception occured in server thread;nested exception is java.rmi.RemoteException:error while loading ejb.jar"
I am not getting why this error occurs.
I am using J2EE deploytool. We are not able to trap the exact cause of error. We have created a fresh bean without any problem yesterday.
Similar Messages
-
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
nullThank 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 -
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? -
How to deploy entity bean in weblogic
Hi frnds,
can anybody tell me that
how to deploy entity bean in weblogic8.1
i want to know step by step process.
bcoz i am totally new for weblogic
thanks & regardsWebLogic 8.1 docs.
-
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 ShahHi,
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 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#EJBPG481JRE 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 -
Problem while deploying entity beans
Hi,
We are using JDeveloper 3.2.2 (NT) and 8.1.7 (NT) to deploy EJB's.
Now we are trying to deploy the entity bean to Oracle JVM. We are facing the following problem while deploying an entity bean .
"Persistence provider declared in the deployment descriptor is not supported
*** Errors occurred while deploying the EJB to 8i JVM ***
*** Deployment completed ***"
We would appreciate if anyone could help us to solve this error.
nullHi,
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 -
Difficulty deploying Entity Bean in Web.ser.5.1
I am trying to deploy the Container managed Entity beans in Weblogic
App.Server5.1.But while using the command "java weblogic.ejbc source.jar
target.jar" I get the following error
ERROR: Error from ejbc: [9.2.8] In EJB Beans, the home interface must
define the findByPrimaryKey me
thod.
ERROR: ejbc found errors.
I am not familiar with the
xml deployment descriptor.I used the xml files from the weblogic
examples and modified it to fit my example.
Can anyone help me out.From what the message says, your EJB has to define a findByPrimaryKey
method. It does not. You should make sure that it does.
Thanks,
Michael
Michael Girdley
Product Manager, WebLogic Server & Express
BEA Systems Inc
Manjunath Kalmani <[email protected]> wrote in message
news:[email protected]..
I am trying to deploy the Container managed Entity beans in Weblogic
App.Server5.1.But while using the command "java weblogic.ejbc source.jar
target.jar" I get the following error
ERROR: Error from ejbc: [9.2.8] In EJB Beans, the home interface must
define the findByPrimaryKey me
thod.
ERROR: ejbc found errors.
I am not familiar with the
xml deployment descriptor.I used the xml files from the weblogic
examples and modified it to fit my example.
Can anyone help me out. -
Error deploying entity bean on web logic server
i am trying to deploy a container managed persistence entity bean on web logic server when i run the command ejbc which generates the final jar file ready to deploy having its stub and skeleton it gives me the error that the return type of create(int) method should have a type of bean home interface while in accordance with ejb1.1 specicication it should be the type of primary key and a null value should be returned.
plz let me know where i am doing it wrong.thanks for ur quick response sir i am using this services provided by sun microsystem first time and
am really thankful to Sun Microsystem for this great deal of help to the new commers but sir my problem is still there.
following is the method which i have written in the code
public InvoicePK ejbCreate(int id)
this.id=id;
return null;
and here it is the error generated by the server deployment tool.
[9.2.8] In EJB Invoice, the return type for the create method create(int) must be the bean's remote interface type.
[9.2.8] In EJB Invoice, the findByPrimaryKey method must return the Entity bean's remote interface type.
[9.2.8] In EJB Invoice, the return type for the method findByPrimaryKey(com.swi.InvoicePK) must be the entity bean's remote interface type (for a single-object finder) or a collection thereof (for a mult-object finder).
the detail of files created by me are as follows.
1. Invoice (Entity Bean)
2. InvoicePK (Primary Key file)
3. MyRemoteInterface (remote interface for entity bean)
4. MyHomeInterface (home interface for entity bean)
plz let me know where i am doing wrong and oblige. -
Exception while accessing deployed entity bean (CMP)
Hi
PSB for the exception i get when i try to access a delpoyed entity bean
(CMP).
If any of you have got this exception and fixed it or have any idea of how
to fix it then please reply asap.
thanks.
java.lang.NullPointerException
at
com.netscape.server.deployment.PersistenceDeploymentDescriptorImpl.getBeanPr
operty(Unk
n Source)
at com.netscape.server.ejb.SQLPersistenceManager.init(Unknown
Source)
at
com.netscape.server.ejb.SQLPersistenceManagerFactory.addHome(Unknown Source)
at com.kivasoft.eb.EBHomeBase.initMeta(Unknown Source)
at com.kivasoft.eb.EBHomeBase.initTransport(Unknown Source)
at com.kivasoft.eb.EBActivatorCB.getEBHomenative(Native Method)
at com.kivasoft.eb.EBActivatorCB.getEBHome(Unknown Source)
at com.netscape.server.ejb.EjbContext.createHomeRef(Unknown Source)
at com.netscape.server.ejb.EjbContext.getHomeRef(Unknown Source)
at com.netscape.server.ejb.EjbContext.lookup(Unknown Source)
at com.netscape.server.jndi.RootContext.lookup(Unknown Source)
at com.netscape.server.jndi.RootContext.lookup(Unknown Source)
at javax.naming.InitialContext.lookup(InitialContext.java:357)
at samples.test.ejb.TestEJB.getGreeting(TestEJB.java:45)
at java.lang.reflect.Method.invoke(Native Method)
at
samples.test.ejb.ejb_skel_samples_test_ejb_TestEJB.getGreeting(ejb_skel_samp
les_test_e
TestEJB.java:80)
at
samples.test.ejb.ejb_kcp_skel_Test.getGreeting__indir_wstring__indir_wstring
(ejb_kcp_s
_Test.java:220)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
samples.test.ejb.ejb_kcp_stub_Test.getGreeting(ejb_kcp_stub_Test.java:327)
at samples.test.ejb.ejb_stub_Test.getGreeting(ejb_stub_Test.java:71)
at samples.test.servlet.TestServlet.doGet(TestServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at
com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at
com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unknown
Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Thread.run(Thread.java:479)
[04/Dec/2001 11:16:51:8] error: Exception Stack Trace:
com.netscape.server.ejb.PersistenceException
at com.netscape.server.ejb.SQLPersistenceManager.init(Unknown
Source)
at
com.netscape.server.ejb.SQLPersistenceManagerFactory.addHome(Unknown Source)
at com.kivasoft.eb.EBHomeBase.initMeta(Unknown Source)
at com.kivasoft.eb.EBHomeBase.initTransport(Unknown Source)
at com.kivasoft.eb.EBActivatorCB.getEBHomenative(Native Method)
at com.kivasoft.eb.EBActivatorCB.getEBHome(Unknown Source)
at com.netscape.server.ejb.EjbContext.createHomeRef(Unknown Source)
at com.netscape.server.ejb.EjbContext.getHomeRef(Unknown Source)
at com.netscape.server.ejb.EjbContext.lookup(Unknown Source)
at com.netscape.server.jndi.RootContext.lookup(Unknown Source)
at com.netscape.server.jndi.RootContext.lookup(Unknown Source)
at javax.naming.InitialContext.lookup(InitialContext.java:357)
at samples.test.ejb.TestEJB.getGreeting(TestEJB.java:45)
at java.lang.reflect.Method.invoke(Native Method)
at
samples.test.ejb.ejb_skel_samples_test_ejb_TestEJB.getGreeting(ejb_skel_samp
les_test_e
TestEJB.java:80)
at
samples.test.ejb.ejb_kcp_skel_Test.getGreeting__indir_wstring__indir_wstring
(ejb_kcp_s
_Test.java:220)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
samples.test.ejb.ejb_kcp_stub_Test.getGreeting(ejb_kcp_stub_Test.java:327)
at samples.test.ejb.ejb_stub_Test.getGreeting(ejb_stub_Test.java:71)
at samples.test.servlet.TestServlet.doGet(TestServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at
com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at
com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unknown
Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Thread.run(Thread.java:479)
got the Entity bean found ***************
got the Entity bean***************
[04/Dec/2001 11:16:51:8] error: EBFP-marshal_internal: internal exception
caught in kcp skeleton,
ception = java.lang.NullPointerException
[04/Dec/2001 11:16:51:8] error: Exception Stack Trace:
java.lang.NullPointerException
at java.util.Hashtable.get(Hashtable.java:321)
at com.netscape.server.ejb.SQLPersistenceManager.<init>(Unknown
Source)
at
com.netscape.server.ejb.SQLPersistenceManagerFactory.newInstance(Unknown
Source)
at
com.netscape.server.ejb.EntityDelegateManagerImpl.getPersistenceManager(Unkn
own Source
at
com.netscape.server.ejb.EntityDelegateManagerImpl.doPersistentFind(Unknown
Source)
at com.netscape.server.ejb.EntityDelegateManagerImpl.find(Unknown
Source)
at com.kivasoft.eb.EBHomeBase.findSingleByParms(Unknown Source)
at
samples.test.ejb.Entity.ejb_home_samples_test_ejb_Entity_TestEntityBean.find
ByPrimaryK
ejb_home_samples_test_ejb_Entity_TestEntityBean.java:126)
at
samples.test.ejb.Entity.ejb_kcp_skel_TestEntityHome.findByPrimaryKey__sample
s_test_ejb
tity_TestEntity__int(ejb_kcp_skel_TestEntityHome.java:266)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
samples.test.ejb.Entity.ejb_kcp_stub_TestEntityHome.findByPrimaryKey(ejb_kcp
stubTest
ityHome.java:338)
at
samples.test.ejb.Entity.ejb_stub_TestEntityHome.findByPrimaryKey(ejb_stub_Te
stEntityHo
java:85)
at samples.test.ejb.TestEJB.getGreeting(TestEJB.java:51)
at java.lang.reflect.Method.invoke(Native Method)
at
samples.test.ejb.ejb_skel_samples_test_ejb_TestEJB.getGreeting(ejb_skel_samp
les_test_e
TestEJB.java:80)
at
samples.test.ejb.ejb_kcp_skel_Test.getGreeting__indir_wstring__indir_wstring
(ejb_kcp_s
_Test.java:220)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
samples.test.ejb.ejb_kcp_stub_Test.getGreeting(ejb_kcp_stub_Test.java:327)
at samples.test.ejb.ejb_stub_Test.getGreeting(ejb_stub_Test.java:71)
at samples.test.servlet.TestServlet.doGet(TestServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at
com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at
com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unknown
Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Thread.run(Thread.java:479)
I could not find the Entity bean
java.rmi.RemoteException: internal error; nested exception is:
java.lang.NullPointerException
java.lang.NullPointerException
at java.util.Hashtable.get(Hashtable.java:321)
at com.netscape.server.ejb.SQLPersistenceManager.<init>(Unknown
Source)
at
com.netscape.server.ejb.SQLPersistenceManagerFactory.newInstance(Unknown
Source)
at
com.netscape.server.ejb.EntityDelegateManagerImpl.getPersistenceManager(Unkn
own Source
at
com.netscape.server.ejb.EntityDelegateManagerImpl.doPersistentFind(Unknown
Source)
at com.netscape.server.ejb.EntityDelegateManagerImpl.find(Unknown
Source)
at com.kivasoft.eb.EBHomeBase.findSingleByParms(Unknown Source)
at
samples.test.ejb.Entity.ejb_home_samples_test_ejb_Entity_TestEntityBean.find
ByPrimaryK
ejb_home_samples_test_ejb_Entity_TestEntityBean.java:126)
at
samples.test.ejb.Entity.ejb_kcp_skel_TestEntityHome.findByPrimaryKey__sample
s_test_ejb
tity_TestEntity__int(ejb_kcp_skel_TestEntityHome.java:266)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
samples.test.ejb.Entity.ejb_kcp_stub_TestEntityHome.findByPrimaryKey(ejb_kcp
stubTest
ityHome.java:338)
at
samples.test.ejb.Entity.ejb_stub_TestEntityHome.findByPrimaryKey(ejb_stub_Te
stEntityHo
java:85)
at samples.test.ejb.TestEJB.getGreeting(TestEJB.java:51)
at java.lang.reflect.Method.invoke(Native Method)
at
samples.test.ejb.ejb_skel_samples_test_ejb_TestEJB.getGreeting(ejb_skel_samp
les_test_e
TestEJB.java:80)
at
samples.test.ejb.ejb_kcp_skel_Test.getGreeting__indir_wstring__indir_wstring
(ejb_kcp_s
_Test.java:220)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
samples.test.ejb.ejb_kcp_stub_Test.getGreeting(ejb_kcp_stub_Test.java:327)
at samples.test.ejb.ejb_stub_Test.getGreeting(ejb_stub_Test.java:71)
at samples.test.servlet.TestServlet.doGet(TestServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at
com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at
com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unknown
Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Thread.run(Thread.java:479)
Regards
Sandhya SeetharamHi,
This seems to be the Hello world EJB application with a small
modification(probably an addition of test directory or a java file). I would
recomend you to go through every line of the document on deploying this
application. There is another posting regarding the same issue in this forum.
Regards
Raj
akhila wrote:
Hi
PSB for the exception i get when i try to access a delpoyed entity bean
(CMP).
If any of you have got this exception and fixed it or have any idea of how
to fix it then please reply asap.
thanks.
java.lang.NullPointerException
at
com.netscape.server.deployment.PersistenceDeploymentDescriptorImpl.getBeanPr
operty(Unk
n Source)
at com.netscape.server.ejb.SQLPersistenceManager.init(Unknown
Source)
at
com.netscape.server.ejb.SQLPersistenceManagerFactory.addHome(Unknown Source)
at com.kivasoft.eb.EBHomeBase.initMeta(Unknown Source)
at com.kivasoft.eb.EBHomeBase.initTransport(Unknown Source)
at com.kivasoft.eb.EBActivatorCB.getEBHomenative(Native Method)
at com.kivasoft.eb.EBActivatorCB.getEBHome(Unknown Source)
at com.netscape.server.ejb.EjbContext.createHomeRef(Unknown Source)
at com.netscape.server.ejb.EjbContext.getHomeRef(Unknown Source)
at com.netscape.server.ejb.EjbContext.lookup(Unknown Source)
at com.netscape.server.jndi.RootContext.lookup(Unknown Source)
at com.netscape.server.jndi.RootContext.lookup(Unknown Source)
at javax.naming.InitialContext.lookup(InitialContext.java:357)
at samples.test.ejb.TestEJB.getGreeting(TestEJB.java:45)
at java.lang.reflect.Method.invoke(Native Method)
at
samples.test.ejb.ejb_skel_samples_test_ejb_TestEJB.getGreeting(ejb_skel_samp
les_test_e
TestEJB.java:80)
at
samples.test.ejb.ejb_kcp_skel_Test.getGreeting__indir_wstring__indir_wstring
(ejb_kcp_s
_Test.java:220)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
samples.test.ejb.ejb_kcp_stub_Test.getGreeting(ejb_kcp_stub_Test.java:327)
at samples.test.ejb.ejb_stub_Test.getGreeting(ejb_stub_Test.java:71)
at samples.test.servlet.TestServlet.doGet(TestServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at
com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at
com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unknown
Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Thread.run(Thread.java:479)
[04/Dec/2001 11:16:51:8] error: Exception Stack Trace:
com.netscape.server.ejb.PersistenceException
at com.netscape.server.ejb.SQLPersistenceManager.init(Unknown
Source)
at
com.netscape.server.ejb.SQLPersistenceManagerFactory.addHome(Unknown Source)
at com.kivasoft.eb.EBHomeBase.initMeta(Unknown Source)
at com.kivasoft.eb.EBHomeBase.initTransport(Unknown Source)
at com.kivasoft.eb.EBActivatorCB.getEBHomenative(Native Method)
at com.kivasoft.eb.EBActivatorCB.getEBHome(Unknown Source)
at com.netscape.server.ejb.EjbContext.createHomeRef(Unknown Source)
at com.netscape.server.ejb.EjbContext.getHomeRef(Unknown Source)
at com.netscape.server.ejb.EjbContext.lookup(Unknown Source)
at com.netscape.server.jndi.RootContext.lookup(Unknown Source)
at com.netscape.server.jndi.RootContext.lookup(Unknown Source)
at javax.naming.InitialContext.lookup(InitialContext.java:357)
at samples.test.ejb.TestEJB.getGreeting(TestEJB.java:45)
at java.lang.reflect.Method.invoke(Native Method)
at
samples.test.ejb.ejb_skel_samples_test_ejb_TestEJB.getGreeting(ejb_skel_samp
les_test_e
TestEJB.java:80)
at
samples.test.ejb.ejb_kcp_skel_Test.getGreeting__indir_wstring__indir_wstring
(ejb_kcp_s
_Test.java:220)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
samples.test.ejb.ejb_kcp_stub_Test.getGreeting(ejb_kcp_stub_Test.java:327)
at samples.test.ejb.ejb_stub_Test.getGreeting(ejb_stub_Test.java:71)
at samples.test.servlet.TestServlet.doGet(TestServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at
com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at
com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unknown
Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Thread.run(Thread.java:479)
got the Entity bean found ***************
got the Entity bean***************
[04/Dec/2001 11:16:51:8] error: EBFP-marshal_internal: internal exception
caught in kcp skeleton,
ception = java.lang.NullPointerException
[04/Dec/2001 11:16:51:8] error: Exception Stack Trace:
java.lang.NullPointerException
at java.util.Hashtable.get(Hashtable.java:321)
at com.netscape.server.ejb.SQLPersistenceManager.<init>(Unknown
Source)
at
com.netscape.server.ejb.SQLPersistenceManagerFactory.newInstance(Unknown
Source)
at
com.netscape.server.ejb.EntityDelegateManagerImpl.getPersistenceManager(Unkn
own Source
at
com.netscape.server.ejb.EntityDelegateManagerImpl.doPersistentFind(Unknown
Source)
at com.netscape.server.ejb.EntityDelegateManagerImpl.find(Unknown
Source)
at com.kivasoft.eb.EBHomeBase.findSingleByParms(Unknown Source)
at
samples.test.ejb.Entity.ejb_home_samples_test_ejb_Entity_TestEntityBean.find
ByPrimaryK
ejb_home_samples_test_ejb_Entity_TestEntityBean.java:126)
at
samples.test.ejb.Entity.ejb_kcp_skel_TestEntityHome.findByPrimaryKey__sample
s_test_ejb
tity_TestEntity__int(ejb_kcp_skel_TestEntityHome.java:266)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
samples.test.ejb.Entity.ejb_kcp_stub_TestEntityHome.findByPrimaryKey(ejb_kcp
stubTest
ityHome.java:338)
at
samples.test.ejb.Entity.ejb_stub_TestEntityHome.findByPrimaryKey(ejb_stub_Te
stEntityHo
java:85)
at samples.test.ejb.TestEJB.getGreeting(TestEJB.java:51)
at java.lang.reflect.Method.invoke(Native Method)
at
samples.test.ejb.ejb_skel_samples_test_ejb_TestEJB.getGreeting(ejb_skel_samp
les_test_e
TestEJB.java:80)
at
samples.test.ejb.ejb_kcp_skel_Test.getGreeting__indir_wstring__indir_wstring
(ejb_kcp_s
_Test.java:220)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
samples.test.ejb.ejb_kcp_stub_Test.getGreeting(ejb_kcp_stub_Test.java:327)
at samples.test.ejb.ejb_stub_Test.getGreeting(ejb_stub_Test.java:71)
at samples.test.servlet.TestServlet.doGet(TestServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at
com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at
com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unknown
Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Thread.run(Thread.java:479)
I could not find the Entity bean
java.rmi.RemoteException: internal error; nested exception is:
java.lang.NullPointerException
java.lang.NullPointerException
at java.util.Hashtable.get(Hashtable.java:321)
at com.netscape.server.ejb.SQLPersistenceManager.<init>(Unknown
Source)
at
com.netscape.server.ejb.SQLPersistenceManagerFactory.newInstance(Unknown
Source)
at
com.netscape.server.ejb.EntityDelegateManagerImpl.getPersistenceManager(Unkn
own Source
at
com.netscape.server.ejb.EntityDelegateManagerImpl.doPersistentFind(Unknown
Source)
at com.netscape.server.ejb.EntityDelegateManagerImpl.find(Unknown
Source)
at com.kivasoft.eb.EBHomeBase.findSingleByParms(Unknown Source)
at
samples.test.ejb.Entity.ejb_home_samples_test_ejb_Entity_TestEntityBean.find
ByPrimaryK
ejb_home_samples_test_ejb_Entity_TestEntityBean.java:126)
at
samples.test.ejb.Entity.ejb_kcp_skel_TestEntityHome.findByPrimaryKey__sample
s_test_ejb
tity_TestEntity__int(ejb_kcp_skel_TestEntityHome.java:266)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
samples.test.ejb.Entity.ejb_kcp_stub_TestEntityHome.findByPrimaryKey(ejb_kcp
stubTest
ityHome.java:338)
at
samples.test.ejb.Entity.ejb_stub_TestEntityHome.findByPrimaryKey(ejb_stub_Te
stEntityHo
java:85)
at samples.test.ejb.TestEJB.getGreeting(TestEJB.java:51)
at java.lang.reflect.Method.invoke(Native Method)
at
samples.test.ejb.ejb_skel_samples_test_ejb_TestEJB.getGreeting(ejb_skel_samp
les_test_e
TestEJB.java:80)
at
samples.test.ejb.ejb_kcp_skel_Test.getGreeting__indir_wstring__indir_wstring
(ejb_kcp_s
_Test.java:220)
at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
at
samples.test.ejb.ejb_kcp_stub_Test.getGreeting(ejb_kcp_stub_Test.java:327)
at samples.test.ejb.ejb_stub_Test.getGreeting(ejb_stub_Test.java:71)
at samples.test.servlet.TestServlet.doGet(TestServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
at
com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
Source)
at
com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unknown
Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
at com.kivasoft.thread.ThreadBasic.run(Native Method)
at java.lang.Thread.run(Thread.java:479)
Regards
Sandhya Seetharam -
Problems deploying entity beans with local interfaces on Jboss?
I'm trying to deploy a simple entity bean using local interfaces on Jboss 3.2.1 and I obtain the following exception:
19:08:51,875 WARN [verifier] EJB spec violation:
Bean : UsersEJB
Section: 9.2.2
Warning: The entity bean class must not be defined as abstract.
19:08:51,875 WARN [verifier] EJB spec violation:
Bean : UsersEJB
Section: 9.4.7.1
Warning: The primkey-field element must name a public field in the bean implemen
tation class.
Any idea?
Thanks,
MarcoI guess you are missing <cmp-version>2.x</cmp-version> for your first warning and <primkey-field>primary key field </primkey-field> for you second warning in your ejb-jar.xml
-
Deploying entity beans with Local interfaces on Jboss
Hi, I'm trying to deploying a simple entity bean on Jboss. The EJB has been developed with Local Interfaces because then I want to access it with a session bean facade.
I get the following error:
<!-- ERROR BEGIN -->
23:41:25,984 WARN [verifier] EJB spec violation:
Bean : UsersEJB
Section: 9.2.2
Warning: The entity bean class must not be defined as abstract.
23:41:25,984 WARN [verifier] EJB spec violation:
Bean : UsersEJB
Section: 9.4.7.1
Warning: The primkey-field element must name a public field in the bean implemen
tation class.
<!-- ERROR END -->
I'm following what is wrote in the Professional EJB editeb by wrox?
Is it possible to deploy an entity bean alone with Local interfaces? Is there something I'm missing? It's true that I defined the implementation class as abstract, but because there are abstract getter/setter methods.
Thanks for any help,
MarcoGreetings,
Hi, I'm trying to deploying a simple entity bean on
Jboss. The EJB has been developed with Local
23:41:25,984 WARN [verifier] EJB spec violation:
Bean : UsersEJB
Section: 9.2.2
Warning: The entity bean class must not be defined as abstract.
23:41:25,984 WARN [verifier] EJB spec violation:
Bean : UsersEJB
Section: 9.4.7.1
Warning: The primkey-field element must name a public field in
the bean implementation class.What version of JBoss are you using? These errors indicate container compliance with EJB spec 1.1, not 2.0 to which your CMP beans are written. Download the latest JBoss release version - 3.2.1 - and you should not see this problem.
Is it possible to deploy an entity bean alone with
Local interfaces? Is there something I'm missing? It'sYes it is (no, you are not "missing something" ;). In fact, this is recommended practice in most cases under CMP 2.0 - CMR having been a major impetus to the development of Local interfaces in the specification. ;)
true that I defined the implementation class as
abstract, but because there are abstract getter/setter
methods.No problems. You are "right on track" for CMP 2.0. :)
Thanks for any help,
MarcoRegards,
Tony "Vee Schade" Cook -
Deploying Entity Bean Managed Persistant Example.
Here is my error after running the client:
java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
java.rmi.RemoteException: Transaction aborted; nested exception is: javax.transaction.RollbackException; nested exception is:
javax.transaction.RollbackException
at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:170)
at javax.rmi.CORBA.Util.mapSystemException(Util.java:65)
at Test1HomeStub.create(Unknown Source)
at Test1Client.main(Unknown Source)
Here is the J2EE Verification error (allthough it deploys sucessfully I get this error for all the
tuitorial examples)
Error: [ ejb/SimpleTest1 ] class [ Test1Home ] cannot be found within this jar [ app-client-ic.jar ].
For [ app-client-ic.jar ]
Error: [ ejb/SimpleTest1 ] class [ Test1 ] cannot be found within this jar [ app-client-ic.jar ].
I have edited the SavingsAccount example so it has only got one table, two fields and a couple of methods. Here is the code:
create.sql
drop table test1;
create table test1
(id varchar(3) constraint pk_test1 primary key,
firstname varchar(24) );
exit;
Test!Bean.java
import java.sql.*;
import javax.sql.*;
import java.util.*;
import javax.ejb.*;
import javax.naming.*;
public class Test1Bean implements EntityBean {
private final static String dbName = "java:comp/env/jdbc/Test1DB";
private String id;
private String firstName;
private EntityContext context;
private Connection con;
public String getFirstName() {
return firstName;
public String ejbCreate(String id, String firstName) throws CreateException {
try {
insertRow(id, firstName);
} catch (Exception ex) {
throw new EJBException("ejbCreate: " + ex.getMessage());
this.id = id;
this.firstName = firstName;
return id;
public String ejbFindByPrimaryKey(String primaryKey)
throws FinderException {
boolean result;
try {
result = selectByPrimaryKey(primaryKey);
} catch (Exception ex) {
throw new EJBException("ejbFindByPrimaryKey: " + ex.getMessage());
if (result) {
return primaryKey;
} else {
throw new ObjectNotFoundException("Row for id " + primaryKey +
" not found.");
public void ejbRemove() {
try {
deleteRow(id);
} catch (Exception ex) {
throw new EJBException("ejbRemove: " + ex.getMessage());
public void setEntityContext(EntityContext context) {
this.context = context;
public void unsetEntityContext() {
public void ejbActivate() {
id = (String) context.getPrimaryKey();
public void ejbPassivate() {
id = null;
public void ejbLoad() {
try {
loadRow();
} catch (Exception ex) {
throw new EJBException("ejbLoad: " + ex.getMessage());
public void ejbStore() {
try {
storeRow();
} catch (Exception ex) {
throw new EJBException("ejbStore: " + ex.getMessage());
public void ejbPostCreate(String id, String firstName) {
/*********************** Database Routines *************************/
private void makeConnection() {
try {
InitialContext ic = new InitialContext();
DataSource ds = (DataSource) ic.lookup(dbName);
con = ds.getConnection();
} catch (Exception ex) {
throw new EJBException("Unable to connect to database. " +
ex.getMessage());
private void releaseConnection() {
try {
con.close();
} catch (SQLException ex) {
throw new EJBException("releaseConnection: " + ex.getMessage());
private void insertRow(String id, String firstName) throws SQLException {
makeConnection();
String insertStatement =
"insert into test1 values ( ? , ? )";
PreparedStatement prepStmt = con.prepareStatement(insertStatement);
prepStmt.setString(1, id);
prepStmt.setString(2, firstName);
prepStmt.executeUpdate();
prepStmt.close();
releaseConnection();
private void deleteRow(String id) throws SQLException {
makeConnection();
String deleteStatement = "delete from test1 where id = ? ";
PreparedStatement prepStmt = con.prepareStatement(deleteStatement);
prepStmt.setString(1, id);
prepStmt.executeUpdate();
prepStmt.close();
releaseConnection();
private boolean selectByPrimaryKey(String primaryKey)
throws SQLException {
makeConnection();
String selectStatement =
"select id " + "from test1 where id = ? ";
PreparedStatement prepStmt = con.prepareStatement(selectStatement);
prepStmt.setString(1, primaryKey);
ResultSet rs = prepStmt.executeQuery();
boolean result = rs.next();
prepStmt.close();
releaseConnection();
return result;
private void loadRow() throws SQLException {
makeConnection();
String selectStatement =
"select firstname from test1 where id = ? ";
PreparedStatement prepStmt = con.prepareStatement(selectStatement);
prepStmt.setString(1, this.id);
ResultSet rs = prepStmt.executeQuery();
if (rs.next()) {
this.firstName = rs.getString(1);
prepStmt.close();
} else {
prepStmt.close();
throw new NoSuchEntityException("Row for id " + id +
" not found in database.");
releaseConnection();
private void storeRow() throws SQLException {
makeConnection();
String updateStatement =
"update test1 set firstname = ? where id = ?";
PreparedStatement prepStmt = con.prepareStatement(updateStatement);
prepStmt.setString(1, firstName);
prepStmt.setString(4, id);
int rowCount = prepStmt.executeUpdate();
prepStmt.close();
if (rowCount == 0) {
throw new EJBException("Storing row for id " + id + " failed.");
releaseConnection();
// Test1Bean
Test1Client
import java.util.*;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.rmi.PortableRemoteObject;
public class Test1Client {
public static void main(String[] args) {
try {
Context initial = new InitialContext();
Object objref =
initial.lookup("java:comp/env/ejb/SimpleTest1");
Test1Home home =
(Test1Home) PortableRemoteObject.narrow(objref,
Test1Home.class);
Test1 duke =
home.create("123", "Duke");
duke = home.findByPrimaryKey("123");
System.out.println(duke.getFirstName());
System.exit(0);
catch (Exception ex)
System.err.println("Caught an exception.");
ex.printStackTrace();
Test1Home.jav
import java.rmi.RemoteException;
import javax.ejb.*;
public interface Test1Home extends EJBHome {
public Test1 create(String id, String firstName) throws RemoteException, CreateException;
public Test1 findByPrimaryKey(String id)
throws FinderException, RemoteException;
Test1.java
import javax.ejb.EJBObject;
import java.rmi.RemoteException;
public interface Test1 extends EJBObject {
public String getFirstName() throws RemoteException;
application.xml (Test1App.ear)
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://java.sun.com/xml/ns/j2ee" version="1.4" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd">
<description>Application description</description>
<display-name>Test1App</display-name>
<module>
<java>app-client-ic.jar</java>
</module>
<module>
<ejb>ejb-jar-ic.jar</ejb>
</module>
</application>
sun-application.xml (Test1App.ear)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sun-application PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 8.0 J2EE Application 1.4//EN" "http://www.sun.com/software/appserver/dtds/sun-application_1_4-0.dtd">
<sun-application>
<pass-by-reference>false</pass-by-reference>
</sun-application>
ejb-jar.xml (in ejb-jar-ic.jar)
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar xmlns="http://java.sun.com/xml/ns/j2ee" version="2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd">
<display-name>Test1JAR</display-name>
<enterprise-beans>
<entity>
<ejb-name>Test1Bean</ejb-name>
<home>Test1Home</home>
<remote>Test1</remote>
<ejb-class>Test1Bean</ejb-class>
<persistence-type>Bean</persistence-type>
<prim-key-class>java.lang.String</prim-key-class>
<reentrant>true</reentrant>
<resource-ref>
<res-ref-name>jdbc/Test1DB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
<security-identity>
<use-caller-identity/>
</security-identity>
</entity>
</enterprise-beans>
<assembly-descriptor>
<method-permission>
<unchecked/>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Home</method-intf>
<method-name>remove</method-name>
<method-params>
<method-param>java.lang.Object</method-param>
</method-params>
</method>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Home</method-intf>
<method-name>getHomeHandle</method-name>
</method>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Remote</method-intf>
<method-name>isIdentical</method-name>
<method-params>
<method-param>javax.ejb.EJBObject</method-param>
</method-params>
</method>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Remote</method-intf>
<method-name>getFirstName</method-name>
</method>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Home</method-intf>
<method-name>findByPrimaryKey</method-name>
<method-params>
<method-param>java.lang.String</method-param>
</method-params>
</method>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Home</method-intf>
<method-name>remove</method-name>
<method-params>
<method-param>javax.ejb.Handle</method-param>
</method-params>
</method>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Remote</method-intf>
<method-name>getHandle</method-name>
</method>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Home</method-intf>
<method-name>create</method-name>
<method-params>
<method-param>java.lang.String</method-param>
<method-param>java.lang.String</method-param>
</method-params>
</method>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Home</method-intf>
<method-name>getEJBMetaData</method-name>
</method>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Remote</method-intf>
<method-name>getPrimaryKey</method-name>
</method>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Remote</method-intf>
<method-name>remove</method-name>
</method>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Remote</method-intf>
<method-name>getEJBHome</method-name>
</method>
</method-permission>
<container-transaction>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Remote</method-intf>
<method-name>remove</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
<container-transaction>
<method>
<ejb-name>Test1Bean</ejb-name>
<method-intf>Remote</method-intf>
<method-name>getFirstName</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>
</ejb-jar>
sun-ejb-jar.xml (in ejb-jar-ic.jar )
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sun-ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 8.0 EJB 2.1//EN" "http://www.sun.com/software/appserver/dtds/sun-ejb-jar_2_1-0.dtd">
<sun-ejb-jar>
<enterprise-beans>
<name>Test1JAR</name>
<ejb>
<ejb-name>Test1Bean</ejb-name>
<jndi-name>Test1Bean</jndi-name>
<resource-ref>
<res-ref-name>jdbc/Test1DB</res-ref-name>
<jndi-name>jdbc/ejbTutorialDB</jndi-name>
</resource-ref>
</ejb>
</enterprise-beans>
</sun-ejb-jar>
application-client.xml ( in app-client-ic.jar)
<?xml version="1.0" encoding="UTF-8"?>
<application-client xmlns="http://java.sun.com/xml/ns/j2ee" version="1.4" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application-client_1_4.xsd"><display-name>Test1Client</display-name>
<ejb-ref>
<ejb-ref-name>ejb/SimpleTest1</ejb-ref-name>
<ejb-ref-type>Entity</ejb-ref-type>
<home>Test1Home</home>
<remote>Test1</remote>
</ejb-ref>
</application-client>
sun-application-client.xml ( in app-client-ic.jar)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sun-application-client PUBLIC "-//Sun Microsystems, Inc.//DTD Application Server 8.0 Application Client 1.4//EN" "http://www.sun.com/software/appserver/dtds/sun-application-client_1_4-0.dtd">
<sun-application-client>
<ejb-ref>
<ejb-ref-name>ejb/SimpleTest1</ejb-ref-name>
<jndi-name>Test1Bean</jndi-name>
</ejb-ref>
</sun-application-client>
This is adapted from the Savings Account example. I couldn't get it to work either
from the source provided though it did work with the provided ear. I have been
comparing the difference in setting but can see anything.
I have been able to build and deploy all the other examples in the tutorial but I am somehow
stuck on ejbs.
Help would be much appreciated.
cheers,
paulJust had a look at the client jar. The one generated by the Savings Account provided ear has got a shorter ejb-jar.xml. It doesn't have the functions specified like the one in its ear file.
Another difference thet the Manifest.mf files for my client jar do not have as many paths specified
as my test client jar. Don't know why. I am suspecting that maybe there is a slight configuration problem in my j2ee setup. Though I am not sure waht or what to look for. I hope this little bit of
extra info helps.
cheers,
paul. -
Urgent: Can't lookup entity bean
Dear all,
I define a business process in workflow engine, which invoke a java class to get
DB data through CMP entity bean. The entity bean was packed in to a ear and was
workable/callable within the same ear.
However, when the workflow engine can't invoke the entity bean, the workflow engine
always throw exception as following.
javax.naming.LinkException: . Root exception is javax.naming.NameNotFoundException:
Unable to resolve 'app/ejb/ConsignmentEntityBean.jar#Consignments/local-home'
Resolved: 'app/ejb' Unresolved:'ConsignmentEntityBean.jar#Consignments' ; remaining
name 'ConsignmentEntityBean.jar#Consignments/local-home'
I think the problem may occur in deployment/configuration. Since the problem is
very urgent, anyone can help me? To all developers, How do you package/deploy
Entity Bean in Integration Server?
Thx,
PhilipI solved this.
Since I was testing the action code only, I didn't define a navigation entry corresponding to the action string returned for this button:
<h:commandButton value="Add" style="height:21px; width:51px;font-size:8pt; font-color: black;" action="#{resourceBean.addAction}">
</h:commandButton>After I added a nav definition, it worked. I don't know why at this point. I suspect a key step in the lifecycle was pre-empted...someone else can probably explain why. If I get a chance to research it after I'm done with my project, I'll update this post.
Thanks.
-L -
Strange behavior with entity beans and servlets in a cluster
We have 2 WebLogic 4.5.1 servers in a cluster with none of the Service
Packs installed. When a client uses the deployed entity beans or
servlets they work every other time. The times they do not work nothing
happens. No exceptions, no responses to the client ( i.e. HTTP 404s ),
nothing. I suspect something in the cluster setup since we do not have
these same problems on non-clustered entity beans or servlets. We have
made sure all the entity beans have the Shared Database flag set on and
added the delayUpdatesUntilEndOfTx false to the enviroment of the DD.
That didn't fix the problem. Any ideas?
Thanks in advance,
Dallas Dempsey
DEM - Houston, TX
Do you have log files?
- Prasad
Chris Dempsey wrote:
> We have 2 WebLogic 4.5.1 servers in a cluster with none of the Service
> Packs installed. When a client uses the deployed entity beans or
> servlets they work every other time. The times they do not work nothing
> happens. No exceptions, no responses to the client ( i.e. HTTP 404s ),
> nothing. I suspect something in the cluster setup since we do not have
> these same problems on non-clustered entity beans or servlets. We have
> made sure all the entity beans have the Shared Database flag set on and
> added the delayUpdatesUntilEndOfTx false to the enviroment of the DD.
> That didn't fix the problem. Any ideas?
>
> Thanks in advance,
> Dallas Dempsey
> DEM - Houston, TX
Maybe you are looking for
-
Problem with Serial Number (me=idiot)
I am one of the stupid who bought a Master Collection on eBay (looked pretty good). I installed it and it worked for a while. (I later found out from a "techie" friend that it changed something called a host file. Anyway, I got a virus that also chan
-
Precondition Voileted while calling on FM in HR
Hi Expetrs , I am working on HR module . i created one FM to upload data into the HR infotypes . In my methods from WDA i called this FM . But i am getting the error . i am givng the error discription . It is very urjent for me . The following error
-
New to itunes & have questions...
Just bought an ipod 30g video. LOVE IT! and itunes is good software once i figure out the little things. I've been using Musicmatch Jukebox, and Winamp pro for several years, neither are equiped to deal with the ipod. Is there a way to "refresh" or "
-
Account Determination - Delivery Order Confirmation Process
Hi Experts, How the Account determination will happen in the Delivery Order Confirmation process. Is the any Account determination analysis tool available to check the same ? Regards Prasath
-
Canon MG7100 not seen on network
Worked fine for months then non-specific problems with HH5 like drop outs which now intermittent. Pinter says connected to access point and correct SSID seen but can't be seen on laptop or any other connected device and not seen on home network devic