Problems while defining EJB relations for container managed bean

I am having a problem while trying to create my relations for my container managed bean.
My Database schema is:
Order table
order_id
message
WorkItem table:
order_id
item_id
message
I have defined my OrderBean to have:
@LocalMethod()
@CmrField
public abstract Collection getCmWorkItemsCmr();
@LocalMethod()
public abstract void setCmWorkItemsCmr(Collection workItems);
I am not sure how to define my relation for my class:
@Relation(cmrField = "cmWorkItemsCmr", multiplicity = Relation.Multiplicity.MANY, name = "Orders-CmWorkItems")
An order can have many workitems. I am not sure how to fill in the rest for foreign Key jointable and such.
Any help pointing me in the right direction would be helpful.
Thanks,
Ian

I am having a problem while trying to create my relations for my container managed bean.
My Database schema is:
Order table
order_id
message
WorkItem table:
order_id
item_id
message
I have defined my OrderBean to have:
@LocalMethod()
@CmrField
public abstract Collection getCmWorkItemsCmr();
@LocalMethod()
public abstract void setCmWorkItemsCmr(Collection workItems);
I am not sure how to define my relation for my class:
@Relation(cmrField = "cmWorkItemsCmr", multiplicity = Relation.Multiplicity.MANY, name = "Orders-CmWorkItems")
An order can have many workitems. I am not sure how to fill in the rest for foreign Key jointable and such.
Any help pointing me in the right direction would be helpful.
Thanks,
Ian

