facebook

Error while deploying the EJB applicaion in weblogic

  1. MyEclipse Archived
  2.  > 
  3. Bugs
Viewing 2 posts - 1 through 2 (of 2 total)
  • Author
    Posts
  • #263662 Reply

    rao533
    Member

    Hi,
    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 problem

    thanks in advance
    ram

    #263769 Reply

    Riyad Kalla
    Member

    Ram,
    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?

Viewing 2 posts - 1 through 2 (of 2 total)
Reply To: Error while deploying the EJB applicaion in weblogic

You must be logged in to post in the forum log in