Entity Bean Pool

Weblogic(6.1) deployment descriptor allows configuration of entity bean pool size
and cache size. Since calls from multiple clients to the same entity bean are
serialized what is the benefit of having multiple instances in an entity bean
pool?
Thanks,
Stefan

Anand,
Of course I don't talk about an extreme case of a table with one row!?, but the
same (logical) entity bean with same primary key accessed by multiple clients.
Each client will use findByPrimaryKey method and will get a reference to same
entity bean mapped to the same "row" in database . My surprise was that even for
this case there are multiple entity instances created in the pool for one row
in the database. For multiple instances mapped to multiple rows we concluded all
makes sense.
thanks again,
Stefan
"Anand Byrappagari" <[email protected]> wrote:
Stefan,
I am not sure I understand your question but if you are asking why
have
pooling, pool of instances is a feature for all types of entity beans.
In
the specific case that you have where the table has only one row it has
limited application but the general case is that you lave multiple rows
in a
table. For example, an Address table will in all probability have hundereds
of addresses of customers. An application accessing this table will be
accessing multiple address instances at any given time. So each of this
instances should be accessable independently hence the pool makes sense
in
this case. I point I am trying to make is that when you define a pool
for a
bean (AddressBean) you are not defining the pool for one instance of
the
bean type(like address_1). The pool specifies the number of instances
(address_1, address_2, ...., address_n) that can exist at any given time.
Are you asking if the pool size is for each row? That is if pool
size is
set to 10, are you asking if you can have atmost 10 instances of address_1
as opposed to 10 instances of any address? The pool and cache sizes refer
to
the limit on any instances and not on 1 instance.
Even in the extreme case like the one you mention where the table
has
only one row, there is some utility in having multiple instances as this
would not require serializing access to the bean - in exclusive strategy,
once a client has locked an EJB instance, other clients are blocked from
the
EJB's data even if they intend only to read the persistent fields. If
you
set the strategy to database then multiple instances can access the data
depending on the isolation levels you have set. Read Chapter 4 of
"Programming Weblogic Enterprise JavaBeans" for more information.
Hope this helps.
-- Anand
"Stefan" <[email protected]> wrote in message
news:[email protected]...
Anand,
If we established that same databse row can be mapped to multiple entitybeans
instances we are back to my original question: Assuming "database"concurrency
strategy, how do you see this model useful if calls from multiple clientsare
serialized across all these instances? I cannot point out the benefitof
the pool
of entity bean instances for same row since they all wait for a clientcall to
finish before replying to another client. Where is the benefit of havingmultiple
instances if one instance would do the same job?
thanks,
Stefan
"Anand Byrappagari" <[email protected]> wrote:
The default concurrency-strategy in weblogic 6.1 is database which
means
that concurrency is taken care of at the database, this model allows
you to
have multiple ejb object instances for the same row in the database.
If you
want a single instance then you can set <concurrency-strategy> element
in
the deployment descriptor for the ejb to Exclusive.
-- Anand
"Stefan" <[email protected]> wrote in message
news:[email protected]...
Thanks Anand,
Sure this way it makes total sense. However I used an example whereI was
referencing
only one row from multiple clients. For this case using the WeblogicConsole I
saw the number of bean instances growing. This would indicate thatsame
row is
mapped to multiple bean instances in the pool, which prompted my
question.
Stefan
"Anand Byrappagari" <[email protected]> wrote:
Think of entity beans as mapping to a row in a database. Access
to
a
single
row is synchronized not to all the rows. So it still makes sense
to
have
multiple instances possibly mapping to multiple rows in the database.
-- Anand
"stefan" <[email protected]> wrote in message
news:[email protected]...
Weblogic(6.1) deployment descriptor allows configuration of entitybean
pool size
and cache size. Since calls from multiple clients to the same
entity
bean
are
serialized what is the benefit of having multiple instances in
an
entity
bean
pool?
Thanks,
Stefan

