Remove fails for entity ejb

Hi
remove is failing on my entity beans. The exception I get is
javax.ejb.EJBException: Error saving state: ORA-01407: cannot update ("AXIS_LIVE_DBO"."MEMBER_LOCATIONS"."MEMBER_REF") to NULL
MEMBER_REF is the primary key of the table and cannot be null. Does OC4J need the primary key field to be nullable?

I am having the same issue. I currently have a M:M relationship that is bombing out on a remove call. The code seems to work fine on 9.0.4.1.0 standalone version on Windows. When I migrate the code to our 10G linux box, which is version 9.0.4.0.0. running the latest patch, I get the following error. I also tried the code on version 10.1.2.0.0 and I get the same error. If I change the foreign key columns to nullable the remove works file. Making the foreign keys nullable defeats the purpose of having data integrity. I have also enclosed the SQL generated by the container.
Error in Requisition Model removeVendor:
com.evermind.server.rmi.OrionRemoteException: Transaction was rolled back: javax.ejb.EJBException: Error saving state: ORA-01407: cannot update ("FINANCEDEV"."REQ_SUGG_VENDOR"."RQ_ID") to NULL
     at RequisitionSession_StatelessSessionBeanWrapper5.removeVendor(RequisitionSession_StatelessSessionBeanWrapper5.java:724)
     at edu.suny.sysadm.finance.procurement.model.RequisitionModel.removeVendor(RequisitionModel.java:382)
     at edu.suny.sysadm.finance.procurement.struts.action.VendorRemoveAction.execute(VendorRemoveAction.java:53)
     at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
     at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
     at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
     at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
     at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:765)
     at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:317)
     at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:793)
     at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:208)
     at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:125)
     at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
     at java.lang.Thread.run(Thread.java:534)
Works
1109613632663|16|3|statement|update REQ_SUGG_VENDOR set RQ_ID = ? where RQ_SUGG_VND_ID = ?|update REQ_SUGG_VENDOR set RQ_ID = 1422 where RQ_SUGG_VND_ID = 374
Does not work.
1109613500250|92|2|statement|update REQ_SUGG_VENDOR set RQ_ID = ? where RQ_SUGG_VND_ID = ?|update REQ_SUGG_VENDOR set RQ_ID = '' where RQ_SUGG_VND_ID = 370

