- This topic has 1 reply, 2 voices, and was last updated 18 years, 4 months ago by
Riyad Kalla.
-
AuthorPosts
-
rao533MemberHi,
i have one bmp bean. i am trying to deploy in weblogic. but its giving the error like……… iam not able to understand where can i getting from that error..the error is
————— nested within: ——————
weblogic.management.ManagementException: – with nested exception:
[weblogic.management.ApplicationException:
Exception:weblogic.management.ApplicationException: prepare failed for J2EEBMP
Module: J2EEBMP Error: Exception preparing module: EJBModule(J2EEBMP,status=NEW)Unable to deploy EJB: J2EEBMP from J2EEBMP:
In EJB Account, method getAccountID() defined in the remote interface either does not exist in the bean class, or it is not a public method. Each method in the remote interface must have a corresponding public method in the bean class.
In EJB Account, method setAccountID(java.lang.String) defined in the remote interface either does not exist in the bean class, or it is not a public method. Each method in the remote interface must have a corresponding public method in the bean class.
at weblogic.ejb20.compliance.EJBComplianceChecker.check(EJBComplianceChecker.java:268)
at weblogic.ejb20.compliance.EJBComplianceChecker.checkDeploymentInfo(EJBComplianceChecker.java:232)
at weblogic.ejb20.ejbc.EJBCompiler.complianceCheckJar(EJBCompiler.java:810)
at weblogic.ejb20.ejbc.EJBCompiler.checkCompliance(EJBCompiler.java:766)
at weblogic.ejb20.ejbc.EJBCompiler.doCompile(EJBCompiler.java:200)
at weblogic.ejb20.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:476)
at weblogic.ejb20.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:407)
at weblogic.ejb20.deployer.EJBDeployer.runEJBC(EJBDeployer.java:493)
at weblogic.ejb20.deployer.EJBDeployer.compileJar(EJBDeployer.java:763)
at weblogic.ejb20.deployer.EJBDeployer.compileIfNecessary(EJBDeployer.java:701)
at weblogic.ejb20.deployer.EJBDeployer.prepare(EJBDeployer.java:1277)
at weblogic.ejb20.deployer.EJBModule.prepare(EJBModule.java:477)
at weblogic.j2ee.J2EEApplicationContainer.prepareModule(J2EEApplicationContainer.java:2962)
at weblogic.j2ee.J2EEApplicationContainer.prepareModules(J2EEApplicationContainer.java:1534)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1188)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1031)
at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.prepareContainer(SlaveDeployer.java:2602)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.createContainer(SlaveDeployer.java:2552)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(SlaveDeployer.java:2474)
at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:798)
at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDeployer.java:507)
at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:465)
at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:25)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)weblogic.ejb20.compliance.ComplianceException: In EJB Account, method getAccountID() defined in the remote interface either does not exist in the bean class, or it is not a public method. Each method in the remote interface must have a corresponding public method in the bean class.
at weblogic.ejb20.compliance.EJBObjectClassChecker.checkInterfaceBusinessMethodsMatchBeanMethods(EJBObjectClassChecker.java:279)
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 weblogic.ejb20.compliance.EJBComplianceChecker.check(EJBComplianceChecker.java:278)
at weblogic.ejb20.compliance.EJBComplianceChecker.checkDeploymentInfo(EJBComplianceChecker.java:232)
at weblogic.ejb20.ejbc.EJBCompiler.complianceCheckJar(EJBCompiler.java:810)
at weblogic.ejb20.ejbc.EJBCompiler.checkCompliance(EJBCompiler.java:766)
at weblogic.ejb20.ejbc.EJBCompiler.doCompile(EJBCompiler.java:200)
at weblogic.ejb20.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:476)
at weblogic.ejb20.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:407)
at weblogic.ejb20.deployer.EJBDeployer.runEJBC(EJBDeployer.java:493)
at weblogic.ejb20.deployer.EJBDeployer.compileJar(EJBDeployer.java:763)
at weblogic.ejb20.deployer.EJBDeployer.compileIfNecessary(EJBDeployer.java:701)
at weblogic.ejb20.deployer.EJBDeployer.prepare(EJBDeployer.java:1277)
at weblogic.ejb20.deployer.EJBModule.prepare(EJBModule.java:477)
at weblogic.j2ee.J2EEApplicationContainer.prepareModule(J2EEApplicationContainer.java:2962)
at weblogic.j2ee.J2EEApplicationContainer.prepareModules(J2EEApplicationContainer.java:1534)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1188)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1031)
at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.prepareContainer(SlaveDeployer.java:2602)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.createContainer(SlaveDeployer.java:2552)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(SlaveDeployer.java:2474)
at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:798)
at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDeployer.java:507)
at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:465)
at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:25)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)weblogic.ejb20.compliance.ComplianceException: In EJB Account, method setAccountID(java.lang.String) defined in the remote interface either does not exist in the bean class, or it is not a public method. Each method in the remote interface must have a corresponding public method in the bean class.
at weblogic.ejb20.compliance.EJBObjectClassChecker.checkInterfaceBusinessMethodsMatchBeanMethods(EJBObjectClassChecker.java:279)
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 weblogic.ejb20.compliance.EJBComplianceChecker.check(EJBComplianceChecker.java:278)
at weblogic.ejb20.compliance.EJBComplianceChecker.checkDeploymentInfo(EJBComplianceChecker.java:232)
at weblogic.ejb20.ejbc.EJBCompiler.complianceCheckJar(EJBCompiler.java:810)
at weblogic.ejb20.ejbc.EJBCompiler.checkCompliance(EJBCompiler.java:766)
at weblogic.ejb20.ejbc.EJBCompiler.doCompile(EJBCompiler.java:200)
at weblogic.ejb20.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:476)
at weblogic.ejb20.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:407)
at weblogic.ejb20.deployer.EJBDeployer.runEJBC(EJBDeployer.java:493)
at weblogic.ejb20.deployer.EJBDeployer.compileJar(EJBDeployer.java:763)
at weblogic.ejb20.deployer.EJBDeployer.compileIfNecessary(EJBDeployer.java:701)
at weblogic.ejb20.deployer.EJBDeployer.prepare(EJBDeployer.java:1277)
at weblogic.ejb20.deployer.EJBModule.prepare(EJBModule.java:477)
at weblogic.j2ee.J2EEApplicationContainer.prepareModule(J2EEApplicationContainer.java:2962)
at weblogic.j2ee.J2EEApplicationContainer.prepareModules(J2EEApplicationContainer.java:1534)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1188)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1031)
at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.prepareContainer(SlaveDeployer.java:2602)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.createContainer(SlaveDeployer.java:2552)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(SlaveDeployer.java:2474)
at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:798)
at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDeployer.java:507)
at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:465)
at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:25)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)]
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(SlaveDeployer.java:2491)
at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:798)
at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDeployer.java:507)
at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:465)
at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:25)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
>As per log file .. i was checked out the files all are fine …
my ejb-jar.xml is
<entity >
<description><![CDATA[Description for Account]]></description>
<display-name>Name for Account</display-name><ejb-name>Account</ejb-name>
<home>com.app.j2ee.bmp.interfaces.AccountHome</home>
<remote>com.app.j2ee.bmp.interfaces.Account</remote>
<local-home>com.app.j2ee.bmp.interfaces.AccountLocalHome</local-home>
<local>com.app.j2ee.bmp.interfaces.AccountLocal</local>
<ejb-class>com.app.j2ee.bmp.ejb.AccountBean</ejb-class>
<persistence-type>Bean</persistence-type>
<prim-key-class>com.app.j2ee.bmp.interfaces.AccountPK</prim-key-class>
<reentrant>False</reentrant>
<resource-ref>
<res-ref-name>jdbc/ejbPool</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</entity><container-transaction>
<method>
<ejb-name>Account</ejb-name>
<method-intf>Local</method-intf>
<method-name>*</method-name>
</method>
<method>
<ejb-name>Account</ejb-name>
<method-intf>Remote</method-intf>
<method-name>*</method-name>
</method>
<trans-attribute>Required</trans-attribute>
</container-transaction>
</assembly-descriptor>these are the tags in ejb-jar.xml
weblogic = 8.1
java = 1.4
oracle 8i
myecipse = 4.1
please give me the suggestion what can i do to solve this problemthanks in advance
ram
Riyad KallaMemberRam,
The error is pretty clear cut, it says that you have a set of methods defined in your remote interface (get/setAccountID) that is not defined in your bean class or is not public. Can you post the code for your interface and bean classes? -
AuthorPosts