Similar Messages

  • Multiple Database Pooling using Entity Bean

    Hi,
    Can anyone come across this problem? I have an entity bean (BMP). I want to connect to multiple databases(Oracle, My-SQL, MS-SQL Server). The application is like this. if a request come from the client i have to identify the client request and connect to the database. How to do this. How to connect to get the pool from the connection pooling. Please reply its urgent.
    thanks
    Prem

    Thanks for ur reply.
    what the point is i want to identify the client request and send this request to that bean. i have developed 30 cmp beans, if i have to identify i have to change all cmp to bmp, is there any solution to this.

  • To limit the number of beans pooled in entity-cache

    here are the issues in the problem.
    1. would like to make sure there are NO More than N beans in the entity cache.
    2. if I set max-beans-in-free-pool, problem seems to be this: if I need to retrieve more than (N+1) rows from DB, weblogic retrieves ONLY N beans because it reached the max-beans-in-free-pool. That behaviour is not desirable, of course.
    so, how does one set the entity-cache params, to
    1. retrieve as many entity beans as required - regardless of the param max-beans-in-free-pool
    2. let weblogic grow the entity cache to as big a cache as required - but then shrink it back to "some specified" cache size after idle-timeout. whats the param for that?
    any help in understanding these issues would be great.

    HI,
    You can make use of feature to maintain maximum and minimum limits per condition type.
    SPRO > SAP Implementation Guide > Customer Relationship Management > Basic Functions > Pricing > Define Settings for Pricing > Create Minimum/Maximum Limits
    In this activity you can restrict manual processing of pricing conditions in transactions using minimum and maximum limits per condition type.
    Kindly reward with points in case helpful
    Sharif

  • Pooling of Entity beans

    Hi,
    How is pooling of entity beans supported in Weblogic? If a value is provided for
    max_beans_in_free_pool, then the Weblogic server creates a particular number of
    entity bean instances in the pool? What's the role of max-beans-in-cache?
    Regards,
    Indhu

    Thanks Seth for your info
    Indhu
    Seth White <[email protected]> wrote:
    >
    The docs are incorrect. You may configure a pool for your entity beans.
    Seth
    indhu wrote:
    Hi Ryan,
    Thanks for your reply.
    In the entity-descriptor element of weblogic-ejb-jar.xml, pool elementis there,
    which consists of max-beans-in-free-pool and initial-beans-in-free-pool.The document
    says that the pool element configures the behavior of the WebLogicServer free
    pool for stateless session and message driven EJBs.It means that wecan't use
    those elements to set free pool for entity beans?
    Regards,
    Indhu
    "Ryan LeCompte" <[email protected]> wrote:
    Hello Indhu,
    Refer to the following links for answers to your questions:
    http://edocs.bea.com/wls/docs70/ejb/EJB_environment.html#1135029
    http://edocs.bea.com/wls/docs70/ejb/reference.html#1071069
    http://edocs.bea.com/wls/docs70/ejb/reference.html#1071125
    Best regards,
    Ryan LeCompte
    [email protected]
    http://www.louisiana.edu/~rml7669
    "indhu" <[email protected]> wrote:
    Hi,
    How is pooling of entity beans supported in Weblogic? If a value
    is
    provided
    for
    max_beans_in_free_pool, then the Weblogic server creates a particular
    number of
    entity bean instances in the pool? What's the role of max-beans-in-cache?
    Regards,
    Indhu

  • 'pool' to 'ready' state of entity bean

    Entity bean's life cycle is show at http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/EJBConcepts9.html#63498 Can entity bean go from �pooled� state to �ready� state by methods other than create (e.g. a find method)?

    How many questions are you going to ask at once?
    Most of these have been answered countless times, both here and on the web. Why don't you try searching instead of spewing endless questions?

  • Questions about entity bean caching/pooling

    We have a large J2ee app running on weblogic6.1 sp4. We are using entity beans
    with cmp/cmr. We have about 200 EntityBeans and accessed quite heavily. We are
    struggling with what is the right setting of max-beans-in-cache and idle-time-out.
    The current max heap setting is 2GB. With the current setting (default setting
    of max-beans-in-cache to 1000, with a few exceptions to take care of cachefullexceptions)
    we run into extended gc happening after about 4 hours. The memory freed gradually
    reduces with time and lurks around the 30% mark after about 4 hours of run at
    the expected load. In relation to this we had the following questions
    1. What does caching mean?
    a. If a bean with primary key 100 exists in the cache, and the following
    is done what is expected
    i. findByPrimaryKey(100)
    ii. findBySomeOtherKey(xyz)
    which results in loading up bean with primary key 100
    iii. cmr access to bean with
    primary key 100
    Is the instance in the cache reused at all between transactions?
    If there is minimal reuse of the beans in cache, Is it fair to assume that caching
    can only help loading of beans within a transaction. If this is the case, is there
    any driver to increase the max-beans-in-cache other than to avoid CacheFullException?
    In other words, is it wrong to say that max-beans-in-cache should be set to the
    minimum value so as to avoid CacheFullExceptions.
    2. Again what is the driver of setting idle-time-out to a value? ( We currently
    have it at 30 secs) Partly the answer to this question would again go back to
    what amount of reuse is done from cache? Is it right to say that it should be
    set to a very low value? (Why is the default 10 min?)
    3. Can you provide us any documentation that explains how all this works
    in more detail, particularly in relevance to entity beans. We have already read
    the documentation from weblogic as is. Anything to give more explicit detail?
    Any tools that can be of use.
    4. What is the right parameter (from among the things that weblogic console
    throws up) to look at for optimizing?
    Thanks in advance for your help
    Cheers
    Arun

    The behaviour changes according to these descriptor settings: concurrency-strategy,
    db-is-shared and include-updates.
    1. If concurrency-strategy is Database, then the database is used to provide locking
    and db-is-shared is ignored. A bean's ejbLoad() is called once per transaction,
    and the 'cache' is really a per-transaction pool. A findByPrimaryKey() always
    initially hits the db, but can use the cache if called again in the same txn (although
    you'd simply just pass a reference around). A findByAnythingElse() always hits
    the db.
    2. If concurrency-strategy is ReadOnly then the cache is longer-term: ejbLoad()
    is only called when the bean is activated; thereafter, the number of times ejbLoad()
    is called is influenced by the setting of read-timeout-seconds. A findByPrimaryKey()
    can use the cache. A findByAnythingElse() can't.
    3. If concurrency-strategy is Exclusive then db-is-shared influences how many
    times ejbLoad() is called. If db-is-shared is false (i.e. the container has exclusive
    use of the underlying table), then the ejbLoad() behaviour is more like ReadOnly
    (2. above), and the cache is longer-term. If db-is-shared is true, then the ejbLoad()
    behaviour is like Database (1. above).
    Exclusive concurrency reduces ejbLoads(), increases the effectiveness of the cache,
    but can reduce app concurrency as only one instance of an entity bean can exist
    inside the server, and access to it is serialised at the txn level.
    You can't use db-is-shared = false in a cluster. So Exclusive mode is less useful.
    That's when you think long and hard about Tangosol Coherence (http://www.tangosol.com)
    4. If include-updates is true, then the cache is flushed to the db before every
    non-findByPrimaryKey() finder call so the finder (which always hits the db) will
    get the latest bean values. This overrides a true setting of delay-updates-until-end-of-tx.
    The max-beans-in-cache setting refers to the maximum number of active beans (really
    beans that have been returned by a finder in a txn that hasn't committed). This
    wasn't checked in SP2 (we have an app that accidently loads 30,000 beans in a
    txn with a max-beans-in-cache of 3,000. Slow, but it works, showing 3,000 active
    beans, and 27,000 passivated ones...).
    This setting is checked in SP5, but I don't know about SP4. So you do need to
    size appropriately.
    In summary:
    - The cache isn't nearly as useful as you'd like. You get far more db activity
    with entity beans than you'd like (too many ejbLoads()). This is disappointing.
    - findByPrimaryKey() finders can use the cache. How long the cache is kept around
    depends on concurrency-strategy.
    - findByAnythingElse() finders always hit the db.
    WebLogic 8 tidies all this up a bit with a cache-between-transactions setting
    and optimistic locking. But I believe findByAnythingElse() finders still have
    to hit the db - ejbql is never run against the cache, but is always converted
    to SQL and run against the db.
    Hope this is of some help - feel free to email me at simon-dot-spruzen-at-rbos-dot-com
    (you get the idea!)
    simon.

  • To use Entity Bean or Oracle stored Package?

    Currently, in my project, Weblogic8.1 and Oracle is used, but lots of business logic is implemented using Oracle stored Packages, many of these packages have a package level readonly lookup table(like index-by table or nested table), which is populated with data from database, once the package is called, and is accessed very often in subsequent calls of stored procedures.
    Since, in Weblogic server, a connection pool is maintained, and those package level lookup tables would be stored as session data in oracle PGA, I'm afraid this might cause oracle database server to be overloaded.
    to fully take advantage of middleware cache service that weblogic provide, should I move those business logic out of oracle and implement them using like read only entity bean?
    any help appreciated!

    Its very hard to say without knowing the usage patterns of the data. It sounds like you have a lot of read-only entities. These could be spread around a WLS cluster, therefore there is more scalability and performance with this option. However, I would not neccessarily rewrite business logic from SP into EJB just for middle-tier caching.
    If its a DB intensive app with lots of SQL, then if the calls are within SP's, there is only 1 call from WLS and the DBA ought o be able to tune the DB usin read-ahead and other DBA semantics. If there is locality of reference in the data, again, DB can use read-ahead better than WLS, although RO cache in middle is more scalable than DBMS.
    I wouldnt rewrite business logic from SP to EJB/Entity beans to take advantage of cache, especially if there is no locality of read-only reference to data. Oracle could do this better in my opinion, especially if SP's already exist
    Need for information on the usage patterns of the data - how is it CRUD'd.
    I would use-case the steel threads and put them under test load to see if the SP's really are an issue, since this is an architecture decision. What state is the project at? Live/Dev? Inception?

  • Report with entity beans - BIG performance problem

    I have several EJBs (CMP entity beans).
    I need to build a report using linked EJBs and show this report
    to a user (so, updates are not needed - report is only for web page demonstration).
    the problem is: such report is generated too slow.
    I have ~100 records in table 'TestResult' and ~500 records in table 'TestObject'.
    these tables are linked like this:
    one testobject <--> many testresults
    for each testresult I need to show a line with some info which should be retrieved
    from bound EJBs (e.g. testresult-testobject-assigneduser-prioritylevel)
    how to optimize such report generation?
    I have heard something about session beans with Value Objects.
    do I need to use such session beans here?
    what is a general solution for generating reports using linked EJBs?
    I tried to solve the problem by using DB View, but it didn't help.
    I have used 'TestResultView' - info is retrieved fast enough from this view
    (several msecs), but displaying this info is still very costly.
    please, help!
    Oracle 8.1.7,
    WebLogic 6.1

    Hi,
    because I have checked the time required to
    1) retrieve EJBS (several msec)Let me share some of my views with you.Once you retrieve the EJBS ie ie the collection of remote interface from the finder method the container is firing single "select " query and gets all the primary keys back.
    2) cycle through it - get fields and display them
    (~4000 msec)Now the cycle of getting the value you are getting the bean from the PooledState to ready state which will get the fields by firing the "select" query (ejbload()). Now in the instance you are invoking the multiple methods and at the end it will remain there in ready till you call the remove which u are not doing so the time out will bring it back to the pooledstate.
    And if you are calling the bean very frequently then all the instances will go to the ready state and the activation & passivation will start developing ......
    So at the end when the bean moves back to the pooled state after timeout the ejbStore() fires the "update " query!!!!
    Let us consider the activation/passivation not appearing for simple understanding !!!!!!!!
    So for each iteration you are firing 2 queries to the database.So if you have 500 records then the queries generatted will be 1(select from finder)+2(1 by select(ejbload)+1 by update(ejbStore))*500. So the flow is calling 1001 queries ...Thus quering about 1000 queries will definetly take some time...
    So what is the solution????
    Any way you dont require to fire the update query as you are just viewing the data...So u can stop calling the ejbStore().
    Hence you queries will drop to half.Now how we can do this is by using the BMP.....
    The other solution is using the Sessionbean and store the data all 500 records in the Object which can be called across the n/w. This object should implements the Serializable interface and this tech is the Transfer Object feature.....
    Hope you find this useful..
    regards
    Vicky

  • Deploying CMP entity bean throws compilation error.

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

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

  • Error while deploying an entity bean

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

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

  • Error Deploying CMP Entity Bean

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

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

  • AssertionError while trying to deploy a CMP Entity bean

    Following are my deployment-descriptors -
    ===========================================================================
    ejb-jar.xml :-
    ===========
    <!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN' 'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>
    <!-- Generated XML! -->
    <ejb-jar>
    <enterprise-beans>
    <entity>
    <ejb-name>Product</ejb-name>
    <home>entities.product.ProductHome</home>
    <remote>entities.product.Product</remote>
    <local-home>entities.product.ProductLocalHome</local-home>
    <local>entities.product.ProductLocal</local>
    <ejb-class>entities.product.ProductBean</ejb-class>
    <persistence-type>Container</persistence-type>
    <prim-key-class>entities.product.ProductPK</prim-key-class>
    <reentrant>False</reentrant>
    <abstract-schema-name>ProductBean</abstract-schema-name>
    <cmp-field>
    <field-name>productID</field-name>
    </cmp-field>
    <cmp-field>
    <field-name>name</field-name>
    </cmp-field>
    <cmp-field>
    <field-name>description</field-name>
    </cmp-field>
    <cmp-field>
    <field-name>basePrice</field-name>
    </cmp-field>
    <query>
    <query-method>
    <method-name>findAllProducts</method-name>
    <method-params>
    </method-params>
    </query-method>
    <ejb-ql><![CDATA[SELECT OBJECT(o) FROM ProductBean AS o WHERE productID IS NOT NULL]]></ejb-ql>
    </query>
    <query>
    <query-method>
    <method-name>findByBasePrice</method-name>
    <method-params>
    <method-param>double</method-param>
    </method-params>
    </query-method>
    <ejb-ql><![CDATA[SELECT OBJECT(o) FROM ProductBean AS o WHERE basePrice = ?1]]></ejb-ql>
    </query>
    <query>
    <query-method>
    <method-name>findByDescription</method-name>
    <method-params>
    <method-param>java.lang.String</method-param>
    </method-params>
    </query-method>
    <ejb-ql><![CDATA[SELECT OBJECT(o) FROM ProductBean AS o WHERE description = ?1]]></ejb-ql>
    </query>
    <query>
    <query-method>
    <method-name>findByName</method-name>
    <method-params>
    <method-param>java.lang.String</method-param>
    </method-params>
    </query-method>
    <ejb-ql><![CDATA[SELECT OBJECT(o) FROM ProductBean AS o WHERE name = ?1]]></ejb-ql>
    </query>
    <query>
    <query-method>
    <method-name>findCheapProducts</method-name>
    <method-params>
    <method-param>double</method-param>
    </method-params>
    </query-method>
    <ejb-ql><![CDATA[SELECT OBJECT(o) FROM ProductBean AS o WHERE basePrice < ?1]]></ejb-ql>
    </query>
    <query>
    <query-method>
    <method-name>findExpensiveProducts</method-name>
    <method-params>
    <method-param>double</method-param>
    </method-params>
    </query-method>
    <ejb-ql><![CDATA[SELECT OBJECT(o) FROM ProductBean AS o WHERE basePrice > ?1]]></ejb-ql>
    </query>
    </entity>
    </enterprise-beans>
    <assembly-descriptor>
    <container-transaction>
    <method>
    <ejb-name>Product</ejb-name>
    <method-intf>Remote</method-intf>
              <method-name>*</method-name>
    </method>
    <trans-attribute>Required</trans-attribute>
    </container-transaction>
    </assembly-descriptor>
    </ejb-jar>
    =============================================================================
    weblogic-ejb-jar :-
    ================
    <!DOCTYPE weblogic-ejb-jar PUBLIC '-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB//EN' 'http://www.bea.com/servers/wls810/dtd/weblogic-ejb-jar.dtd'>
    <!-- Generated XML! -->
    <weblogic-ejb-jar>
    <weblogic-enterprise-bean>
    <ejb-name>Product</ejb-name>
    <entity-descriptor>
    <pool>
    </pool>
    <entity-cache>
    </entity-cache>
    <persistence>
    <persistence-use>
    <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
    <type-version>7.0</type-version>
    <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
    </persistence-use>
    </persistence>
    <entity-clustering>
    </entity-clustering>
    </entity-descriptor>
    <transaction-descriptor>
    </transaction-descriptor>
    <jndi-name>ProductBean</jndi-name>
    <local-jndi-name>LocalProductBean</local-jndi-name>
    </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    =============================================================================
    weblogic-cmp-rdbms-jar.xml :-
    =========================
    <!DOCTYPE weblogic-rdbms-jar PUBLIC '-//BEA Systems, Inc.//DTD WebLogic 8.1.0 EJB RDBMS Persistence//EN' 'http://www.bea.com/servers/wls810/dtd/weblogic-rdbms20-persistence-810.dtd'>
    <!-- Generated XML! -->
    <weblogic-rdbms-jar>
    <weblogic-rdbms-bean>
    <ejb-name>Product</ejb-name>
    <data-source-name>ConnDataSource</data-source-name>
    <table-map>
    <table-name>products</table-name>
    <field-map>
    <cmp-field>productID</cmp-field>
    <dbms-column>id</dbms-column>
    </field-map>
    <field-map>
    <cmp-field>name</cmp-field>
    <dbms-column>name</dbms-column>
    </field-map>
    <field-map>
    <cmp-field>description</cmp-field>
    <dbms-column>description</dbms-column>
    </field-map>
    <field-map>
    <cmp-field>basePrice</cmp-field>
    <dbms-column>baseprice</dbms-column>
    </field-map>
    </table-map>
    <weblogic-query>
    <query-method>
    <method-name>findByName</method-name>
    <method-params>
    <method-param>java.lang.String</method-param>
    </method-params>
    </query-method>
    </weblogic-query>
    <weblogic-query>
    <query-method>
    <method-name>findByDescription</method-name>
    <method-params>
    <method-param>java.lang.String</method-param>
    </method-params>
    </query-method>
    </weblogic-query>
    <weblogic-query>
    <query-method>
    <method-name>findByBasePrice</method-name>
    <method-params>
    <method-param>double</method-param>
    </method-params>
    </query-method>
    </weblogic-query>
    <weblogic-query>
    <query-method>
    <method-name>findExpensiveProducts</method-name>
    <method-params>
    <method-param>double</method-param>
    </method-params>
    </query-method>
    </weblogic-query>
    <weblogic-query>
    <query-method>
    <method-name>findCheapProducts</method-name>
    <method-params>
    <method-param>double</method-param>
    </method-params>
    </query-method>
    </weblogic-query>
    <weblogic-query>
    <query-method>
    <method-name>findAllProducts</method-name>
    <method-params>
    </method-params>
    </query-method>
    </weblogic-query>
    </weblogic-rdbms-bean>
    <create-default-dbms-tables>CreateOnly</create-default-dbms-tables>
    </weblogic-rdbms-jar>
    =============================================================================
    Deployment of the bean fails, with following message -
    weblogic.utils.AssertionError: ***** ASSERTION FAILED *****[ Assertion violated
    at weblogic.utils.Debug.assertion(Debug.java:47)
    at weblogic.ejb20.cmp.rdbms.Deployer.adjustDefaults(Deployer.java:240)
    at weblogic.ejb20.cmp.rdbms.Deployer.readTypeSpecificData(Deployer.java:
    365)
    at weblogic.ejb20.persistence.PersistenceType.setTypeSpecificFile(Persis
    tenceType.java:483)
    at weblogic.ejb20.persistence.PersistenceType.setupDeployer(PersistenceT
    ype.java:414)
    at weblogic.ejb20.deployer.CMPInfoImpl.setup(CMPInfoImpl.java:110)
    at weblogic.ejb20.ejbc.EJB20CMPCompiler.generatePersistenceSources(EJB20
    CMPCompiler.java:64)
    at weblogic.ejb20.ejbc.EJBCompiler.doCompile(EJBCompiler.java:245)
    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.ja
    va:701)
    at weblogic.ejb20.deployer.EJBDeployer.prepare(EJBDeployer.java:1277)
    at weblogic.ejb20.deployer.EJBModule.prepare(EJBModule.java:477)
    at weblogic.j2ee.J2EEApplicationContainer.prepareModule(J2EEApplicationC
    ontainer.java:2962)
    at weblogic.j2ee.J2EEApplicationContainer.prepareModules(J2EEApplication
    Container.java:1534)
    at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContain
    er.java:1188)
    at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContain
    er.java:1031)
    at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.
    prepareContainer(SlaveDeployer.java:2602)
    at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.createCon
    tainer(SlaveDeployer.java:2552)
    at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(S
    laveDeployer.java:2474)
    at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(Sla
    veDeployer.java:798)
    at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDepl
    oyer.java:507)
    at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDep
    loyer.java:465)
    at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHan
    dler.java:25)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
    =========================================================================
    can somebody please tell me what is it that i am missing or setting incorrectly
    thanks
    parul

    i don't know much about the assertion error...but i have fixed that by just re-configuring my classpaths
    try to check your classpaths if you've missed something
    hope this helps... =)

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

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

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

  • Error while running Client Program of Entity Bean (BMP) : javax.naming.Name

    Hi,
    I have tried an entity bean application. I am able to deploy my entity bean in WebLogic 7.0 server. But when I ran the client program I am getting the following error.
    javax.naming.NameNotFoundException : Unable to resolve 'java:comp.env/ejb/AccountBean' Resolved: ' ' unresolved : 'java:comp': remaining name 'java:comp.env/ejb/AccountBean'
    My ejb-jar.xml is as follows:
    <ejb-jar>
    <enterprise-beans>
    <entity>
    <ejb-name>AccountBean</ejb-name>
    <home>AccountHome</home>
    <remote>Account</remote>
    <ejb-class>AccountBean<ejb-class>
    <persistance-type>Bean</persistance-type>
    <prim-key-class>AccountPK</prim-key-class>
    <reentrant>False</reentrant>
    <primkey-field>AccountID</primkey-field>
    <env-entry>
    <env-entry-name>jdbc.drivers</env-entry-name>
    <env-entry-type>java.lang.String</env-entry-type>
    <env-entry-value>oracle.jdbc.driver.OracleDriver</env-entry-value>
         </env-entry>
    <env-entry>
    <env-entry-name>JDBC-URL</env-entry-name>
    <env-entry-type>java.lang.String</env-entry-type>
    <env-entry-value>jdbc:oracle:thin:@erp:1521:Oracle9i</env-entry-value>
         </env-entry>
         <ejb-ref>
                   <ejb-ref-name>ejb/AccountBean</ejb-ref-name>
                   <ejb-ref-type>Entity</ejb-ref-type>
                   <home>AccountHome</home>
                   <remote>Account</Account>
                   <ejb-link>AccountBean</ejb-link>
              <ejb-ref>
              <resource-ref>
                   <resource-ref-name>jdbc/bmp-account</resource-ref-name>
                   <resouce-ref-type>javax.sql.DataSource</resource-ref-type>
                   <res-auth>Container</res-auth>
                   <res-sharing-scope>sharable</res-sharing-sope>
              <resource-ref>
         </entity>
    </enterprise-beans>
    <assembly-descriptor>
    </assembly-descriptor>
    <ejb-jar>
    My weblogic-ejb-jar.xml is as follows:
    <weblogic-ejb-jar>
         <weblogic-enterprise-bean>
              <ejb-name>AccountBean</ejb-name>
              <entity-descriptor>
                   <pool>
                   </pool>
                   <entity-cache>
                        <cache-between-transaction>false</cache-between-transcation>
                   </entity-cache>
                   <persistance>
                   </persistance>
                   <entity-clustering>
                   </entity-clustering>
              </entity-descripto>
              <transaction-descriptor>
              </transaction-descriptor>     
              <reference-descriptor>
                   <resource-descriptor>
                        <res-ref-name>jdbc/bmp-accoun</res-ref-name>
                        <jndi-name>MariJNDI</jndi-name>
                   </resource-descriptor>
                   <ejb-reference-descriptor>
                        <ejb-ref-name>ejb/AccountBean</ejb-ref-name>
                        <jndi-name>AccountBean</jndi-name>
                   </ejb-reference-descriptor>
              </reference-descriptor>
              </weblogic-enterprise-bean>
         </weblogic-ejb-jar>
    My Client Program is as follows:
    import javax.ejb.*;
    public class Client{
    public static void main(String[] args){
    Account account = null;
         try{
         Context = new InitialContext(System.getProperties());
         AccountHome home = (AccountHome) ctx.lookup("java:comp/env/ejb/AccountBean");
         home.create("123-456-7890","John");
         }catch(...){
    Any help is appreciated.
    Thanks in advance.
    Regards,
    Mari.

    Hi,
    My Client Program is as follows:
    import javax.ejb.*;
    public class Client{
    public static void main(String[] args){
    Account account = null;
         try{
    Context = new
    Context = new
    InitialContext(System.getProperties());
    AccountHome home = (AccountHome)
    AccountHome)
    ctx.lookup("java:comp/env/ejb/AccountBean");
         home.create("123-456-7890","John");
         }catch(...){
    }What are the System Properties? Are you running the client remotely? Are you running the client as a stand alone Java app or using the Weblogic's Client Runner? 'java:comp' as the jndi name is usually used when the client runs inside the container... But it doesn't seem to be the case.
    Kexkey

  • Problem in running entity bean examples

    I am trying to run a entity bean example in my bea ,earlier i was getting the error
    that the data source name could not be found ,and so i replaced the data source
    name in my .xml file
    as cgDataSource and now i am not finding that error ,and the
    jsp page is also displayed ,but the data is not inserted into
    my database table.
    I tried it using my personal domain ,and i edited the weblogic.properties file
    also ,but now i am getting the error that the data source name could not be found

    Hi,
    An error saying a data source can't be found indicates one of two problems:
    1. The data source name in your cmp descriptor doesn't match the JNDI name of
    the actual data source. To rule this out, verify the names are indeed the same.
    2. The data source didn't deploy. Usually this is caused by the underlying connection
    pool not deploying. Look in you server log to verify the data source and the
    underlying connection pool both deployed properly.
    - Matt
    "Vipin Nair" <[email protected]> wrote:
    >
    I am trying to run a entity bean example in my bea ,earlier i was getting
    the error
    that the data source name could not be found ,and so i replaced the data
    source
    name in my .xml file
    as cgDataSource and now i am not finding that error ,and the
    jsp page is also displayed ,but the data is not inserted into
    my database table.
    I tried it using my personal domain ,and i edited the weblogic.properties
    file
    also ,but now i am getting the error that the data source name could
    not be found

Maybe you are looking for

  • Disconnection from cellular network

    since i've bought my new 3gs this week it keeps disconnecting from the network if i keep it without usage for about some time ..approx 30 min or more....when some one calls me he finds me out of service and when i call some one the call fails and i h

  • Adjustment brush leaves speckled edge

    I've noticed this in LR4 and now in LR5, often times when I just use the adjustment brush to increase or decrease the exposure the edge is speckled. It looks a lot like the "desolve" blending mode in PS. It doesn't happen all the time but it looks te

  • TS2446 How do i get my security answers which I have entered while creating my account

    How can I retrive my security answers which I had given while creating my account

  • C program: Runtime error from GetStaticMethodId()

    I am new to Java and need help with ..... I want to call a java method (native) from legacy C code. The java code has to return a Hashtable to the C code. My java works and I wrote another java file to call it. That also works fine and I can display

  • HT1338 Java installation to Mac 10.8.3 problem

    I installed JAVA to my Mac 10.8.3. It does not show up in the preferences pannel nor the utilities App? whyJava installation issue? Installed it from Oracle and Apple. restarted the mac and nothing shows up. Need it to access my CMS.  ANy ideas why i