Similar Messages

  • Remove methods in Entity EJBs

    Hi,
    I have a entity EJB with following methods:
    findByPrimaryKey(PK)
    create(PK)
    get and set methods
    I wanna add a remove method which will take the PK and delete the record for
    me.
    Please tell me the changes I have to incorporate. and How do i do it. I am using VA 3.5 and WAS 3.5
    Thanx & Regards
    Ravi Mittal

    hi,
    after adding access bean & generating deployed code you have to add remove method in Access Bean by yourself. remove(object) is in EJBhome interface.
    you have to pass object of key class. so add empty remove() in acees bean. instantiate ur key class there & call remove(keclassobject) method. I think it will help you.
    -priya

  • Deployment plan fails for weblogic-ejb-jar.xml

    FILE FOR PLAN TO ACT ON:
    application.ear\ReferenceTableSession.jar\META-INF\weblogic-ejb-jar.xml
    <?xml version="1.0" encoding="utf-8"?>
    <weblogic-ejb-jar xmlns="http://www.bea.com/ns/weblogic/10.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/10.0 http://www.bea.com/ns/weblogic/10.0/weblogic-ejb-jar.xsd">
    <weblogic-enterprise-bean>
    <ejb-name>referencetablesession</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-clustering>
    </stateless-session-descriptor>
    <transaction-descriptor>
    <trans-timeout-seconds>150</trans-timeout-seconds>
    </transaction-descriptor>
    <enable-call-by-reference>true</enable-call-by-reference>
    <jndi-name>XYZ_ejb/ProviderMaintSvc/referencetablesession</jndi-name>
    </weblogic-enterprise-bean>
    <transaction-isolation>
    <isolation-level>TransactionReadCommitted</isolation-level>
    <method>
    <ejb-name>referencetablesession</ejb-name>
    <method-name>*</method-name>
    </method>
    </transaction-isolation>
    </weblogic-ejb-jar>
    DEPLOYMENT PLAN:
    <?xml version='1.0' encoding='utf-8'?>
    <deployment-plan xmlns="http://www.bea.com/ns/weblogic/deployment-plan"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/deployment-plan http://www.bea.com/ns/weblogic/deployment-plan/1.0/deployment-plan.xsd">
    <application-name>application.ear</application-name>
    <variable-definition>
    <variable>
    <name>VAR_referencetablesession</name>
    <value>ejb/ProviderClaimOnlineSvc/referencetablesession</value>
    </variable>
    </variable-definition>
    <module-override>
    <module-name>ReferenceTableSession.jar</module-name>
    <module-type>ejb</module-type>
    <module-descriptor external="false">
    <root-element>weblogic-ejb-jar</root-element>
    <uri>META-INF/weblogic-ejb-jar.xml</uri>
    <variable-assignment>
    <name>VAR_referencetablesession</name>
         <xpath>/weblogic-ejb-jar/weblogic-enterprise-bean/\[ejb-name="referencetablesession"\]/jndi-name</xpath>
    <operation>replace</operation>
    </variable-assignment>
    </module-descriptor>
    </module-override>
    <config-root>servers/AdminServer/upload</config-root>
    </deployment-plan>
    ERROR FROM CONSOLE:
    Message icon - Error An error occurred during activation of changes, please see the log for details.
    Message icon - Error Exception preparing module: EJBModule(ReferenceTableSession.jar) [EJB:011023]An error occurred while reading the deployment descriptor. The error was: Unmarshaller failed.
    Message icon - Error Bean already exists: "[email protected]f2(/WeblogicEnterpriseBeans[referencetablesession])"
    ERROR FROM LOG:
    <Oct 2, 2009 1:08:25 PM CDT> <Error> <J2EE> <BEA-160197> <Unable to load descriptor servers/ms34/tmp/_WL_user/ProviderClaimOnlineSvc/y1anoa/ReferenceTableSession.jar/META-INF/weblogic-ejb-jar.xml of module ReferenceTableSession.jar. The error is weblogic.descriptor.DescriptorException: Unmarshaller failed
    at weblogic.descriptor.internal.MarshallerFactory$1.createDescriptor(MarshallerFactory.java:152)
    at weblogic.descriptor.BasicDescriptorManager.createDescriptor(BasicDescriptorManager.java:306)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.getDescriptorBeanFromReader(AbstractDescriptorLoader2.java:788)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.mergeDescriptorBeanWithPlan(AbstractDescriptorLoader2.java:703)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBean(AbstractDescriptorLoader2.java:776)
    at weblogic.ejb.spi.EjbJarDescriptor.parseWeblogicEjbJarBean(EjbJarDescriptor.java:160)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.processWLEjbJarXMLWithSchema(EjbDescriptorReaderImpl.java:719)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.parseWLDD(EjbDescriptorReaderImpl.java:541)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.processWeblogicEjbJarXML(EjbDescriptorReaderImpl.java:380)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:191)
    at weblogic.ejb.spi.EjbDescriptorFactory.createReadOnlyDescriptorFromJarFile(EjbDescriptorFactory.java:93)
    at weblogic.ejb.container.deployer.EJBModule.loadEJBDescriptor(EJBModule.java:1198)
    at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:380)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:93)
    at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:387)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:58)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:42)
    at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:615)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:191)
    at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:16)
    at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:155)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
    at weblogic.deploy.internal.targetserver.operations.RedeployOperation.createAndPrepareContainer(RedeployOperation.java:98)
    at weblogic.deploy.internal.targetserver.operations.RedeployOperation.doPrepare(RedeployOperation.java:122)
    Thanks,
    Rob
    Edited by: user11337024 on Oct 5, 2009 2:31 PM

    FILE FOR PLAN TO ACT ON:
    application.ear\ReferenceTableSession.jar\META-INF\weblogic-ejb-jar.xml
    <?xml version="1.0" encoding="utf-8"?>
    <weblogic-ejb-jar xmlns="http://www.bea.com/ns/weblogic/10.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/10.0 http://www.bea.com/ns/weblogic/10.0/weblogic-ejb-jar.xsd">
    <weblogic-enterprise-bean>
    <ejb-name>referencetablesession</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-clustering>
    </stateless-session-descriptor>
    <transaction-descriptor>
    <trans-timeout-seconds>150</trans-timeout-seconds>
    </transaction-descriptor>
    <enable-call-by-reference>true</enable-call-by-reference>
    <jndi-name>XYZ_ejb/ProviderMaintSvc/referencetablesession</jndi-name>
    </weblogic-enterprise-bean>
    <transaction-isolation>
    <isolation-level>TransactionReadCommitted</isolation-level>
    <method>
    <ejb-name>referencetablesession</ejb-name>
    <method-name>*</method-name>
    </method>
    </transaction-isolation>
    </weblogic-ejb-jar>
    DEPLOYMENT PLAN:
    <?xml version='1.0' encoding='utf-8'?>
    <deployment-plan xmlns="http://www.bea.com/ns/weblogic/deployment-plan"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/deployment-plan http://www.bea.com/ns/weblogic/deployment-plan/1.0/deployment-plan.xsd">
    <application-name>application.ear</application-name>
    <variable-definition>
    <variable>
    <name>VAR_referencetablesession</name>
    <value>ejb/ProviderClaimOnlineSvc/referencetablesession</value>
    </variable>
    </variable-definition>
    <module-override>
    <module-name>ReferenceTableSession.jar</module-name>
    <module-type>ejb</module-type>
    <module-descriptor external="false">
    <root-element>weblogic-ejb-jar</root-element>
    <uri>META-INF/weblogic-ejb-jar.xml</uri>
    <variable-assignment>
    <name>VAR_referencetablesession</name>
         <xpath>/weblogic-ejb-jar/weblogic-enterprise-bean/\[ejb-name="referencetablesession"\]/jndi-name</xpath>
    <operation>replace</operation>
    </variable-assignment>
    </module-descriptor>
    </module-override>
    <config-root>servers/AdminServer/upload</config-root>
    </deployment-plan>
    ERROR FROM CONSOLE:
    Message icon - Error An error occurred during activation of changes, please see the log for details.
    Message icon - Error Exception preparing module: EJBModule(ReferenceTableSession.jar) [EJB:011023]An error occurred while reading the deployment descriptor. The error was: Unmarshaller failed.
    Message icon - Error Bean already exists: "[email protected]f2(/WeblogicEnterpriseBeans[referencetablesession])"
    ERROR FROM LOG:
    <Oct 2, 2009 1:08:25 PM CDT> <Error> <J2EE> <BEA-160197> <Unable to load descriptor servers/ms34/tmp/_WL_user/ProviderClaimOnlineSvc/y1anoa/ReferenceTableSession.jar/META-INF/weblogic-ejb-jar.xml of module ReferenceTableSession.jar. The error is weblogic.descriptor.DescriptorException: Unmarshaller failed
    at weblogic.descriptor.internal.MarshallerFactory$1.createDescriptor(MarshallerFactory.java:152)
    at weblogic.descriptor.BasicDescriptorManager.createDescriptor(BasicDescriptorManager.java:306)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.getDescriptorBeanFromReader(AbstractDescriptorLoader2.java:788)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.mergeDescriptorBeanWithPlan(AbstractDescriptorLoader2.java:703)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescriptorBean(AbstractDescriptorLoader2.java:776)
    at weblogic.ejb.spi.EjbJarDescriptor.parseWeblogicEjbJarBean(EjbJarDescriptor.java:160)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.processWLEjbJarXMLWithSchema(EjbDescriptorReaderImpl.java:719)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.parseWLDD(EjbDescriptorReaderImpl.java:541)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.processWeblogicEjbJarXML(EjbDescriptorReaderImpl.java:380)
    at weblogic.ejb.container.dd.xml.EjbDescriptorReaderImpl.createReadOnlyDescriptorFromJarFile(EjbDescriptorReaderImpl.java:191)
    at weblogic.ejb.spi.EjbDescriptorFactory.createReadOnlyDescriptorFromJarFile(EjbDescriptorFactory.java:93)
    at weblogic.ejb.container.deployer.EJBModule.loadEJBDescriptor(EJBModule.java:1198)
    at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:380)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:93)
    at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:387)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:58)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:42)
    at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:615)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:191)
    at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:16)
    at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:155)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
    at weblogic.deploy.internal.targetserver.operations.RedeployOperation.createAndPrepareContainer(RedeployOperation.java:98)
    at weblogic.deploy.internal.targetserver.operations.RedeployOperation.doPrepare(RedeployOperation.java:122)
    Thanks,
    Rob
    Edited by: user11337024 on Oct 5, 2009 2:31 PM

  • Backup Failed for last two days

    Dear All,
    We are getting Backup failed for last 2 days and it throws below error .
    BR0280I BRBACKUP time stamp: 2011-12-09 19.27.17
    BR0312E Database instance SRX shutdown during online backup
    BR0252W Function remove() failed for 'X:\oracle\SRX\sapbackup\.behkdcyf.013' at location BrCleanup-6
    BR0253W errno 13: Permission denied
    BR0252W Function remove() failed for 'X:\oracle\SRX\sapbackup\.behkdcyf.014' at location BrCleanup-6
    BR0253W errno 13: Permission denied
    BR0115I Compression rate for all files 4.4881:1
    BR0280I BRBACKUP time stamp: 2011-12-09 19.27.19
    BR0301W SQL error -24909 at location BrDbDisconnect-1, SQL statement:
    '/* BRBACKUP */ ALTER TABLESPACE "PSAPSR3DB" END BACKUP'
    'COMMIT RELEASE'
    ORA-24909: call in progress. Current operation cancelled
    BR0327W Disconnect from database instance SRX failed
    BR0280I BRBACKUP time stamp: 2011-12-09 19.29.45
    BR0317I 'Alter tablespace PSAPSR3 end backup' successful
    BR0280I BRBACKUP time stamp: 2011-12-09 19.30.19
    BR0317I 'Alter tablespace PSAPSR3700 end backup' successful
    BR0280I BRBACKUP time stamp: 2011-12-09 19.30.19
    BR0301E SQL error -1142 at location BrBackAlter-3, SQL statement:
    '/* BRBACKUP */ ALTER TABLESPACE "PSAPSR3DB" END BACKUP'
    ORA-01142: cannot end online backup - none of the files are in backup
    BR0280I BRBACKUP time stamp: 2011-12-09 19.30.19
    BR0318E 'Alter tablespace PSAPSR3DB end backup' failed
    BR0280I BRBACKUP time stamp: 2011-12-09 19.30.29
    BR0317I 'Alter tablespace PSAPUNDO end backup' successful
    BR0056I End of database backup: behkdcyf.and 2011-12-09 19.27.18
    BR0280I BRBACKUP time stamp: 2011-12-09 19.30.34
    BR0054I BRBACKUP terminated with errors
    Note :   I have checked till now SAP is not down (ST02 - Startup:     14.09.2011 13:18:46)
    Kindly suggest to resolve the issue as well what was the reason behind ...
    Thanks

    Hi ,
    Thanks for ur valuable reply ..
    I have already checked Tablespace status in DB02old , all the Table space are ONLINE , NOT ACTIVE .
    Tablespace                       Size (kb)      Free (kb)      Used (%)   Tab/ind    Extents    AutoExt (kb)   Used (%)   Status     Backup
    PSAPSR3                           35.538.944      5.400.960         84     51.141     70.617    55.320.576          54    ONLINE     NOT ACTIVE
    PSAPSR3700                        21.008.384      1.131.648         94        916      6.730    27.164.672          73    ONLINE     NOT ACTIVE
    PSAPSR3DB                          5.816.320      3.763.328         35      3.091      4.581    10.485.760          20    ONLINE     NOT ACTIVE
    PSAPSR3USR                            20.480         20.032          2          6          6    2.097.152            0    ONLINE     NOT ACTIVE
    PSAPTEMP                             901.120        900.096          0          0          0    2.097.152            0    ONLINE     NOT ACTIVE
    PSAPUNDO                           7.740.352      6.877.824         11         19        726    Off                 11    ONLINE     NOT ACTIVE
    PSAPYBMCD                            901.120        678.144         24        302        798    2.097.152           11    ONLINE     NOT ACTIVE
    PSAPYBMCI                            901.120        758.208         15        371        912    2.097.152            7    ONLINE     NOT ACTIVE
    SYSAUX                               972.800        716.160         26      1.769      2.898    2.097.152           12    ONLINE     NOT ACTIVE
    SYSTEM                             1.177.600        724.480         38      1.226      2.413    5.242.880            9    ONLINE     NOT ACTIVE
    Kindly advise .
    Thanks

  • BR0252E Function remove() failed

    While trying to extend the tablespace (PSAPCRM), I encounter an error :
    BR1001I BRSPACE 7.00 (40)
    BR0252E Function remove() failed for '/oracle/SID/sapbackup/.user.pas' at location global_set-5
    BR0253E errno 13: Permission denied
    BR0700E Fatal errors occurred - terminating processing...
    BR1008I End of BRSPACE processing: seadhacx.log 2009-03-15 22.45.39
    BR0280I BRSPACE time stamp: 2009-03-15 22.45.39
    BR1007I BRSPACE terminated with errors
    Any clues pls ?
    Regards
    Shaji

    Hi Jacob,
    Can you tell us with which user you are running?
    I think there are some file permission are missing with that user id.
    Please follow SAP NOTE 113747 to give sufficiant access privillages for BRTOOLS.
    Regards
    Nick Loy

  • Is there an MBean for a deployed entity EJB?

    Hi,
    I need to access the method invocation times, availability, remove count, create count etc. of a deployed entity EJB through JMX MBean, in JBoss.
    I have deployed the entity bean and the stateless DAO bean that operates on the entity bean. I do find an MBean for this DAO in the JMX-console of JBoss, but not an MBean for the entity EJB.
    a) Why do I not find an MBean for the same?
    b) How is it possible to get the MBean created for the entity EJB?
    Speedy help solicited.
    Thanks a bunch in advance guys !

    When executing an operation via JMX using JConsole, I get the following error:
    Problem invoking getManifest : java.rmi.UnmarshallException: Error unmarshalling return: nested is: java.lang.ClassNotFoundException: foo.bar.InernalServiceException (no security manager: RMI class loader disabled)
    Code snippet:
    public ArrayList getManifest(String s) throws InternalServiceException, MBeanException{
    String path = ".\\foo_services.jar"; // Invalid path on purpose to test exception...
    File file = new File(path);
    FileInputStream fileInput;
    try {
    fileInput = new FileInputStream(file);
    } catch (FileNotFoundException e) {
    String msg = "The manifest file is not found in the given path";
    if (logger.isErrorEnabled()) logger.error(msg);
    throw new InternalServiceException(msg, ErrorConstants.JMX_FILE_NOT_FOUND);
    If I throw new RuntimeException(msg, e) instead of InternalServiceException(msg, ErrorConstants.JMX_FILE_NOT_FOUND), it works and I get the appropriate exception.
    What is the reason for this?

  • Re: junit test for entity beans ... ejb 3.0

    I'm confused. I'm trying to test my entity bean.
    I have:
    - an entity bean
    - a stateless session bean for accessing the entity bean (facade)
    - an interface for accessing the the stateless bean
    And I'm trying to write a JUnit test class to test this bean. However, I am uncertain as to how to test this (I'm new to EJB 3.0, JBoss and Eclipse).
    What would the JUnit test look like? I'm confused as to whether or not I should be injecting the interface/bean/what???
    I've tried several variations. I either get "NameNotFound" - not bound exceptions or Null pointer exceptions.
    What would the @EJB syntax look like or how would I do it through the context?
    For Example:
    @EJB private TestFacade myTest; //interface to stateless bean ?
    OR
    InitialContext ctx = new InitialContext();
    TestResultFacadeBean myTest = (TestResultFacadeBean) ctx.lookup("localTest");
    I'm confused at to which method I should be using and what object I should be accessing. If I could get either one to work, I'd be happy. :)
    How do I ensure my bean is deployed to the container? What do I need to do?
    If anyone has a simple example or explanation as to which method I should use and how to use it, I'd be very grateful.
    Thanks very much,
    LisaD

    OK, you need to have several layers of testing.
    Layer 0. Test the entity beans are deployable (more on this later). Basically, you need to know that all your annotations work. Things to watch out for are multiple @Id fields in one class or @EmbeddedID or @IdClass in conjuction with @ManyToOne, @ManyToMany, @OneToMany, @OneToOne and fun with @JoinTable, @JoinColumn and @JoinColumns. Once you know how these are supposed to work with the spec, it's not too bad to write it correctly each time. But there are some gotchas that will break things later on.
    Layer 1. Do the functions in the classes that don't depend on annotations work as expected. Typically, this is just going to be the getters and setters in your entity classes. Of course JUnit best practice says we don't bother testing functions that look like:
    public T getX() {
    return this.x;
    or
    public void setX(T x) {
    this.x = x;
    as there is nothing that can go wrong with them. So in that case, your level 1 tests will just be initial values specified from constructors and verifying that the non-get/set pairs work, and that the getters you have tagged @Transient work (because you've likely put some logic in them)
    Layer 2. Test the session bean methods that don't require injection to work.
    Layer 3. Test the session bean methods that require injection (Mock Objects). Simulate the injection for yourself, injecting Mock Objects for the entity manager. Then you can confirm that the correct methods are being called in the correct sequences, etc.
    [Note this may require some skill in designing the mock.  I'm working on developing my own entitymanager mock, and if it looks usefull I'll release it to the world.
    Layer 4. Test the session bean methods that require injection (Real entity manager) (See Layer 0)
    For this you will need an out of container persistence implementation.  Currently Hibernate and Glassfish provide beta versions.  You will need a different persistence.xml file that lists all the entities.  You will have to use reflection to inject the entity manager(s) that you create from an entity manager factory unless you provide a constructor that takes an EntityManager as a parameter.  You may need to use reflection to call any @PostConstruct method if you made it private.
    Layer 5. Navigate the relationships in the objects returned from Layer 4 using a database that has been loaded with test data.
    I am currently using Layers 0, 1, 2 & 4 to test my session beans and entity beans.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • Error while using LiveCycle java APIs with Http servlets:"Remote EJBObject lookup failed for ejb/Inv

    Hi all,
    When i try to run more than one servelt of the Quick Start samples that using Livecycle Java APIs and i get an error of "Remote EJBObject lookup failed for ejb/Invocation provider" from any servelt i run.
    I try some Quick samples which is not servelts (java class) and it works fine, which makes me sure that my connection properties is true.
    Environment:
    The LiveCycle is based on "Websphere v6.1", and i use "Eclipse Platform
    Version: 3.4.1".
    i install "tomcat 5.5.17" to test the servelts in developing time through Eclipse.(only for test in developing time not for deploy on )
    The Jars i added in the classpath:
    adobe-forms-client.jar
    adobe-livecycle-client.jar
    adobe-usermanager-client.jar
    adobe-utilities.jar
    ejb.jar
    j2ee.jar
    ecutlis.jar
    com.ibm.ws.admin.client_6.1.0.jar
    com.ibm.ws.webservices.thinclient_6.1.0.jar
    server.jar
    utlis.jar
    wsexception.jar
    My code is :
    Properties ConnectionProps = new Properties();
    ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_DEFAULT_EJB_ENDPOINT, "iiop://localhost:2809");
    ConnectionProps.setProperty ServiceClientFactoryProperties.DSC_TRANSPORT_PROTOCOL,ServiceClientFactoryProperties.DSC_ EJB_PROTOCOL);
    ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_SERVER_TYPE,ServiceClientFa ctoryProperties.DSC_WEBSPHERE_SERVER_TYPE);
    ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_USERNAME, "Administrator");
    ConnectionProps.setProperty(ServiceClientFactoryProperties.DSC_CREDENTIAL_PASSWORD, "password");
    ConnectionProps.setProperty("java.naming.factory.initial", "com.ibm.ws.naming.util.WsnInitCtxFactory");
    //Create a ServiceClientFactory object
    ServiceClientFactory myFactory = ServiceClientFactory.createInstance(ConnectionProps);
    //Create a FormsServiceClient object
    FormsServiceClient formsClient = new FormsServiceClient(myFactory);
    //Get Form data to pass to the processFormSubmission method
    Document formData = new Document(req.getInputStream());
    //Set run-time options
    RenderOptionsSpec processSpec = new RenderOptionsSpec();
    processSpec.setLocale("en_US");
    //Invoke the processFormSubmission method
    FormsResult formOut = formsClient.processFormSubmission(formData,"CONTENT_TYPE=application/pdf&CONTENT_TYPE=app lication/vnd.adobe.xdp+xml&CONTENT_TYPE=text/xml", "",processSpec);
    List fileAttachments = formOut.getAttachments();
    Iterator iter = fileAttachments.iterator();
    int i = 0 ;
    while (iter.hasNext()) {
    Document file = (Document)iter.next();
    file.copyToFile(new File("C:\\Adobe\\tempFile"+i+".jp i++;
    short processState = formOut.getAction();
    ...... (To the end of the sample)
    My Error was:
    com.adobe.livecycle.formsservice.exception.ProcessFormSubmissionException: ALC-DSC-031-000: com.adobe.idp.dsc.net.DSCNamingException: Remote EJBObject lookup failed for ejb/Invocation provider
    at com.adobe.livecycle.formsservice.client.FormsServiceClient.processFormSubmission(FormsSer viceClient.java:416)
    at HandleData.doPost(HandleData.java:62)
    at HandleData.doGet(HandleData.java:31)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.j ava:252)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
    a

    I assume here that your application is deployed on a different physical machine of where LCES is deployed and running.
    Do the following test:
    - Say that LCES is deployed on machine1 and your application is deployed on machine2. Ping machine1 from machine2 and note the ip address.
    - Ping machine1 from machine1 and note the ip address.
    The two pings should match.
    - Ping machine2 from machine1 and note the ip address.
    - Ping machine2 from machine2 and note the ip address.
    The two pings should match.
    Usually this kind of error would happen if your servers have internal and external ip addresses.

  • Apple mail problem message reads - Account removal failed with error: "The operation couldn't be completed. Unable to find an account for the UID given.".

    Account removal failed with error: “The operation couldn’t be completed. Unable to find an account for the UID given.”.   - trying to remove account but get this message please help

    Try to remove the account in the Internet Accounts preference pane.

  • Failed to lookup home for other EJB in ejbCreate()

    I am trying to lookup the home for other EJB deployed on separate weblogic server in ejbCreate() of my stateless session bean.But its not doing so and doesnt throw any exception either.Can anybody explain why?

    I am having the same problem too....I am using WL8.1 SP3.
    I am following a Service Manager pattern which works as a Service Locator instantiating remote EJBs on a different domain.
    Since I am located on Server A, I use reflection to get the EJBHome located on Server B.
    I successfully get the reference to the EJBHome successfully with my InitialContext().
    When I try to invoke the create() method of the EJBHome that I got using Reflection, I get the following exception:
    InvocationTargetException - Target is [Could not generate mx.com.inbursa.sii.estructura.corporativa.invoker.SynchronousCommandInvokerXXXXX due to the following error: weblogic.utils.AssertionError ****** ASSERTION FAILED [InvocationTargetException - Target is [NoClassDefFoundError in class com.esiglo.comun.exception.CommandException]]
    Note that I wrote it as I remember it (I will send the exact exception as soon as I can).
    It seems to me that the InvocationTargetException is generated when trying to create the EJB on Server B container, as I show it is done by reflection, but it does not recognize the CommandException class. It is strange since I made sure that the JAR which contains the CommandException class is deployed in the EAR on server B.
    Any ideas around this issue?
    Regards
    Tomas Flores

  • Why BC4J if Entity EJB is available

    Hi,
    I've been working on learning the BC4J framework for the last couple of weeks and initially I was very pleasently surprised - it really looked like this was the way forward. BUT - now that I've matured past the 'trivial applications make me happy' stage, I feel like I've hit a brick wall - something as simple as adding a (row - or should I say object) method and actually getting it called from a client application seems to involve hours browsing the 'not so helpful' documentation, and it still does not work. So now I'm forced to rethink this approach and the recent annoucement of EJB 1.1 support in 8.1.7 made me pose the question:
    What is BC4J except an attempt to patch up the missing entity bean support ? So far I've come up short and I would like to ask if there are others who think the same (or not - I'm just trying to get the picture so to speak :-)).
    It will also be quite simpel to program the buisness classes in Java, class test them and then deploy - generating the home and remote interfaces automatically. So I fail to see what BC4J gives me that I do not get by going the entity EJB route.
    What do you guys think - am I just rambling ?
    br
    Jacob

    For general advice see Troubleshooting issues with iTunes for Windows updates.
    The steps in the second box are a guide to removing everything related to iTunes and then rebuilding it which is often a good starting point unless the symptoms indicate a more specific approach. Review the other boxes and the list of support documents further down page in case one of them applies.
    Your library should be unaffected by these steps but there is backup and recovery advice elsewhere in the user tip.
    If you've already tried a complete uninstall and reinstall try opening iTunes in safe mode (hold down CTRL+SHIFT) as you start iTunes, then going to Edit > Preferences > Store and turning off Show iTunes in the Cloud purchases. You may find iTunes will now start normally.
    tt2

  • Clustering read-only bean-managed entity ejbs

              I'm designing a data caching approach that relies on using read-only entity ejbs with bean-managed persistence. My design is based on the fact that WebLogic blocks on entity bean access by concurrent users for a given bean instance (unique primary key). I would like to keep only one entity bean instance active(timeoutSetting=0) for eacy primary key for all users to share. That way I only have to hit the database one time to initially populate data in the entity bean. I'm worried about this approach in a WebLogic clustered environment. From reading notes in this newsgroup and other doc, it appears that WebLogic might not use one instance of the entity bean (based upon unique primary key) in a clustered environment. Is that true (that being multiple users could get their own instance of the entity bean with the same primary key)?
              Thanks,
              Bryan
              

    Typically, the read-write EJBs are on each WL server instance, so there is
              no remote invocation -- it is all done by reference.
              Cameron Purdy
              Tangosol, Inc.
              http://www.tangosol.com
              +1.617.623.5782
              WebLogic Consulting Available
              "Bryan Dixon" <[email protected]> wrote in message
              news:[email protected]...
              >
              > I guess I'm confused about read-write (not read-only) entity beans being
              pinned or not. This is from WebLogic 5.1 EJB doc:
              > "read-write entity EJBs do not use a clustered EJBObject stub; a client's
              method calls to a particular EJB always go to a single WebLogic Server
              instance. If the server that a client is using fails, the client must
              re-find the entity EJB using the cluster-aware home stub."
              >
              > Doesn't that mean the entity bean instance for a primary key is pinned to
              a single WebLogic Server instance? Maybe I'm just misunderstanding
              terminology about what a "particular EJB" is - I was thinking it is an
              entity bean instance for a unique primary key.
              >
              > Thanks,
              > Bryan
              >
              >
              > "Cameron Purdy" <[email protected]> wrote:
              > >>I was thinking that read-write entity beans were pinned.
              > >
              > >Not unless you pin them. Basically, that means that the JAR/XML that
              > >contains/specifies the EJB only is on one server.
              > >
              > >> So if two separate weblogic instances in a cluster did a find on an
              entity
              > >ejb with the same primary key and then performed some business method on
              > >that entity ejb, would there really be two separate bean instances in
              each
              > >weblogic instance for the same primary key?
              > >
              > >If it is not pinned, yes.
              > >
              > >--
              > >Cameron Purdy
              > >Tangosol, Inc.
              > >http://www.tangosol.com
              > >+1.617.623.5782
              > >WebLogic Consulting Available
              > >
              > >
              > >"Bryan Dixon" <[email protected]> wrote in message
              > >news:[email protected]...
              > >>
              > >> Toa, thanks again.
              > >>
              > >> There are a couple of things I'm not clear about though. One is that I
              > >want one instance of an entity bean per primary key, not a singleton of
              the
              > >entity bean itself. How would JNDI in a clustered environment help me
              > >there?
              > >>
              > >> The other question I have is about having multiple instances of an
              entity
              > >bean for the same primary key in the cluster. I was thinking that
              > >read-write entity beans were pinned. So if two separate weblogic
              instances
              > >in a cluster did a find on an entity ejb with the same primary key and
              then
              > >performed some business method on that entity ejb, would there really be
              two
              > >separate bean instances in each weblogic instance for the same primary
              key?
              > >>
              > >> Thanks again,
              > >> Bryan
              > >>
              > >> "Tao Zhang" <[email protected]> wrote:
              > >> >
              > >> >"Bryan Dixon" <[email protected]> wrote:
              > >> >>
              > >> >>The reason I was wanting one instance per primary key is that I want
              to
              > >use this entity bean to cache some data from database tables. This data
              > >doesn't change frequently, so we were wanting to get it from this entity
              > >bean's memory instead of constantly hitting the database. This data is
              > >global to all users, so we don't want to store it in stateful session
              beans.
              > >> >>
              > >> >>After reading more about the read-only cache-strategy it doesn't
              appear
              > >that any sycnhronization will occur if the entity bean for a given
              primary
              > >key is updated (state data is updated) in one weblogic instance, that
              change
              > >will not get synced up with other weblogic instances for that same
              primary
              > >key. Is that correct?
              > >> >>
              > >> >It's correct. If you do want to have exact one copy in the cluster.
              You
              > >can read Using JNDI in cluster environment.
              > >> >
              > >> >>If I deploy this entity bean with read-write cache-strategy the
              WebLogic
              > >doc reads as if I will get one instance per primary key that is pinned to
              > >one WebLogic instance and I won't get any fail-over or load-balancing on
              the
              > >ejbObject (the entity bean instance). Did I read this correctly? If
              that
              > >is the case, what is the advantage of setting up read-write entity beans
              to
              > >be clusterable - just the Home objects? I definitely could be
              > >misunderstanding something in the doc since I'm very new to clustering.
              > >> "Tao
              > >> >Zhang"
              > >> ><[email protected]> wrote:
              > >> >>>
              > >> >
              > >> >It's not only instance in the cluster. Probably many instances.
              > >> >
              > >> >If you use 2 tier clustering, failover will not happen because of
              > >co-location. But if you use 3 tier cluster, you can write the special
              code
              > >in the client side to do failover and load-balance.
              > >> >
              > >> >In a 2 tier cluster, actually the ejb load balancing and failover is
              > >almost useless.
              > >> >
              > >> >But in 3 tier, you can use it.
              > >> >
              > >> >Hope this help.
              > >> >
              > >> >
              > >> >
              > >> >>>"Bryan Dixon" <[email protected]> wrote:
              > >> >>>>
              > >> >>>>Thanks Tao.
              > >> >>>>
              > >> >>>>A couple more questions...
              > >> >>>>I was planning deploying this entity bean with the read-only
              > >cache-strategy which means our transaction attribute would be
              > >TXN_NOT_SUPPORTED. Also, our db isolation is TRANSACTION_READ_COMMITTED.
              > >> >>>>
              > >> >>>>Based upon how I was planning on deploying this entity bean, would
              > >WebLogic create an instance of the bean for each primary key in each
              > >cluster? I'm just trying to figure out how many duplicate bean instances
              > >for the primary key I could have across all clusters. I was really just
              > >wanting one instance that is shared among all clients and was hoping that
              > >the clustering would provide me with fail-over if that one cluster went
              > >down.
              > >> >>>>
              > >> >>>If you use 3 tier cluster structure, it's impossible to know how
              many
              > >instances of ejb with the same primary key. Probably one instance for
              each
              > >wls instance.
              > >> >>>In wls5.1, it's impossible to host only read only entity bean
              instance
              > >in the 3-tier cluster. Because read only entity bean are clusterable in
              both
              > >home and remote interface.
              > >> >>>
              > >> >>>>Regarding making the bean a pinned service, which it sounds like I
              > >might have to do to get the results I want, how do I do that? Is that a
              > >deployment descriptor setting? Also, if I make it a pinned service, do I
              > >get any fail-over suport by clustering the bean?
              > >> >>>>
              > >> >>>For the pinned service, you can just deployed on one or several
              server
              > >instances. The per-server properties file is a good place to put the
              > >weblogic.ejb.deploy property. If only one pinned service in the cluster,
              you
              > >can't get fail over. If the that server instance fails, the home stub
              will
              > >be removed from the jndi in other server instances.
              > >> >>>
              > >> >>>Why do you must need only one instance in the cluster? Do you want
              > >exact-only-copy? You can read Using JNDI doc about its in cluster
              > >environment.
              > >> >>>
              > >> >>>
              > >> >>>
              > >> >>>
              > >> >>>>Thanks again,
              > >> >>>>Bryan
              > >> >>>>
              > >> >>>>
              > >> >>>>
              > >> >>>>"Tao Zhang" <[email protected]> wrote:
              > >> >>>>>
              > >> >>>>>
              > >> >>>>>Bryan Dixon <[email protected]> wrote in message
              > >> >>>>>news:[email protected]...
              > >> >>>>>>
              > >> >>>>>> I'm designing a data caching approach that relies on using
              > >read-only
              > >> >>>>>entity ejbs with bean-managed persistence. My design is based on
              the
              > >fact
              > >> >>>>>that WebLogic blocks on entity bean access by concurrent users for
              a
              > >given
              > >> >>>>>bean instance (unique primary key). I would like to keep only one
              > >entity
              > >> >>>>>bean instance active(timeoutSetting=0) for eacy primary key for
              all
              > >users to
              > >> >>>>>share. That way I only have to hit the database one time to
              > >initially
              > >> >>>>>populate data in the entity bean. I'm worried about this approach
              in
              > >a
              > >> >>>>>WebLogic clustered environment. From reading notes in this
              newsgroup
              > >and
              > >> >>>>>other doc, it appears that WebLogic might not use one instance of
              the
              > >entity
              > >> >>>>>bean (based upon unique primary key) in a clustered environment.
              Is
              > >that
              > >> >>>>>true (that being multiple users could get their own instance of
              the
              > >entity
              > >> >>>>>bean with the same primary key)?
              > >> >>>>>>
              > >> >>>>>
              > >> >>>>>
              > >> >>>>>It's true. In a cluster environment, each wls instance can have
              their
              > >ejb
              > >> >>>>>instance. The block of concurrent access to the ejb data is up to
              > >your
              > >> >>>>>transaction attribute and isolation level and your database.
              > >> >>>>>
              > >> >>>>>If you only want to keep one instance active, you can make the
              > >read-only
              > >> >>>>>entity bean a pinned service, to be deployed in one instance. But
              the
              > >> >>>>>network overhead is worse.
              > >> >>>>>
              > >> >>>>>
              > >> >>>>>> Thanks,
              > >> >>>>>> Bryan
              > >> >>>>>
              > >> >>>>>
              > >> >>>>
              > >> >>>
              > >> >>
              > >> >
              > >>
              > >
              > >
              >
              

  • Interceptors for non EJB

    Hi,
    does the jee standard covers interceptors for non EJB classes? I'm using Glassfish and it worked for a plain java classes e.g.:
    @Interceptors(TraceInterceptor.class)
    public class PlainClass {
         public String doSomething() {
              return "somthing";
    Hoever when I use the intercepter with a DAO class that's depending an an EntityManager e.g.:
    @Interceptors(TraceInterceptor.class)
    public class PersonDao implements IPersonDao {
         @PersistenceContext
         private EntityManager em;
         @Override
         public Person getById(Integer id) {
              return em.find(Person.class, id);
    I get a NullPointer exeption because the Entity Manger is not injected.
    so my question is: does the jee standard covers interceptors for non EJB classes?
    Regards
    Sebastian

    Hi,
    thanks for your response.
    When I remove the @Interceptors annotation from the PersonDao everything works fine including the injection of the entity manager. When I add the @Interceptors annotation I get a null pointer at em.find(Person.class, id).
    I’m new to JEE6 because I have worked with Spring the last 6 years. Accidently I never used the @Named annotation. Surprisingly that is no problem (at least in Glassfish).
    Anyhow I added the @Named annotation to the DAO but that not changed anything, I still got a null pointer. What’s wrong?
    @Interceptors(TraceInterceptor.class)
    @Named
    public class PersonDao implements IPersonDao {
         @PersistenceContext
         private EntityManager em;
         @Override
         public Person getById(Integer id) {
              return em.find(Person.class, id);
    @Stateless
    @Interceptors(TraceInterceptor.class)
    public class TestSrv implements ITestSrv {
         @Inject
         private IPersonDao personDao;
         @Override
         public Person getPerson(Integer id) {
              return personDao.getById(id);
    Best regards
    Sebastian

  • Errors when deploy a simple entity ejb module to oc4j 10g?

    I work as following steps:
    1. new project
    2. new Digram-->EJB Diagram
    3. Drag a Entity bean ico to Diagram and name it with Student, then add a id&name column to it.
    4 set the entity-ejb Student's Resource Reference's property: name(MysqlPool),ResourceType(com.mysql.jdbc.Driver),Authentification(Container)
    (in oc4j, I have set the pool connection--MysqlPool)
    5 use command to start oc4j 10.1.3 in jdev10.1.3
    6 In Jdeveloper IDE, select ejb-jar.xml and use right mouse button to call out the menu and then select "Cretae ejb or jar deploy profile", set the deploy platform to my oc4j connection.
    7 select the deploy profile and deploy to my oc4j connection, then errors were reported as following:
    Target platform is Standalone OC4J 10.1.3 (AppServerConnection1).
    Wrote EJB JAR file to D:\jdevj2ee1013\jdev\mywork\Application1\Project1\deploy\ejb1.jar
    Wrote EAR file to D:\jdevj2ee1013\jdev\mywork\Application1\Project1\deploy\ejb1.ear
    Uploading file ...
    Application Deployer for ejb1 STARTS.
    Do not undeploy previous deployment
    Copy the archive to D:\jdevj2ee1013\j2ee\home\applications\ejb1.ear
    Initialize D:\jdevj2ee1013\j2ee\home\applications\ejb1.ear begins...
    Unpacking ejb1.ear
    Done unpacking ejb1.ear
    Initialize D:\jdevj2ee1013\j2ee\home\applications\ejb1.ear ends...
    Starting application : ejb1
    Initializing ClassLoader(s)
    Initializing EJB container
    Loading connector(s)
    Starting up resource adapters
    Processing EJB module: ejb1.jar
    Compiling EJB generated code
    Error while compiling EJB component: D:\jdevj2ee1013\j2ee\home\applications\ejb1\ejb1.jar
    com.evermind.compiler.CompilationException: Error finding a suitable DataSource: Error looking up cmt-datasource at jdbc/OracleDS (name not found)
         at com.evermind.server.ejb.compilation.EntityBeanCompilation.createTable(EntityBeanCompilation.java:257)
         at com.evermind.server.ejb.compilation.EntityBeanCompilation.preCompile(EntityBeanCompilation.java:318)
         at com.evermind.server.ejb.compilation.Compilation.generateAnyOldStyle(Compilation.java:1728)
         at com.evermind.server.ejb.compilation.Compilation.compile(Compilation.java:162)
         at com.evermind.server.ejb.compilation.Compilation.doGenerateCode(Compilation.java:216)
         at com.evermind.server.ejb.EJBContainer.postInitBatch(EJBContainer.java:1197)
         at com.evermind.server.ejb.EJBContainer.postInit(EJBContainer.java:1118)
         at com.evermind.server.ApplicationStateRunning.initializeApplication(ApplicationStateRunning.java:200)
         at com.evermind.server.Application.setConfig(Application.java:299)
         at com.evermind.server.Application.setConfig(Application.java:226)
         at com.evermind.server.ApplicationServer.addApplication(ApplicationServer.java:1740)
         at oracle.oc4j.admin.internal.ApplicationDeployer.addApplication(ApplicationDeployer.java:403)
         at oracle.oc4j.admin.internal.ApplicationDeployer.doDeploy(ApplicationDeployer.java:144)
         at oracle.oc4j.admin.internal.DeployerBase.execute(DeployerBase.java:95)
         at oracle.oc4j.admin.jmx.server.mbeans.deploy.OC4JDeployerRunnable.doRun(OC4JDeployerRunnable.java:53)
         at oracle.oc4j.admin.jmx.server.mbeans.deploy.DeployerRunnable.run(DeployerRunnable.java:68)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:299)
         at java.lang.Thread.run(Thread.java:534)
    application : ejb1 is in failed state
    java.lang.InstantiationException: Error initializing ejb-module; Exception
    Error compiling D:\jdevj2ee1013\j2ee\home\applications\ejb1\ejb1.jar: Error finding a suitable DataSource: Error looking up cmt-datasource at jdbc/OracleDS (name not found)
         at com.evermind.server.ejb.EJBContainer.throwInstantiationException(EJBContainer.java:2285)
         at com.evermind.server.ejb.EJBContainer.postInitBatch(EJBContainer.java:1422)
         at com.evermind.server.ejb.EJBContainer.postInit(EJBContainer.java:1118)
         at com.evermind.server.ApplicationStateRunning.initializeApplication(ApplicationStateRunning.java:200)
         at com.evermind.server.Application.setConfig(Application.java:299)
         at com.evermind.server.Application.setConfig(Application.java:226)
         at com.evermind.server.ApplicationServer.addApplication(ApplicationServer.java:1740)
         at oracle.oc4j.admin.internal.ApplicationDeployer.addApplication(ApplicationDeployer.java:403)
         at oracle.oc4j.admin.internal.ApplicationDeployer.doDeploy(ApplicationDeployer.java:144)
         at oracle.oc4j.admin.internal.DeployerBase.execute(DeployerBase.java:95)
         at oracle.oc4j.admin.jmx.server.mbeans.deploy.OC4JDeployerRunnable.doRun(OC4JDeployerRunnable.java:53)
         at oracle.oc4j.admin.jmx.server.mbeans.deploy.DeployerRunnable.run(DeployerRunnable.java:68)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:299)
         at java.lang.Thread.run(Thread.java:534)
    Caused by: java.lang.InstantiationException:
    Error compiling D:\jdevj2ee1013\j2ee\home\applications\ejb1\ejb1.jar: Error finding a suitable DataSource: Error looking up cmt-datasource at jdbc/OracleDS (name not found)
         at com.evermind.server.ejb.EJBContainer.postInitBatch(EJBContainer.java:1226)
         ... 12 more
    Operation failed with error:
    java.lang.InstantiationException: Error initializing ejb-module; Exception
    Error compiling D:\jdevj2ee1013\j2ee\home\applications\ejb1\ejb1.jar: Error finding a suitable DataSource: Error looking up cmt-datasource at jdbc/OracleDS (name not found)
    Deployment failed
    Elapsed time for deployment: 41 seconds
    #### Deployment incomplete. #### 2005-2-15 10:46:02
    what's the meaning about Error finding a suitable DataSource: Error looking up cmt-datasource at jdbc/OracleDS (name not found)?
    I didn't use jdbc/OracleDS Datasource, and I deleted it from config\data-source.xml.
    Is it cause those errors or my operation rong?
    Who can tell me the entity ejb's deploy method&step?

    Yes, now I added a connection pool and a datasource in oc4j, and set the datasource's jndi name to "jdbc/OracleDS".For The connection pool,I use the mysql database.
    Followed the above operation, I repeat the deployment and it deployed successfully.
    Viewed by web-control-for-oc4j, I found jdeveloper automaticly created a datasource and pool for the ejb module.However, the datasource's parameter(connection-factory factory-class="oracle.jdbc.pool.OracleDataSource") is wrong.
    So I open Tools Menu->Preferences menu and setted the Deploy property to "unbundle datasource...".Then I Created a file named data-sources.xml in project and filled out the correct properties.
    After I deploied the ejb-module, I openned the deploied .ear file with winrar to view its contents.I found the factory-class property's value is still wrong which included in data-sources.xml file in Mata-Inf directory,but the property of the data-sources.xml file in .jar file is correct.So, the class factory value of the deploied ejb-application's connection pool still is "oracle.jdbc.pool.OracleDataSource".It couldn't work surely.
    Of course, I can modity the data-sources.xml in .ear file.
    But has some more better method to settle this problem while not manuelly?

  • JNDI lookup fails for client applications

    I am currently porting our j2ee application to weblogic 7.0. The application already
    runs successfully on Orion and Jboss. I have got everything working now except
    for our client applications, which all fail with a JNDI lookup error. The exception
    is:
    javax.naming.NameNotFoundException: Unable to resolve 'java:comp.env/ejb/QualiferInstance'
    Resolved: '' Unresolved:'java:comp' ; remaining name 'java:comp.env
    /ejb/QualifierInstance'
    at weblogic.rmi.internal.BasicOutboundRequest.sendReceive(BasicOutbound
    equest.java:109)
    at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemote
    ef.java:262)
    at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemote
    ef.java:229)
    at weblogic.jndi.internal.ServerNamingNode_WLStub.lookup(Unknown Source
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:338)
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:333)
    at javax.naming.InitialContext.lookup(InitialContext.java:347)
    at BatchIndexer.main(BatchIndexer.java:89)
    I have looked up numerous postings on various mailing lists describing similar
    problems, but none of them give an explanation which helps me.
    I am convinced that I have the ejb deployment descriptors correct because all
    our JSPs, servlets and session beans successfully lookup and use the EJBs.
    I am also convinced that I have the correct code for the JNDI lookup in our client
    applications, because they work perfectly well on Orion and Jboss and use syntax
    which is described as correct in the jsee specification, i.e. "java:comp/env/..."
    Here is the descriptor from weblogic-ejb-jar.xml for the EJB mentioned in the
    example exception above:
    <weblogic-enterprise-bean>
    <ejb-name>QualifierInstance</ejb-name>
    <jndi-name>comp/env/ejb/QualifierInstance</jndi-name>
    </weblogic-enterprise-bean>
    And here is the descriptor in the application-client.xml file:
         <ejb-ref>
              <ejb-ref-name>ejb/QualifierInstance</ejb-ref-name>
              <ejb-ref-type>Entity</ejb-ref-type>           <home>com.espritsoutron.xengine.ejb.metamodel.QualifierInstanceHome</home>
              <remote>com.espritsoutron.xengine.ejb.metamodel.QualifierInstance</remote>
              <ejb-link>QualifierInstance</ejb-link>
         </ejb-ref>
    And here is the code in the client application that attempts to perform the lookup:
    qiHome = (QualifierInstanceHome)PortableRemoteObject.narrow(context.lookup("java:comp/env/ejb/QualifierInstance"),
    QualifierInstanceHome.class);
    The annoying thing is that I know I can make this work if I change the code to
    omit the "java:" prefix, but I don't want to do this because then it would no
    longer work on either Orion and Jboss.
    P.S. I have also tried changing the jndi-name in the weblogic-ejb-jar descriptor
    to "ejb/QualifierInstance" and just "QualifierInstance", but neither of these
    make any difference. I even tried chaning it to "java:comp/env/ejb/QualifierInstance"
    but that totally breaks the server.
    Can anyone can please help with this?

    you can find the JNDI name in the JNDI tree from the admin console
    right click on your server and choose "view jndi tree".
    if you bind your ejb to ejb/QualifierInstance
    you look it up with that exact same name ejb/QualifierInstance
    Julian Fawcett wrote:
    I am currently porting our j2ee application to weblogic 7.0. The application already
    runs successfully on Orion and Jboss. I have got everything working now except
    for our client applications, which all fail with a JNDI lookup error. The exception
    is:
    javax.naming.NameNotFoundException: Unable to resolve 'java:comp.env/ejb/QualiferInstance'
    Resolved: '' Unresolved:'java:comp' ; remaining name 'java:comp.env
    /ejb/QualifierInstance'
    at weblogic.rmi.internal.BasicOutboundRequest.sendReceive(BasicOutbound
    equest.java:109)
    at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemote
    ef.java:262)
    at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemote
    ef.java:229)
    at weblogic.jndi.internal.ServerNamingNode_WLStub.lookup(Unknown Source
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:338)
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:333)
    at javax.naming.InitialContext.lookup(InitialContext.java:347)
    at BatchIndexer.main(BatchIndexer.java:89)
    I have looked up numerous postings on various mailing lists describing similar
    problems, but none of them give an explanation which helps me.
    I am convinced that I have the ejb deployment descriptors correct because all
    our JSPs, servlets and session beans successfully lookup and use the EJBs.
    I am also convinced that I have the correct code for the JNDI lookup in our client
    applications, because they work perfectly well on Orion and Jboss and use syntax
    which is described as correct in the jsee specification, i.e. "java:comp/env/..."
    Here is the descriptor from weblogic-ejb-jar.xml for the EJB mentioned in the
    example exception above:
    <weblogic-enterprise-bean>
    <ejb-name>QualifierInstance</ejb-name>
    <jndi-name>comp/env/ejb/QualifierInstance</jndi-name>
    </weblogic-enterprise-bean>
    And here is the descriptor in the application-client.xml file:
         <ejb-ref>
              <ejb-ref-name>ejb/QualifierInstance</ejb-ref-name>
              <ejb-ref-type>Entity</ejb-ref-type>           <home>com.espritsoutron.xengine.ejb.metamodel.QualifierInstanceHome</home>
              <remote>com.espritsoutron.xengine.ejb.metamodel.QualifierInstance</remote>
              <ejb-link>QualifierInstance</ejb-link>
         </ejb-ref>
    And here is the code in the client application that attempts to perform the lookup:
    qiHome = (QualifierInstanceHome)PortableRemoteObject.narrow(context.lookup("java:comp/env/ejb/QualifierInstance"),
    QualifierInstanceHome.class);
    The annoying thing is that I know I can make this work if I change the code to
    omit the "java:" prefix, but I don't want to do this because then it would no
    longer work on either Orion and Jboss.
    P.S. I have also tried changing the jndi-name in the weblogic-ejb-jar descriptor
    to "ejb/QualifierInstance" and just "QualifierInstance", but neither of these
    make any difference. I even tried chaning it to "java:comp/env/ejb/QualifierInstance"
    but that totally breaks the server.
    Can anyone can please help with this?

Maybe you are looking for

  • How to increase the field lenght of file uplaod in BSP application

    Hi All,    I am facing a problem with u201Cuploadu201D filed length in BSP application. When we upload the file in BSP page, the path displayed should be the full path (i.e. from where the file is being upload the file) Now this field is appearing 20

  • How to start for reorg datas ?

    Hi members, I have a few questions about an 9i Oracle database for using with IBM WebSphere Commerce. DB is not very big ... only 1,3 Gb. Production release : 9.2.0.7 Every night at 2:00am I have a task for analyzing statistics on all tables (3 schem

  • Asynchronous bpel proces seems to reply synchronous

    I have made a bpel proces which is triggered by a synchronous webservice. The process is triggered, I fill the reponse and reply to the service to let it know we received the message. After this I process the message which takes some time. The proble

  • LabVIEW RTE Search Paths Capitalization [LV/TS]

    Not sure if this belongs into LV or Ts so I'm posting on both. I'm getting the following error when I try to run a sequence in TestStand 4.1 with the LabVIEW 8.5 RTE as my adapter. Is there a flag in the ini config file that I can set to make my path

  • MacBook pro early 2008 screen starts flickering, then freezes. Force shutdown then freezes at grey screen start up. HELP!

    My computer screen started to flicker. Then the mouse pointer will freeze while the screen continues to flicker, not allowing me to do anything except force shut down with power button. When starting up, the rotating circle freezes up on the gray scr