WL 7.0 Fault-tolerant stateful beans. (Newbie)

Hello,
I was wondering if in WL 7.0 there is a way to make a stateful session
bean automatically persist its state without having to be passivated
as a whole.
The bean that I need to build would persist its state to a DB each
time a remote method call is executed in it. The purpose is to make
this bean fault tolerant without having to serialize the whole object
graph by using passivation.
I heard that WL 7.0 has a new feature that can make this happen but I
can't seem to find any info on this. Could anyone point me into the
right search path?
Thanks in advance.
Mateo.

I'm not aware of such feature in WLS 7.0 EJB container.
Where did you heard about it? If at all there's a feature you should
be able to locate at our online docs.
Here's the link
http://e-docs.bea.com/wls/docs70/ejb/index.html
Kumar
Mateo wrote:
Hello,
I was wondering if in WL 7.0 there is a way to make a stateful session
bean automatically persist its state without having to be passivated
as a whole.
The bean that I need to build would persist its state to a DB each
time a remote method call is executed in it. The purpose is to make
this bean fault tolerant without having to serialize the whole object
graph by using passivation.
I heard that WL 7.0 has a new feature that can make this happen but I
can't seem to find any info on this. Could anyone point me into the
right search path?
Thanks in advance.
Mateo.

Similar Messages

  • Fault tolerance in Weblogic

    I am working on the Servlet and EJB based architecture on WebSphere
    Application server. The application has stringent Fault Tolerance
    requirement i.e. if the http/application server goes down then also the
    users are not effected.
    I will appreciate any help in this regard i.e.
    1. When one server of the server goes down then the same session object
    should be accessible through some other server so that the user does not
    get to know of it.
    2. In case of EJBs, if the application server goes down then how the
    stateful EJB can be available on some other machine
    3. Anything on the deployment scenerio
    Thanx
    Bharat Bansal

    <[email protected]> wrote in message
    news:[email protected]..
    I am working on the Servlet and EJB based architecture on WebSphere
    Application server. The application has stringent Fault ToleranceI doubt BEA is going to give you much help on IBM's WebSphere product. Boy
    are you in the wrong newsgroup.

  • Fault tolerance in WEbLogiv

    I am working on the Servlet and EJB based architecture on weblogic
              Application server. The application has stringent Fault Tolerance
              requirement i.e. if the http/application server goes down then also the
              users are not effected.
              I will appreciate any help in this regard i.e.
              1. When one server of the server goes down then the same session object
              should be accessible through some other server so that the user does not
              get to know of it.
              2. In case of EJBs, if the application server goes down then how the
              stateful EJB can be available on some other machine
              3. Anything on the deployment scenerio
              Thanx
              Vipul Rastogi
              

    Hi Vipul,
              Please do not crosspost (post the same question in multiple newsgroups).
              Peace,
              Cameron Purdy
              Tangosol Inc.
              << Tangosol Server: How Weblogic applications are customized >>
              << Download now from http://www.tangosol.com/download.jsp >>
              <[email protected]> wrote in message
              news:[email protected]..
              > I am working on the Servlet and EJB based architecture on weblogic
              > Application server. The application has stringent Fault Tolerance
              > requirement i.e. if the http/application server goes down then also the
              > users are not effected.
              >
              > I will appreciate any help in this regard i.e.
              > 1. When one server of the server goes down then the same session object
              >
              > should be accessible through some other server so that the user does not
              >
              > get to know of it.
              >
              > 2. In case of EJBs, if the application server goes down then how the
              > stateful EJB can be available on some other machine
              >
              > 3. Anything on the deployment scenerio
              >
              > Thanx
              >
              > Vipul Rastogi
              >
              

  • Problem with Maintaining State with EJB3 Stateful Bean

    I'm a newbie in EJB3. I've wrote a Stateful bean together with JSF as the UI tier. Below is my Stateful bean.
    package com.dhydrated.business;
    import com.dhydrated.entity.User;
    import java.io.Serializable;
    import javax.ejb.Remove;
    import javax.ejb.Stateful;
    @Stateful
    public class LogonBean
            implements LogonRemote, Serializable {
        private User user;
        public void setUser(User user) {
            this.user = user;
        public User getUser() {
            return user;
    }In above code, I'm storing User object as the private variable. The problem is, whenever I set the User object in the 1st page, I'm unable to retrieve the same user object in the 2nd page. Seems like my Stateful bean does not saved the state or conversation of the bean.
    Appreciate if someone could tell me on how to save the state of above Stateful bean. Is there some other conf. that I might missed out?

    I was find good solution! =)
    *** JScript ***
    <script TYPE="text/javascript">
    <!--
    function popup(myform)
    if (! window.focus) return true;
    var d = new Date();
    windowname = d.getTime();
    window.open('', windowname, 'top=100,left=100,height=200,width=200,location=no,resizable=no,scrollbars=no,status=no');
    myform.target=windowname;
    return true;
    -->
    </script>
    *** JSF ***
    <h:form onsubmit="popup(this)">
    <h:commandButton value="Press Me" actionListener="#{sessionBean.resetCursor}" action="selectElemList" />
    </h:form>
    But it work only with <h:commandButton> tag. If you try to use <h:commandLink>, then 'onsubmit' attribute by <form> tag don't work.
    If you know how make necessary functional with <h:commandLink> tag, please let me know.

  • EJB 3.0 Stateful bean not saving state while Stateless bean is !!!

    My Stateless bean is as follow:
    package test;
    import javax.ejb.Stateless;
    @Stateless(mappedName = "StatelessBean")
    public class StatelessBean implements StatelessBeanRemote {
         int counter;
         public void increment(){
              System.out.println("Stateless counter value:"+counter);
              counter++;
    My Stateful bean is as follow:
    package test;
    import javax.ejb.Stateful;
    @Stateful(mappedName = "StateFulBean")
    public class StateFulBean implements StateFulBeanRemote {
         int counter;
         public void increment(){
              System.out.println("Stateful counter value:"+counter);
    Client is as follows:
    package test;
    import java.util.Hashtable;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    public class TestClient {
         public static void main(String[] args) {
              Hashtable hashtable = new Hashtable();
              hashtable.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
              hashtable.put(Context.PROVIDER_URL, "t3://localhost:7001");
              InitialContext ic;
              try {
                   ic = new InitialContext(hashtable);
                   StateFulBeanRemote stateFulBeanRemote = (StateFulBeanRemote)ic.lookup("StateFulBean#test.StateFulBeanRemote");
                   stateFulBeanRemote.increment();
                   StatelessBeanRemote statelessBeanRemote = (StatelessBeanRemote)ic.lookup("StatelessBean#test.StatelessBeanRemote");
                   statelessBeanRemote.increment();
              } catch (Exception e) {
                   e.printStackTrace();
    The output i am getting after running the client twice is as follows:
    //first time
    Stateful counter value:0
    Stateless counter value:0
    //second time
    Stateful counter value:0
    Stateless counter value:1
    Shouldn't the counter values be incremented in case of Stateful bean and remain the same for Stateless bean. But the output that I am getting is the complete opposite !!!
    Can anyone please explain this confusing behavior of stateless and stateful ejb 3.0 beans.

    868664 wrote:
    Can anyone please explain this confusing behavior of stateless and stateful ejb 3.0 beans.It is very simple: a stateless bean is ASSUMED to be stateless; you cannot keep state in a stateless bean as a contractual rule. That doesn't mean that you will fail to keep state in them at least for a little while, they are still only Java objects. Generally stateless EJBs are pooled, so you may get the same instance each time you use such an EJB, but you may just get another one. It is not dependable and the rules say don't do it - so don't do it.
    A stateful bean is tied to a single client, and so can be used by a client to keep state in it. Since You are running the client application twice you are operating with two different clients and so you will get a new stateful bean each time and your code will keep printing 0. However there is also a bug in your code:
    public void increment(){
    System.out.println("Stateful counter value:"+counter);
    }You are not incrementing anything.

  • Load Balancing & Fault tolerance in Oracle Apps

    Hello
    I am pretty new to Oracle Apps and Oracle 9iAS
    We are trying to asked to find out the ways of deplying load balancing and fault tolerance in Oracle Apps
    I have gone thru the following articles of metalink and some more from google
    Configuring Web Cache as a Load Balancer for Application Servers
    Create new middle tier node in existing Apps 11i environment using cloning and then load balance
    Integrating and using Web Cache with Forms 9i for Load Balancing
    Running Multiple OC4J Instances From a Single Install of 9iAS 1.0.2.2
    LOAD BALANCING ORACLE APPLICATIONS ON UNIX
    Load Balancing in 11i
    OC4J Clustering Setup
    OC4J Load Balancing for Forms 9i
    Setting up 11i E-Business suite using a hardware load balancer
    Sharing an APPL_TOP in Oracle Applications 11i
    In Oracle Apps Concepts pdf, found that
    Load balancing occurs when there are multiple installations of web server, forms server, reports server, concurrent manager server etc
    Lets consider forms server component of middle tier
    Can there be multiple INSTANCES of forms server within SINGLE INSTALLATION ???
    If it has to be MULTIPLE INSTALLATIONS, then it will require multiple physical machines
    What is software load balancing then ???
    Also read that
    Oracle 9i AS instance is combition of Oracle HTTP Server (OHS) and one or more instances of Oracle9iAS Container for J2EE (OC4J)
    Thus software load balancing can be implemented for Web server component of middle tier using multiple instances of OC4J ???
    Forms metrix server configuration is hardware load balancing ??
    What about Oracle9iAS Web Cache clustering ??
    Please clarify the doubts and suggest me the way
    Thanks a lot

    dear all can any one help me on the following;
    We want to install Oracle Apps 11.5.9 on 4 IBM AIX 5L boxes, the first node
    will hold the database , concurrent and Admin Tiers. as for the other 3 nodes
    it will hold the Forms/Web Tiers and we need to use forms metrics for load
    balancing taking into consideration that we can't use Shared APPL_TOP. we tried
    to find the way how to install and configure this solution but all the
    documents are talking aboout the concept only and this concept is applicable.
    We need the exact steps on how do the installation either using rapidwiz or any
    thing else
    fadi

  • Fault Tolerance - MCS 7825 H3 & MCS 7835 H2 Servers

    Hi,
    I have enabled network fault tolerance on my CUC and CCM Servers, i thought after enabling the network fault tolerance the server would change the mac address to Virtual mac address which indeed it may affect the licenses.
    But after enabling fault tolerance and restarting the server also i didn't see any change in the MAC ID. Its the same MAC ID.
    Pls advice.
    Regards
    Jagadish G

    Hi Jagadish,
    do u get the option of 1000 MB/s  when u configure set network nic eth0  speed ? can u check?
    secondly, Bond 0 would be showing Auto disabled which cannot be changed.
    Can u share snapshot of show netowrk failover?
    regds,
    aman

  • Deterministic Fault Tolerant Load Balancing

    The USA has an unfortunate penchant for granting patents that arguably do not merit patent protection. Some of these are things that are blindingly obvious. Others are just not sufficiently inventive.
    Anyway, since I have no funds for patent searches, nor patent applications, and there are some other complications, I've decided to post this to establish prior-art for an algorithm. I don't claim that the algorithm is clever, nor novel, nor even that it violates no existing patents. This posting is simply to ensure that to the extent that someone might be granted a patent on it, they can't, because it has already been published.
    The Java connection is that I've done a fair amount of the work required to turn this into a real system in Java.
    Suppose you have set of processors, p0 thru pn-1, and each piece of work to be performed by a processor has some number k associated with it. The problem is to allocate the work roughly equally across the subset of processors that are actually functioning. Further, over a period of time, a series of related pieces of work may arrive with the same k. To the maximum possible extent you want each of the related pieces of work to be handled by the same processor. If a processor fails, you want its work to be distributed across the remaining processors, but still maintaining the property that pieces of work with a given value for k are handled by the same processor. In general we assume that the k values are randomly spread through a large number space.
    The motivation for these requirements is that for a given k the processor may be caching information that improves performance. Or it may be enforcing some invariant, such as in a lock manager where each request for a given lock must go to the same processor, or it clearly won't function.
    To achieve this, construct a list of integers of size n. Element i contains i if processor i is functional, and -1 otherwise.
    Calculate k mod n, and use the result as an index into the list. If the value contained there is non-negative, then it is the number of the processor to use. If it is -1, remove the element from the list, decrement the value of n and repeat. Continue until a processor number is found.
    This scheme is fault tolerant to a degree, in that the resulting system has a high level of availability.
    It also has the property that the failure of a processor only impacts on the allocation of pieces of work that would have been allocated to the failed processor. It does not result in a complete rearrangement of the work allocations. This makes things a lot simpler when dealing with things like distributed lock managers.
    The fault tolerance can be improved by an extension of the algorithm that allows a distributed master/slave arrangement, where the master number for a given k is determined as above, and a slave number is obtained by treating the master as if it were not functioning. Each processor is a master for some subset of the k values, and is a slave for another subset. For any given master, each of the other processors is a slave for a roughly equal portion of the given master's subset of the k values.
    There are some boring details that I've not discussed, such as how an entity wanting work to be done determines which processors are functioning, and the stuff related to the exact sequence of steps that must be performed when a processor breaks, or is repaired. I don't believe anyone could patent them because once you start thinking about it, the steps are pretty obvious.

    I wouldn't be so sure that a simple post to the java forums
    is all you need to prove this 'prior-art' is it ?
    Don't you need to actually use it? Or have you seen a laywer
    and this was their advice. Even if you have no money for it Im sure
    there are free legal services; even universities, you could contact.
    I don't believe anyone could patent them because once you
    start thinking about it, the steps are pretty obvious.The steps of anything a generally simple, it's the putting-them-together
    that you can patent :)

  • Fault tolerant EJBs

    Hello,
    I'm trying to set up a fault tolerant EJB service. I have two application servers with EJB's deployed on them. The two deployments are identical. Client is a portal application. The EJB client configuration file sun-web.xml looks like this:
    >
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE sun-web-app PUBLIC
    "-//Sun Microsystems Inc.//DTD Sun ONE Application Server 7.0 Servlet 2.3//EN"
    "file:/etc/opt/SUNWps/dtd/sun-web-app_2_3-0.dtd">
    <sun-web-app>
    <ejb-ref>
    <ejb-ref-name>ejb/userService</ejb-ref-name>
    <jndi-name>corbaname:iiop:server1:3700,iiop:server2:3700#ejb/userService</jndi-name>
    </ejb-ref>
    <ejb-ref>
    <ejb-ref-name>ejb/chosenService</ejb-ref-name>
    <jndi-name>corbaname:iiop:server1:3700,iiop:server2:3700#ejb/chosenService</jndi-name>
    </ejb-ref>
    </sun-web-app>
    Everything works fine as long as server1 is up. The system doesn't work after I shut it dow. On the client I get this exception:
    >
    [#|2006-02-01T13:13:07.939+0200|WARNING|sun-appserver-ee8.1_02|javax.enterprise.resource.corba.S1AS-ORB.rpc.transport|_ThreadID=12;|"IOP00410201: (COMM_FAILURE) Connection failure: socketType: IIOP_CLEAR_TEXT; hostname: 10.111.143.169; port: 3700"
    org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed: No
    at com.sun.corba.ee.impl.logging.ORBUtilSystemException.connectFailure(ORBUtilSystemException.java:2257)
    at com.sun.corba.ee.impl.logging.ORBUtilSystemException.connectFailure(ORBUtilSystemException.java:2278)
    at com.sun.corba.ee.impl.transport.SocketOrChannelConnectionImpl.<init>(SocketOrChannelConnectionImpl.java:208)
    at com.sun.corba.ee.impl.transport.SocketOrChannelConnectionImpl.<init>(SocketOrChannelConnectionImpl.java:221)
    at com.sun.corba.ee.impl.transport.SocketOrChannelContactInfoImpl.createConnection(SocketOrChannelContactInfoImpl.java:104)
    at com.sun.corba.ee.impl.protocol.CorbaClientRequestDispatcherImpl.beginRequest(CorbaClientRequestDispatcherImpl.java:153)
    at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.request(CorbaClientDelegateImpl.java:127)
    at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.is_a(CorbaClientDelegateImpl.java:244)
    Why doesn't it switch to server2? Did I miss something?

    Hi,
    did you try to specify the JVM parameter -Dcom.sun.appserv.iiop.endpoints=<server1>:port1,<server2>:port2 for the jvm where the client is running?

  • Help me in Stateless & Stateful Bean

    hi,
    I'm trying to understand to difference between the stateless and stateful bean. I had created an simple application to test it. But both the beans seems to work in the same way. Could some one explain me with an example the difference between the stateful and stateless bean ...
    I'm using J2EE Reference Implementation and Deploytool .
    Please help me .. Urgent ....
    Cheers !!!
    Prabs

    Thanks!!
    The State Session Bean tries to hold data , even after the client has finished execution. Moreover, the ejbCreate() get fired only once and not for different client.
    Is there anything that I should do to make it stateless.
    this is my code
    Session Bean
    import javax.ejb.SessionBean;
    import javax.ejb.SessionContext;
    import java.util.*;
    public class cartEJB implements SessionBean {
         private Map m;
         public cartEJB() { }
         public void ejbCreate() {
         m = new HashMap();
         System.out.println("ejbCreate()");
         public void ejbActivate() { }
         public void ejbPassivate() { }
         public void ejbRemove() { }     
         public void setSessionContext(SessionContext sc) { }
         public void addCart(String product, String price) {
         System.out.println("Its here Man 1");
         m.put(product, price);
         public void showCart() {
              System.out.println("Its here Man 2");
              Set s = m.entrySet();
              Iterator it = s.iterator();
              while(it.hasNext()) {
                   System.out.println(it.next());
    REMOTE
    import javax.ejb.EJBObject;
    import java.rmi.RemoteException;
    public interface cart extends EJBObject {
         public void addCart(String product , String price) throws RemoteException;
         public void showCart() throws RemoteException;
    HOME
    import javax.ejb.EJBHome;
    import java.rmi.RemoteException;
    import javax.ejb.CreateException;
    public interface cartHome extends EJBHome {
         public cart create() throws CreateException, RemoteException;
    client application is an web based application ..
    Client code. ... (jsp:useBean)
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.rmi.PortableRemoteObject;
    import javax.servlet.http.*;
    public class cartJSP implements HttpSessionBindingListener{
         String Product = new String();
         String Price = new String();
         HttpSession session;
         public cartJSP() {
         public void setProduct(String p){
              this.Product = p;
         public void setPrice(String price) {
              this.Price=price;
         public String getPrice() {
              return Price;
         public String getProduct() {
              return Product;
         public void addIt(String product , String price ) {
         try {
              System.out.println("Comes here");
              Context ic = new InitialContext();
              Object objref = (Object)ic.lookup("ejb/cartJNDI");
              cartHome home = (cartHome)PortableRemoteObject.narrow(objref, cartHome.class);
              cart remote = home.create();          
              remote.addCart(product, price);
              System.out.println("Comes here");
              remote.showCart();     
         catch(Exception e) {
              e.printStackTrace();
         public void showIt() {
         try {
              Context ic = new InitialContext();
              Object objref = (Object)ic.lookup("ejb/cartJNDI");
              cartHome home = (cartHome)PortableRemoteObject.narrow(objref, cartHome.class);
              cart remote = home.create();
              remote.showCart();          
              System.out.println("Comes here 1");
         catch(Exception e) {
              e.printStackTrace();
         public void valueBound(HttpSessionBindingEvent e) {
              session = e.getSession();
              session.setMaxInactiveInterval(60);
              System.out.println("Value Bound");
         public void valueUnbound(HttpSessionBindingEvent e) {
              System.out.println("Value UnBound");
    I'm using J2EE RI 1.3 and I'm deploying components using deploytool.
    Please help me,
    Check the code is wrong or is it a bug in the EJB container.
    regards
    prabu.

  • Load balancing and fault tolerance in BPEL PM

    BPEL documentation talks about the ability of clustering processes in BPEL PM Server for fault tolerance and Load balancing. Can anybody tell me how is it done?
    Thanks

    Have you seen these links?
    http://www.oracle.com/technology/products/ias/hi_av/BPEL_HA_Paper.pdf
    http://download-uk.oracle.com/docs/cd/B31017_01/integrate.1013/b28980/clusteringsoa.htm#CHDCGIEJ

  • Load Balance & Fault Tolerance

    I need do design a solution for load balance the DLSw traffic between 4 central routers and, if this 4 routers fail (oe wan fail) all peers and circuits need to be restablished on other site with other 4 routers.
    To balance the traffic I will use the DLSw circuit count. To provide fault tolerance between sites I thinking to use backup peer.
    My question is, "circuit count" will work togheter with "backup peer" ?
    Thank´s in advance.

    Only one backup dlsw peer is allowed. I cut and paste the following when I try to define more than one backup peer:
    c3-2500(config)#dlsw remote-peer 0 tcp 2.2.2.2
    c3-2500(config)#dlsw remote-peer 0 tcp 3.3.3.3 backup-peer 2.2.2.2
    c3-2500(config)#dlsw remote-peer 0 tcp 4.4.4.4 backup-peer 2.2.2.2
    %Primary peer already has backup defined
    There are a number of approaches:
    1. Remote routers have 8 peer connections. The cost for A, B, C, and D are lower than that of E, F, G, and H. Normally, the circuits are distributed among A, B, C, and D. Even one or more than one of A, B, C, and D goes down, the rest will take the load. If all A, B, C, and D goes down, E, F, G, and H will take all the circuits.
    2. Slightly different than 1. Instead of making E, F, G, and H are permanent DLSw peer connection, make E is a backup peer for A, F is a backup peer for B, and so on.
    3. Just another idea. Have you considered SNASw using HPR/IP? It may take you a while to set up on the host. However, this is the way to go because IBM has stopped selling 3746/3745. All SNI link will eventually go to HPR/IP.

  • Stateful bean not failing over

              I have a cluster of two servers and a Admin server. Both servers are running NT
              4 sp6 and WLS6 sp1.
              When I stop one of the servers, the client does n't automatically failover to
              the other server, instead it fails unable to contact server that has failed.
              My bean is configured to have its home clusterable and is a stateful bean. My
              client holds onto the remote interface, and makes calls through this. If Server
              B fails then it should automatically fail over to server A.
              I have tested my multicast address and all seems to be working fine between servers,
              my stateless bean work well, load balancing between servers nicely.
              Does anybody have any ideas, regarding what could be causing the stateful bean
              remote interface not to be providing failover info.
              Also is it true that you can have only one JMS destination queue/topic per cluster..The
              JMS cluster targeting doesn't work at the moment, so you need to deploy to individual
              servers?
              Thanks
              

    Did you enable stateful session bean replication in the
              weblogic-ejb-jar.xml?
              -- Rob
              Wayne Highland wrote:
              >
              > I have a cluster of two servers and a Admin server. Both servers are running NT
              > 4 sp6 and WLS6 sp1.
              > When I stop one of the servers, the client does n't automatically failover to
              > the other server, instead it fails unable to contact server that has failed.
              >
              > My bean is configured to have its home clusterable and is a stateful bean. My
              > client holds onto the remote interface, and makes calls through this. If Server
              > B fails then it should automatically fail over to server A.
              >
              > I have tested my multicast address and all seems to be working fine between servers,
              > my stateless bean work well, load balancing between servers nicely.
              >
              > Does anybody have any ideas, regarding what could be causing the stateful bean
              > remote interface not to be providing failover info.
              >
              > Also is it true that you can have only one JMS destination queue/topic per cluster..The
              > JMS cluster targeting doesn't work at the moment, so you need to deploy to individual
              > servers?
              >
              > Thanks
              Coming Soon: Building J2EE Applications & BEA WebLogic Server
              by Michael Girdley, Rob Woollen, and Sandra Emerson
              http://learnweblogic.com
              

  • JMS adapters in a fault tolerant environment

    Hi,
    I am working on some IDOC <> XI <> JMS scenario's in a SONICMQ fault tolerant invironment, meaning that on communication channel level hostname should be dynamic.
    XI is sending to SONIC when JMS system a is down send to system b....
    Any suggestions? Samples?
    Thanks.

    Hi,
    Check this below note and Q 2.9..
    Note 856346 - J2EE JMS Adapter: Frequently Asked Questions (FAQ)
    2.9) How do I configure the receiver JMS communication channel to dynamically target a message to a queue that is different from what is statically configured?
    Answer: The mechanics follow the same semantics as described in the JMSReplyTo question answered previously.
    Regards,
    Srini

  • UOO sequencing along with WLS high availability cluster and fault tolerance

    Hi WebLogic gurus.
    My customer is currently using the following Oracle products to integrate Siebel Order Mgmt to Oracle BRM:
    * WebLogic Server 10.3.1
    * Oracle OSB 11g
    They use path service feature of a WebLogic clustered environment.
    They have configured EAI to use the UOO(Unit Of Order) Weblogic 10.3.1 feature to preserve the natural order of subsequent modifications on the same entity.
    They are going to apply UOO to a distributed queue for high availability.
    They have the following questions:
    1) When during the processing of messages having the same UOO, the end point becomes unavailable, and another node is available in order to migrate, there is a chance the UOO messages exist in the failed endpoint.
    2) During the migration of the initial endpoint, are these messages persisted?
    By persisted we mean that when other messages arrive with the same UOO in the migrated endpoint this migrated resource contains also the messages that existed before the migration?
    3) During the migration of endpoints is the client receiving error messages or not?
    I've found an entry on the WLS cluster documentation regarding fault tolerance of such solution.
    Special Considerations For Targeting a Path Service
    When the path service for a cluster is targeted to a migratable target, as a best practice, the path
    service and its custom store should be the only users of that migratable target.
    When a path service is targeted to a migratable target its provides enhanced storage of message
    unit-of-order (UOO) information for JMS distributed destinations, since the UOO information
    will be based on the entire migratable target instead of being based only on the server instance
    hosting the distributed destinations member.
    Do you have any feedback to that?
    My customer is worry about loosing UOO sequencing during migration of endpoints !!
    best regards & thanks,
    Marco

    First, if using a distributed queue the Forward Delay attribute controls the number of seconds WebLogic JMS will wait before trying to forward the messages. By default, the value is set to −1, which means that forwarding is disabled. Setting a Forward Delay is incompatible with strictly ordered message processing, including the Unit-of-Order feature.
    When using unit-of-order with distributed destinations, you should always send the messages to the distributed destination rather than to one of its members. If you are not careful, sending messages directly to a member destination may result in messages for the same unit-of-order going to more than one member destination and cause you to lose your message ordering.
    When unit-of-order messages are processed, they will be processed in strict order. While the current unit-of-order message is being processed by a message consumer, the next message in the unit-of-order will not be delivered unless it is to the same transaction or session. If no message associated with a particular unit-of-order is processing, then a message associated with that unit-of-order may go to any session that’s consuming from the message’s destination. This guarantees that all messages will be processed one at a time and in order, and any rollback or recover will not prevent ordered processing of the messages.
    The path service uses a persistent store to save the state of which member destination a particular unit-of-order is currently using. When a Path Service receives the first message for a particular unit-of-order bound for a distributed destination, it uses the normal JMS load balancing heuristics to select which member destination will handle the unit and writes that information into its persistent store. The Path Service ensures that a new UOO, or an old UOO that has no messages currently on any destination, can be enqueued anywhere in the cluster. Adding and removing member destinations will not disrupt any existing unit-of-order because the routing decision is made dynamically and those decisions are persistent.
    If the Path Service is unavailable, any requests to create new units-of-order will throw the JMSOrderException until the Path Service is available. Information about existing units-of-order are cached in the connection factory and destination servers so the Path Service availability typically will not prevent existing unit-of-order messages from being sent or processed.
    Hope this helps.

Maybe you are looking for

  • I am going insane,guys. Help me out please. Also, this has multiple questions.

    I'll try to stay on topic. BACKSTORY, and Q1: here we go. skip to the BOLD if you dont want to read my sob story. I think it rather helps though. My iPod Touch(4gen, 32 gigs, etc) was previously jailbroken(by a friend, no idea how it was done), but a

  • How to change the utilised join for a particular report

    Hi, I have a discoverer report which is very similar to a previously developed report. I copied the report and now I want to change the join that is utilised by the new one (Two different joins exist between the two folders being used). How can I do

  • I have a problem with macbook pro OS 10.5.8 and cannot play youtube anymore, before Yes

    i have a problem with macbook pro mac os 10.5.8 and cannot play youtube but before ther is no problem abou this. now there is warning sign to install adobe flash player, but when i install adobe it said cannot be compatible, and I went to the apple s

  • Application close icon ('X')

    Greetings all, I am new to this forum and relatively new to Java. I would like to bind a member function to the application close icon (The 'X' in the upper right hand corner of the applications main window). Does anyone know how to do this? Thanks.

  • Next Pl help!!!

    Hi I have One multi Record block with 10 records, This has list of report name that user has access to, To grant access to new reports then user Can select LOV and select any reports from all reports, If user by mistake selected same report twice (Fo