Similar Messages

  • Problem while postings a MIRO for partial deliveries.

    Hi,
    We ar facing a problem
    while posting a Miro for the Planned delivery costs for the import orders.
    when we receive an item in partial consignment of the same order.
    The system will allow for the first time to post the deliver cost, after this the MIGO and MIRO will be done and cycle will be completed.
    For the second remaining consignment, the system is not allowing to post the Miro itself for the delivery costs.
    IT is giving an error message."Quantity invoiced greater than goods receipt quantity."
    We have disable GR based IV in PO
    Provide me the solution.
    Sunil

    hi,
    i hope you have done the following steps
    1) for import do MIRO first for the custom duties ( CVD, Edu Cess, S& H Cess on CVD) by selecting planned delivery cost.
    2) J1IEX ( capture) referencing material document number of MIRO.
    3) MIGO of the qty received.
    4) J1IEX ( post).
    follow the same steps for the next consignment.
    what I see is that you have mentioned the full qty against the value in MIRO.
    say ur PO qty is 10 and your partial shipment is of qty 5.
    then in first MIRO entry enter qty as 5 not 10.
    pl check your material documents of MIRO and MIGO and see what qty you have entered.
    Thanks and regard
    Rajesh

  • Problem While Defining  "VALUE SET"

    Dear All,
    I am finding problems while defining "Value Set".
    I wanted to select "DISTINCT" Column from a particular Table.
    It is not allowing me to select distinct Column.
    Is there any other alternative ??

    Hi Tarak,
    Create a view selecting distinct values and then use this view as a table in your value set.
    Vishal

  • Container managed bean persistence queries

    Hi,
    I want to know where the container generated java sources and
    classes for the container managed beans will be sotred as i want
    to look out the sql queries that is not inserting and updating
    the values into the tables.
    As well i want to refer how the bean persistence is handled.
    thanks
    kumar

    Hi,
    I want to know where the container generated java sources and
    classes for the container managed beans will be sotred as i want
    to look out the sql queries that is not inserting and updating
    the values into the tables.
    As well i want to refer how the bean persistence is handled.
    thanks
    kumar

  • @EJB annotation in JSF managed beans not working

    Hi all,
    I've been trying to get the @EJB annotation to work in a JSF manged bean without success.
    The EJB interface is extremely simple:
    package model;
    import javax.ejb.Local;
    @Local
    public interface myEJBLocal {
    String getHelloWorld();
    void setHelloWorld(String helloWorld);
    and the bean code is simply:
    package model;
    import javax.ejb.Stateless;
    @Stateless
    public class myEJBBean implements myEJBLocal {
    public String helloWorld;
    public myEJBBean() {
    setHelloWorld("Hello World from myEJBBean!");
    public String getHelloWorld() {
    return helloWorld;
    public void setHelloWorld(String helloWorld) {
    this.helloWorld = helloWorld;
    When I try to use the above EJB in a managed bean, I only get a NullPointerException when oc4j tries to instantiate my managed bean. The managed bean looks like:
    package view.backing;
    import javax.ejb.EJB;
    import model.myEJBLocal;
    import model.myEJBBean;
    public class Hello {
    @EJB
    private static myEJBLocal myBean;
    private String helloWorld;
    private String helloWorldFromBean;
    public Hello() {
    helloWorld = "Hello from view.backing.Hello!";
    helloWorldFromBean = myBean.getHelloWorld();
    public String getHelloWorld() {
    return helloWorld;
    public void setHelloWorld(String helloWorld) {
    this.helloWorld = helloWorld;
    public String getHelloWorldFromBean() {
    return helloWorldFromBean;
    Am I missing something fundamentally here? Aren't you supposed to be able to use an EJB from a JSF managed bean?
    Thanks,
    Erik

    Well, the more I research this issue, the more confused I get. There have been a couple of threads discussing this already, and in this one Debu Panda states that:
    "Support of injection in JSF managed bean is part of JSF 1.1 and OC4J 10.1.3.1 does not support JSF 1.1"
    10.1.3.1 Looking up a session EJB with DI from the Web tier
    But if you look in the release notes for Oracle Application Server 10g R3, it is explicitly stated that JSF 1.1. is supported. So I'm not sure what to believe.
    I've also tried changing the version in web.xml as described here:
    http://forums.java.net/jive/thread.jspa?threadID=2117
    but that didn't help either.
    I've filed a SR on Metalink for this, but haven't got any response yet.
    Regards,
    Erik

  • JMS Foreign Provider using XAConnectionFactory for Container Managed Trans

    Hello, we've been running some proof of concepts using Weblogic 10.3 with a JMS Foreign Provider attached to MQSeries 7.
    We created a very simple MDB to read a message and output it's content.
    We created a bindings file with a Connection Factory (without XA)
    The question I have is that when I set the Transaction Management to Container and Transaction Attribute to "Required" , does Weblogic automatically look for a XAQueueConnectionFactory? We get the error below:
    [EJB:011013]The Message-Driven EJB attempted to connect to the JMS connection factory with the JNDI name: OP_CF. However, the object with the JNDI name: OP_CF is not a JMS connection factory. NestedException Message is :com.ibm.mq.jms.MQQueueConnectionFactory cannot be cast to javax.jms.XAConnectionFactory>
    When we set the transacation to Bean Managed or we set to Container Managed but set the attribute to "NotSupported" it works fine.
    My goal is to have a MDB that has Container Managed Transactions and "Requires" Attribute, but only particpates in a local transaction and does not need the overhead of XA. It will read from a Foreign MQ manager Queue, process and then write back to the same Foreign MQ manager(different queue), so only one resource (MQ) is used.
    If we set the above settings, it seems that a XAConnectionFactory is required. Is that true?

    -- If you do not enable the container transaction, then the MDB connection factory does not need to be an XA connection factory.
    -- If the application is performing messaging operations, and wants to use locally managed transactions, then you have a variety of options. These are all standard JMS:
    * Use an XA connection and XA session. Begin JTA transactions before performing JMS operations, and call commit or rollback on the JTA transaction after performing the JMS operations. For foreign vendors, you must take extra steps to ensure that the vendor enlists with the WebLogic transaction -- typically by using WebLogic resource reference wrappers.
    * Use the standard JMS API "transacted session" on a non-XA session -- the transaction will be local to the session (this is extremely similar to JDBC local transactions).
    * Use a non-transacted session. Sends will occur immediately. Receive messages will be acknowledged immediately for auto-ack sessions, or will not for non-ack.
    -- Note that if a transaction only includes a single operation, there's no need for XA or non-transacted sessions.
    -- For more information on transactions and integration, I highly recommend reading our [ Integrating Remote JMS Providers | http://download.oracle.com/docs/cd/E15523_01/web.1111/e13727/interop.htm#JMSPG553 ] FAQ. I also very highly recommend purchasing a copy of [ Professional Oracle WebLogic Server | http://www.amazon.com/Professional-Oracle-WebLogic-Server-Patrick/dp/0470484306/ref=sr_1_1?ie=UTF8&s=books&qid=1252088885&sr=8-1 ], and of course reviewing our [ JMS Information Roadmap | http://download.oracle.com/docs/cd/E15523_01/web.1111/e14529/messaging.htm#sthref23 ].
    -- Finally, you may also want to consider replacing some MQ usage with WebLogic JMS. WL JMS is a heavily adopted messaging vendor, and for obvious reasons, tends to integrate especially well with the WebLogic app server.
    Hope this helps,
    Tom

  • Support for Container Managed XA Txn?

    I have been searching the online documentation but have been unable to
              determine if WLS 6.0 Container Managed Transactions include support for XA
              transactions. That is, the EJB container will start a distributed
              transaction. Or, it is necessary to use Bean Managed Transactions.
              

    Carl Lawstuen wrote:
              > I have been searching the online documentation but have been unable to
              > determine if WLS 6.0 Container Managed Transactions include support for XA
              > transactions. That is, the EJB container will start a distributed
              > transaction.
              Yes
              > Or, it is necessary to use Bean Managed Transactions.
              No.
              -- Rob
              

  • BI 7.0 Problem while executing query on Infoset containing Infocubes

    Hi All,
    While executing quey on infoset containing infocubes we are getting following error message.
    EError while reading data; navigation is possible
    EError reading the data of InfoProvider A2PPI103
    EError when generating the SQL statement
    E[IBM][CLI Driver][DB2] DSNT408I SQLCODE = -204, ER ROR:  SAPR3.T00001 IS
    I>> Row: 11 Inc: RAISE_READ_ERROR Prog: CL_RSDRV_VPROV_BASE
    any idea what could be the reason ?

    Hi All,
    it's very interesting the question of HariPrasad because from yesterday i have the same problem in  a similar environment:
    @5C\QError@     Error reading the data of InfoProvider ZC1ITS02
    @5C\QError@     Error when generating the SQL statement
    @5C\QError@     [IBM][CLI Driver][DB2] DSNT408I SQLCODE = -204, ERROR:  SAPBWD.T00002 IS AN UNDEFINED NAME  DSNT41 8I SQLSTATE   = 42704 SQLSTA
    May the SQL generator does'nt work well whit cube and DB2 ??
    If i execute the Infoset with the debbugging option i can see the SQL code:
    ...........FROM "/BIC/PZC1CPROD0" "T00001",
    "T00002"
    WHERE................
    the first table is an infoobject, the second one is the "missing" cube...............
    Hari, did you solve the problem in the meantime ??
    Thank's to all, Ray.

  • Bins problem while creating goods receipt for production order.

    Hi All,
              I am facing a problem with selection of bins while creating goods receipt for production order in transaction MB31 and MBBE.
    The order of filling bins is with respect to storage Unit not by document no, Please suggest something.
    The scene is like that.
    The bins are not filled in the proper sequence, the system checks for the empty bins and filled those later on.
    like this,.
    Typ StorageBin  SC SS    Stock Avail.st BUn GR Date    DocumentNo Storage Unit         Time   
    SLoc Batch      Re IA PutawayS Pick qty Cert. No.                                                                               
    VN1 106A088                 0        0  CS  01/25/2010    4739297 1005721391           10:00:59
    100  0001020069            60        0                                                        
    VN1 107B076                 0        0  CS  01/25/2010    4739298 1005721392           10:01:01
    100  0001020069            60        0                                                        
    VN1 108B076                 0        0  CS  01/25/2010    4739299 1005721393           10:01:04
    100  0001020069            60        0                                                        
    VN1 109A077                 0        0  CS  01/25/2010    4739300 1005721394           10:01:06
    100  0001020069            60        0                                                        
    VN1 110B079                 0        0  CS  01/25/2010    4739301 1005721395           10:01:08
    100  0001020069            60        0                                                        
    VN1 106B088                 0        0  CS  01/25/2010    4739302 1005721403           10:01:11
    100  0001020069            60        0                                                        
    VN1 123B158                 0        0  CS  01/25/2010    4739303 1005721389           10:01:13
    100  0001020069            60        0                                                        
    VN1 124A160                 0        0  CS  01/25/2010    4739304 1005721390           10:01:15
    100  0001020069            60        0                                                        
    VN1 118A133                 0        0  CS  01/25/2010    4739305 1005721396           10:01:17
    100  0001020069            60        0                                                        
    VN1 119A128                 0        0  CS  01/25/2010    4739306 1005721397           10:01:20
    100  0001020069            60        0                                                        
    VN1 120B162                 0        0  CS  01/25/2010    4739307 1005721398           10:01:22
    100  0001020069            60        0                                                        
    VN1 121B159                 0        0  CS  01/25/2010    4739308 1005721399           10:01:24
    100  0001020069            60        0                                                        
    VN1 122B159                 0        0  CS  01/25/2010    4739309 1005721400           10:01:26
    100  0001020069            60        0                                                        
    VN1 123B159                 0        0  CS  01/25/2010    4739310 1005721401           10:01:29
    100  0001020069            60        0                                                        
    VN1 124B160                 0        0  CS  01/25/2010    4739311 1005721402           10:01:31
    100  0001020069            60        0                                                        
    Thnks you,
    Anmol.
    Edited by: anmol112 on Jan 25, 2010 10:34 PM

    no replay, clossing threat.

  • Problem in adding Custom Provider for Work Management Service

    Hello,
    I'm facing an issue in adding custom provider for work management service. As you are aware, Work management service is a Provider model and we
    can integrate with other systems by adding custom providers. So with that confidence, i have started writing a connector as mentioned below.
    Step - 1: Added new provider xml in the below path
    "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\CONFIG\WorkManagementService\Providers"
    Provider Name: provider.bizagitasklist
    Provider XML Content: 
    <Provider ProviderKey="DAA52AF3-A147-4086-8C0C-82D2F83A089D" OverrideProviderKey="" Assembly="adidas.TaskProvider, Version=1.0.0.0, Culture=neutral, PublicKeyToken=5d6f3e6be60a351b" > </Provider>
    Step -2: Added a class which inherits "IWmaTaskProvider" and implemented the override methods.
    public class BizAgiTaskListProvider : IWmaTaskProvider
    public string LocalizedProviderName
    get { return "BizAgiTaskListProvider"; }
    public string ProviderName
    get { return "BizAgiTaskListProvider"; }
    public Microsoft.Office.Server.WorkManagement.CalloutInfo GetCalloutInfo(IWmaTaskContext context, string taskExternalKey, string locationExternalKey)
    return null;
    public DashboardExtensionInfo GetDashboardExtensionInfo(IWmaBasicProviderContext context)
    return new DashboardExtensionInfo { ClassName = "SP.UI.SharePointExtension" };
    public BulkEditResult HandleBulkEdits(IWmaTaskContext context, BulkEdit updates)
    return null;
    public TaskEditResult HandleTaskEdit(IWmaTaskContext context, BaseAggregatorToProviderTaskUpdate taskUpdate)
    return null;
    public void RefreshSingleTask(IWmaTaskRefreshContext context, string externalKey)
    public void RefreshTasks(IWmaTaskRefreshContext context)
    //context.WriteProviderCustomData(
    Step – 3: Written a class to fetch the tasks from BizAgi System which has method to provide the task data.
    But I’m not able to feed those tasks in the class written in Step – 2 as I’m able to find any method which will take Tasks as Input and I’m not
    sure about the format of tasks.
    I’m able to debug the provider, and the breakpoint hitting in only one method and two properties.
    (LocalizedProviderName, ProviderName, GetDashboardExtensionInfo).
    Can you please help me to proceed further in implementing the above solution?
    Best Regards
    Mahesh

    Hi Mahesh,
    Although the implementation of work management service application is based on the provider model, I reckon the current SP 2013 RTM does not support custom providers. Only SharePoint task lists, Project server and MS Exchange are supported for now.
    Regards,
    Yatin

  • Problem While creating the related entity DocFlowSet

    Hi,
    i am trying to create a Business Transaction and attach it to the another transaction.
    I am creating the Transaction T1 using the factory methods and I am facing issues while creating the related entity DocFlowSet to attach T1 as a follow on document to T0.
    i am using the model DocFlowSingle and passing the parameters like.
    ObjKeyA GUID of T0
    OBJTYPEA
    OBJKEYB GUID of newly created transaction T1
    OBJTYPEB
    RELKING
    RELATEDGUID: GUID of T1
    RELATIONID GUID: creating a new 22 character GUID and then assigning it
    But still I am not able to create the related entity. Can any one please help me in resolving this.
    Thanks,
    Ravi G

    Resolved by self

  • How to add a finder method in the container manager Bean in the weblogic6.1

    in the environment jbuilder6 andweblogic6.1,use container manager entity Bean,it can automatic generate the findAll() method,I want to add a new method to find an element in the home interface,such as findByName(),name is a element of a table of the database.in the weblogic-cmp-rdbms-jar.xml,this is part of the fiile:
    <finder>
    <finder-name>findAll</finder-name>
    <finder-query><![CDATA[ (= 1 1) ]]></finder-query>
    </finder>
    <finder>
    <finder-name>findByName</finder-name>
    <finder-param>java.lang.String</finder-param>
    <finder-query><![CDATA[ (=name $name) ]]></finder-query>
    </finder>
    It can successfully compile the findAll(),but it is wrong when compile the findByName(),as follows
    "www.ejbgrpx": Method Name: findByName
    "www.ejbgrpx": Invalid specifications for a WebLogic RDBMS CMP EJB.
    "www.ejbgrpx": ERROR: Error from ejbc: weblogic.ejb20.cmp11.rdbms.finders.IllegalExpressionException:
    "www.ejbgrpx": While trying to process Finder
    "www.ejbgrpx": Parameter Types: (java.lang.String)
    "www.ejbgrpx": WebLogic Query: (= name $name)
    "www.ejbgrpx": Finder Expressions: ()
    "www.ejbgrpx": Could not parse WLQL expression: (= name $name) null
    "www.ejbgrpx": ERROR: ejbc found errors
    thank you

    The finder methods that you are referring to are only simple finder methods. If you would like to add specialized finder methods, you can make your entity bean with bean managed persistence and not container managed. If you are using EJB 2.0, your entity bean with container managed persistence can use EJB QL for finder methods. You can search for this topic and/or download the EJB 2.0 specifications
    Hope this helps

  • EJB Injection in Seperated Managed Bean

    Hi All,
    I have a JSF project consisting of a number of different WARs, containing the Web logic, and a bunch of different JARs, containing the application logic; which are deployed together in a single EAR file. Thus far this approach has worked excellently, but I've now run into a problem. I would like to have a managed session-scoped bean which should be available to all the WARs' classes so that they can store cross-application data in it (for example the user's name and other details). I can do this by packaging that session-scoped bean, along with its faces-config.xml, into a JAR which is deployed through the EAR. This works fine, but EJB Injection in that session-scoped bean doesn't work - my bean interface instance always contains null.
    Is there someway that I can have EJB Injection in this managed session-scoped bean contained in a JAR? I realize that EJB Injection requires a container, but seeing as it is a managed bean, even though it isn't inside a WAR, I thought this should work fine?
    Thank you,
    Ristretto

    We tried almost every permutation and combination, but it did not work without that dummy servlet.
    Then we had to look for a cleaner solution and we found one.
    We are now using spring injection, to get the EJB injection in our session managed bean. This way the code is extensible and cleaner.
    In future if you want something else(other than ejb lets say a web service), you will just change the Spring config file and it would't break anything.
    Edited by: desu on Mar 14, 2008 4:20 AM

  • Container-managed / bean-managed transaction demarcation

    I am trying to make sure I understand container-managed and bean-managed transaction demarcation and in particular where you have one bean calling another bean. What happens where one of the beans has container-managed transaction demarcation and the other bean-managed transaction demarcation. In fact the initial question to ask is, is this allowed?
    Lets use an application scenario to illustrate the issue. The application has a payment transaction. Payments can be received in one of two ways:
    1. As a payment at a branch where the individual payment is processed on a client application and resulting in the processing of a single payment transaction.
    2. As a batch of payments received from a bank containing, potentially, thousands of payment transactions.
    The proposed implementation for this uses two session beans. The first is a Payment session bean that implements the business logic as appropriate calling entity beans to persist the change. The second is a BatchPayment session bean. This processes the batch of payment transactions received from the bank. The BatchPayment reads through the batch of payments from a bank calling the Payment session bean for each payment transaction.
    Lets look at the transactional properties of both session beans. In order to support the client application the Payment session bean can implicitly enforce transactional integrity and is therefore set to container-managed transaction demarcation. However the BatchPayment session bean will want to explicitly specify transaction demarcation for performance reasons. The transactional "commit" process is relatively expensive. When processing a large batch of transactions rather than performing a commit after every transaction is processed we want to perform the commit after a number of transactions have been processed. For example, we may decide that after every 100 transactions have been processed we commit. The processing will have a shorter elapsed time as we have not had to perform 99 commit processes. So the BatchPayment session bean will want to explicitly specify its transaction demarcation and will therefore be defined with bean-managed transaction demarcation.
    How would this be implemented? A possible solution is:
    Payment session bean implemented with container-managed transaction demarcation with transaction scope set to Required.
    BatchPayment session bean implemented with bean-managed transaction demarcation with transaction scope set to Required.
    When the client application is run it calls the Payment bean and the container-managed transaction demarcation ensures the transactional integrity of that transaction.
    When a BatchPayment process is run it explicitly determines the transaction demarcation. Lets say that after every 100 Payment transactions (through 100 calls to the Payment session bean) have been processed the BatchPayment bean issues a commit. In this scenario however we have mixed container-managed and bean-managed transaction demarcation. Hence my original question. Can container-managed and bean-managed transaction demarcation be mixed? If not how is it possible to implement the requirements as described above?
    Thanks for any thoughts.
    Paul

    BatchPayment session bean implemented with bean-managed transaction demarcation with transaction scope set to Required.Didn't quite understand this sentence.... if it's BMT it has no declarative transaction attributes such as "Required"....
    Anyway, first of all I'll have to ask, Why at all would you want to commit in the middle of the business method? to get as much through as possible before a potential crash? :-)
    Can container-managed and bean-managed transaction demarcation be mixed?Yes, of course. Just remember that the "direction" you are refering to ->
    a BMT SB that propagates it's transaction to a method in a CMT SB that is demarcated with "Required" is the simplest case. If it were "reversed", or for that matter any BMT that might be called within an active transaction context must perform logic to manipulate the transaction state. For instance(and most common case), checking to see if a transaction is active and if so not to do anything(just use the one that is already active).
    If not how is it possible to implement the requirements as described above?You could also implement this scenario with CMTs all the way through. your BatchPayment SB could consist of two methods, one (say, execute(Collection paymentsToExecute) ) with "Supports", and another(say executeBatchUnit(Collection paymentsToExecute, int beginIndex, int endIndex) ) with "RequiresNew".
    then have the first just call the other with indexes denoting each time a group of payments.
    Still, it does seem more suitable using BMT for these kind of things.....
    Hope this helped....

  • JSF - Best Practice For Using Managed Bean

    I want to discuss what is the best practice for managed bean usage, especially using session scope or request scope to build database driven pages
    ---- Session Bean ----
    - In the book Core Java Server Faces, the author mentioned that most of the cases session bean should be used, unless the processing is passed on to other handler. Since JSF can store the state on client side, i think storing everything in session is not a big memory concern. (can some expert confirm this is true?) Session objects are easy to manage and states can be shared across the pages. It can make programming easy.
    In the case of a page binded to a resultset, the bean usually helds a java.util.List object for the result, which is intialized in the constructor by query the database first. However, this approach has a problem: when user navigates to other page and comes back, the data is not refreshed. You can of course solve the problem by issuing query everytime in your getXXX method. But you need to be very careful that you don't bind this XXX property too many times. In the case of querying in getXXX, setXXX is also tricky as you don't have a member to set. You usually don't want to persist the resultset changes in the setXXX as the changes may not be final, in stead, you want to handle in the actionlistener (like a save(actionevent)).
    I would glad to see your thought on this.
    --- Request Bean ---
    request bean is initialized everytime a reuqest is made. It sometimes drove me nuts because JSF seems not to be every consistent in updating model values. Suppose you have a page showing parent-children a list of records from database, and you also allow user to change directly on the children. if I hbind the parent to a bean called #{Parent} and you bind the children to ADF table (value="#{Parent.children}" var="rowValue". If I set Parent as a request scope, the setChildren method is never called when I submit the form. Not sure if this is just for ADF or it is JSF problem. But if you change the bean to session scope, everything works fine.
    I believe JSF doesn't update the bindings for all component attributes. It only update the input component value binding. Some one please verify this is true.
    In many cases, i found request bean is very hard to work with if there are lots of updates. (I have lots of trouble with update the binding value for rendered attributes).
    However, request bean is working fine for read only pages and simple binded forms. It definitely frees up memory quicker than session bean.
    ----- any comments or opinions are welcome!!! ------

    I think it should be either Option 2 or Option 3.
    Option 2 would be necessary if the bean data depends on some request parameters.
    (Example: Getting customer bean for a particular customer id)
    Otherwise Option 3 seems the reasonable approach.
    But, I am also pondering on this issue. The above are just my initial thoughts.

Maybe you are looking for