Durable Listeners

I'm trying to work out the best way to deal with a problem and want to make use of Coherence as much as possible to solve it. The problem is as follows:
In this example we have 10 caches, each cache is responsible for caching a different type
of object. What I need to do is monitor these caches and take each entry as they're added
and place them into another cache which will represent a queue. I then have 2-3 different processes that will process this queue.
One possible solution I had thought of was to have a backingmaplistener on the 10 individual caches, that will then push each event into another 'super' cache that will represent my queue. I could then have the 2-3 processes that process this queue, registered as maplisteners that would then allow them to process the events as they're added to the queue cache. The only issue that I can see with this is that if any of the listener processes restart/stop for any period of time they will miss the events during this time.
Is there anyway possible to queue events for a listener, i.e make the listener durable?
If this is not possible could anyone suggest a possible solution to my problem?
Regards
Richard

Hi Richard,
Would it be possible to do the work of the 2-3 different processes in the BackingMapListener itself? This would ensure a fairly even distribution of work across the members of your cluster. Just keep in mind that making calls back into the same cache service from within the BackingMapListener can result in a deadlock.
Another alternative would be to use another BackingMapListener on the "super" cache, and only configure 2-3 members to run the cache service for the "super" cache.
Regards,
Andy

Similar Messages

  • My JMS 2 wish list - Part 4, durable subscriptions

    I attended the JavaOne 2010 session on future JMS evolutions. During the session I described some current limitations or issues I'd like to be solved in a portable way. I've been adviced to share the issues to get feedback from the community. I will post each issue in a dedicated thread.
    Issue 4 - How durable are durable topic subscriptions?
    Non durable subscribers receive topic messages only if they are active at the time when the message is received and processed by the JMS engine. Durable subscribers are more complicated, they receive messages if the durable subscription is active when the message is received and processed by the JMS engine.
    How do I know when messages are kept or discarded? Simply put, what is the lifecycle of the subscription?
    When using synchronous receptions or message listeners, the durable subscription lifecycle is managed by the developper using Session:createDurableSubscriber and Session:unsubscribe.
    When using MDB, the durable subscription lifecycle is unspecified and is application server dependant.
    With JBoss 4.2, the subscription lifecyle is the same than the MDB. This means that if the application is redeployed (for example copy the new .ear over the old one in the deploy folder), there is a time frame when the subscription in non existent, so messages are lost.
    WebLogic 10 also seems to associate the subscription lifecycle to the MDB. WebLogic 10 offers a flag, "durable-subscription-deletion", to allow or not the durable subscription deletion when the MDB is undeployed or removed. True means that when the application is redeployed the subscription is deleted and messages are lost. When false is used (it is the default value) the subscription remains even when the MDB is undeployed. I hope this does not mean that if we permanently undeploy the application, the subscription will stay and messages will continue to stack.
    With WebSphere 6 the situation is different. The subscription is not associated to the MDB but to an activation spec that is an administred object. The MDB is merely a client of the activation spec. This way messages are kept as long as the activation spec is active, regardless of application starts/stops/redeploys/etc. Messages are not lost.
    We need a portable way to use durable topics subscriptions.

    gimbal2 wrote:
    A portable solution would be useful.You could already do it now by leveraging the Timer functionality that has been part of the EJB spec since JEE 1.4. In stead of sending the message directly, let the timer do it after the delay you specify. That would make it portable with current tech.
    I can't be sure what other implications that might have though, such as in the area of performance and resource usage - I can imagine you wouldn't want to use a timer when you need to send large volumes of messages.In the original requirement, the message is put in the queue immediately by a call to queuesender.send(message) and there's a delivery in delay to a consumer.
    Whereas in this solution, the delay is in the message delivery to the queue itself.
    IMHO there's a subtle but important difference here.What would for example happen if posting the message to the queue is in the scope of a distributed JTA transaction? You can definitely include the timer call to be in the scope of the transaction, but now you will have to account for the fact and there may be an error when the message is delivered which has to be handled explicitly. In the original scenario the tx would automatically rollback.
    cheers,
    ram.

  • Is there a problem with JFrame and window listeners?

    As the subject implies, i'm having a problem with my JFrame window and the window listeners. I believe i have implemented it properly (i copied it from another class that works). Anyway, none of the events are caught and i'm not sure why. Here's the code
    package gcas.gui.plan;
    import java.awt.BorderLayout;
    import java.awt.Component;
    import java.awt.Container;
    import java.awt.event.WindowEvent;
    import java.awt.event.WindowListener;
    import java.util.Hashtable;
    import javax.swing.JDialog;
    import javax.swing.JFrame;
    import gcas.plandata.TaskData;
    import gcas.util.GCASProperties;
    import gcas.gui.planlist.MainPanel;
    * MainFrame extends JPanel and is the main class for the plan details window
    public class MainFrame extends JFrame implements WindowListener
         * the container for this window
        private Container contentPane;
         * a string value containing the name of the plan being viewed
        private String labelText;
         * a string value containing the name of the window (GCAS - plan list)
        private static String title;
         * an instance of JDialog class
        private static MainFrame dialog;
         * hashTable that correlates the task name to its id as found in the
         * plan
        private Hashtable taskNameToId = new Hashtable();
         * an instance of taskSetPane.  This is the current instance of taskSetPane
         * being viewed
        private PlanTaskSet currentPane;
         * instance of TaskData class.  Each instance will hold information on
         * an individual task
        private TaskData taskData;
         * hashTable containing instances of the taskSetPane class
        private Hashtable taskSetPanes = new Hashtable();
         * an instance of the OuterPanel class
        OuterPanel mainPanel;
         * an instance of the ButtonPanel class
        ButtonPanel buttonsPanel;
         * an instance of the LeftPanel class
        LeftPanel leftPanel;
         * an instance of the the GCASProperties class
        GCASProperties gcasProps;
        private static MainFrame thisPlanMain = null;
        private MainPanel planListMain;
         * constructor for MainFrame
         * @param frame the parent frame calling this class
         * @param locationComp the location of the component that initiated the opening of the dialog
         * @param labelText the name of the plan that is being viewed
         * @param title title of window
        private MainFrame(JFrame frame, Component locationComp, String labelText,
                String title)
            super(title);
            gcasProps = GCASProperties.getInstance();
            mainPanel = new OuterPanel(labelText, currentPane,
                    taskNameToId, taskSetPanes);
            leftPanel = mainPanel.getLeftPanel();
            System.out.println("LABLE: " + labelText);
            leftPanel.setMainPanelContents();
            buttonsPanel = new ButtonPanel(labelText, taskSetPanes,
                    taskNameToId, leftPanel);
            contentPane = getContentPane();
            contentPane.add(mainPanel, BorderLayout.CENTER);
            contentPane.add(buttonsPanel, BorderLayout.PAGE_END);
            this.addWindowListener(this);
            this.labelText = labelText;
            pack();
            setLocationRelativeTo(locationComp);
            this.setVisible(true);
            planListMain = MainPanel.getInstance();
            planListMain.setVisible(false);
        public static MainFrame getInstance(JFrame frame, Component locationComp, String labelText,
                String title)
            if (thisPlanMain == null)
                thisPlanMain = new MainFrame(frame, locationComp, labelText,
                        title);
            return thisPlanMain;
        public static MainFrame getDialogObject()
        {   //from the location this is called (ButtonPanel), this will never
            //be null
            return thisPlanMain;
        public static void setABMDDialogNull()
            thisPlanMain = null;
         * returns an instance of MainFrame
         * @return MainFrame instance
        public static MainFrame getDialog()
            return dialog;
         * setter for MainFrame
         * @param aDialog a MainFrame instance
        public static void setDialog(MainFrame aDialog)
            dialog = aDialog;
         * window opened event
         * @param windowEvent the window event passed to this method
        public void windowOpened(WindowEvent windowEvent)
         * The window event when a window is closing
         * @param windowEvent the window event passed to this method
        public void windowClosing(WindowEvent windowEvent)
            gcasProps.storeProperties("PlanList");
            MainPanel abmd = MainPanel.getInstance();
    //        planMain = this.getDialogObject();
    //        if(planMain != null)
    //            planMain.setVisible(false);
    //            abmd.setVisible(true);
    //            planMain.setABMDDialogNull();
            if(this.getDialogObject()!= null)
                abmd.setVisible(true);
                setVisible(false);
                setABMDDialogNull(); 
         * Invoked when the Window is set to be the active Window
         * @param windowEvent the window event passed to this method
        public void windowActivated(WindowEvent windowEvent)
         * Invoked when a window has been closed as the result of calling dispose on the window
         * @param windowEvent the window event passed to this method
        public void windowClosed(WindowEvent windowEvent)
         * Invoked when a Window is no longer the active Window
         * @param windowEvent the window event passed to this method
        public void windowDeactivated(WindowEvent windowEvent)
            System.out.println("HI");
         * Invoked when a window is changed from a minimized to a normal state
         * @param windowEvent the window event passed to this method
        public  void windowDeiconified(WindowEvent windowEvent)
            //we could have code here that changed the way alerts are done
           System.out.println("Invoked when a window is changed from a minimized to a normal state.");
         * Invoked when a window is changed from a normal to a minimized state
         * @param windowEvent the window event passed to this method
        public  void windowIconified(WindowEvent windowEvent)
            //we could have code here that changed the way alerts are done
    //        System.out.println("Invoked when a window is changed from a normal to a minimized state.");
    }anyone know whats wrong?

    It turned out that my ide was running the old jar and not updating it, so no matter what code i added, it wasn't being seen. Everything should be fine now.

  • Adding listeners for instances on other frames

    I'm trying to create a very standard menu, the type where there are links on each page that links to each other. So far I've put each menu page on a separate frame (total around 35 frames), and each link as its own instance/class. Originally I planned to create an array containing all the links like this:
    var menuLinks:Array =
                                //Main menu - frame 1
                                menuRightSide.newStoryLink,
                                menuRightSide.continueStoryLink,
                                menuRightSide.selectChapterLink,
                                menuRightSide.optionsLink,
                                menuRightSide.charactersLink,
                                menuRightSide.aboutLink,
                                //chapters menu - frame 2
                                menuRightSide.chapter1,
                                menuRightSide.chapter2,
                                menuRightSide.chapter3,
                                menuRightSide.chapter4,
                                menuRightSide.chapter5,
                                //characters - frame 3
                                menuRightSide.char1,
                                menuRightSide.char2,
                                menuRightSide.char3,
                                menuRightSide.char4,
                                menuRightSide.char5,
                                menuRightSide.char6,
                                //options - frame 4
                                menuRightSide.languageLink,
                                menuRightSide.costumeLink,
                                //function links - these exist on MULTIPLE frames/pages, eg options, characters, chapters all have backToMainLink
                                menuRightSide.backToMainLink,
                                menuRightSide.backToCharLink,
                                menuRightSide.backToOptionsLink,
                                menuRightSide.backToCostumeLink,
                                ]; //create array of links for menus
                currentPage = "main_menu";
                for each (var links:MovieClip in menuLinks)
                    links.buttonMode = true; //set links to behave like button
                    links.mouseChildren = false; //mouse over does not affect this instance's children
                    links.addEventListener(MouseEvent.ROLL_OVER, onOver);
                    links.addEventListener(MouseEvent.ROLL_OUT, onOut);
                    links.addEventListener(MouseEvent.CLICK, onClick);
                function onOver(e:MouseEvent):void //apply glow to every link
                    TweenMax.to(e.target, 1, {glowFilter:{color:0xFFFFFF, alpha:1, blurX:10, blurY:10}}); //glow effect
                function onOut(e:MouseEvent):void //remove glow on link on mouse out
                    TweenMax.to(e.target, 1, {glowFilter:{color:0xFFFFFF, alpha:0, blurX:0, blurY:0, remove:true}}); //remove glow
                function onClick(e:MouseEvent):void
                    currentPage = e.target.name;
                    if (e.target.name == "newStoryLink") { //if click newStoryLink
                        delegate.beginStory();
                    } else if (e.target.name == "optionsLink") { //if click optionsLink
                        TweenLite.to(menuRightSide, 0.2, {alpha:0, onComplete:menuRightSide.gotoAndStop, onCompleteParams:[45]}); //go to frame 45, options screen
                        TweenLite.to(menuRightSide, 0.2, {alpha:1, delay:0.2});
                    } else if (e.target.name == "charactersLink") { //if click charactersLink
                        TweenLite.to(menuRightSide, 0.2, {alpha:0, onComplete:menuRightSide.gotoAndStop, onCompleteParams:[10]}); //go to frame 10, char screen
                        TweenLite.to(menuRightSide, 0.2, {alpha:1, delay:0.2});
                    } else if (e.target.name == "aboutLink") { //if click aboutLink
                        TweenLite.to(menuRightSide, 0.2, {alpha:0, onComplete:menuRightSide.gotoAndStop, onCompleteParams:[180]}); //go to frame 180, about screen
                        TweenLite.to(menuRightSide, 0.2, {alpha:1, delay:0.2});
    Basically adding listener for every link, then simply telling AS what to do when I click the link regardless of what page I'm currently on.
    However the problem is I realized listeners can't be added for links that exist on other frames other than frame 1, because they're null I think until AS flips to that frame.
    So does anyone have an idea on how I should code this? Another challenge is some links (the ones at the bottom of the array) exist on MULTIPLE frames, but perform the exact same thing regardless of which page it was clicked on.
    Thanks.

    I arranged them on separate frames because that way I know exactly what's on each page. If I simply list out all the links on one frame, then it gets extremely messy visually.
    So if I want to add listeners on other frames, how would I do that? I know the pseudo-code:
    on frame 1:
    for (each link on frame 1) {
    link.addEventListener()
    on frame 2:
    for (each link on frame 2) {
    link.addEventListener()
    ... etc
    function onClick(e:MouseEvent):void
                    currentPage = e.target.name;
                    if (e.target.name == "newStoryLink") {
                        delegate.beginStory();
                    } else if (e.target.name == "continueStoryLink") {
                        //do something else

  • How to block execution of event listeners

    Hi all,
    JDev version : 11.1.1.6
    My requirement is that I want to block all event listeners like ActionListeners, SelectionListeners, DisclosureListeners, RowDisclosure listeners when the screen is opened in readonly mode.
    I could block ActionListeners by disabling command links and command buttons etc.
    But there's no way to block SelectionListeners, DisclosureListeners, RowDisclosure listeners.
    So Is there any common code which can block all listeners?
    Or is there any EventController or something like that which will allow me to control event execution?

    I would have if it was just one screen.
    There are hundreds of screens.
    Anyways, can't I use any javascript to do this? There are some interfaces like EventListeners , classes like EventConsumer etc. Do none of them provide feature to block event listeners?

  • How to configure multiple listeners

    Hi All,
    I have installed 2 different Oracle instances on a single machine. I found that each oracle installation created its own Listener. I cant start both of the listeners at the same time. As a result, the respective applications cant talk to their corresponding database instances.
    I could start only one listener for one database instance at any given point of time. Therefore, I am unable to use the other application.
    Can any one please help me in configuring this appropriately so that both the applications can talk to their respective databases?
    Waiting for your kind replies.
    Regards,
    Syed

    Syed Abdul Rahman wrote:
    Hi All,
    I have installed 2 different Oracle instances on a single machine. I found that each oracle installation created its own Listener. I cant start both of the listeners at the same time. As a result, the respective applications cant talk to their corresponding database instances.
    I could start only one listener for one database instance at any given point of time. Therefore, I am unable to use the other application.
    Can any one please help me in configuring this appropriately so that both the applications can talk to their respective databases?
    Waiting for your kind replies.
    Regards,
    Syedit's better to configure a single listener . Configuring multiple listener will increased system resource usage. Multiple listener may be helpful in case of RAC .
    --neeraj                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • How to configure multiple listeners to listen for the same instance.

    Hello everyone,
    I am running oracle database 11g and I want information regarding how to configure multiple listeners to listen for the same database instance. Actually I know how to configure more than one listener but the main thing that I am confused about is when we create listener.ora file, do we have to statically register the database instance with both the listeners or the instance will register itself with both the listeners.
    According to my knowledge the instance will register with the listener specified by LOCAL_LISTENER parameter and we cannot have more than one value for this parameter.
    Please only give detailed answers with example as I am tired of simple answers with details that I already know.

    Hello,
    Yes, it can make sense to have several listener for one Oracle instance. For instance you may have one listener for the applications another listener for DBA administration tasks as well as one listener dedicated to dataguard broker. It is not possible to have several listeners listening on the same IP and Port.
    By default the database try to automatically register to a listener on port 1521. To instruct the instance to register to a specifc list of listeners you can add in the init.ora the local_listener parameter with an alias definition:
    i.e
    local_listener=MY_SET_OFF_LISTENERS
    in your tnsname.ora add an entry called:
    MY_SET_OFF_LISTENERS_LOCAL= (ADDRESS_LIST=
    (ADRESS=(PROTOCOL=TCP)(HOST=myhostname)(PORT=1530))
    (ADRESS=(PROTOCOL=TCP)(HOST=myhostname)(PORT=1531))
    (ADRESS=(PROTOCOL=TCP)(HOST=myhostname)(PORT=1532))
    In this sample your instance will register to three listeners listening on respectively port 1530, 1531 and 1532
    If you want your clients can be balanced over the 3 listeners

  • Can you run multiple APEX listeners for different instances on the same server

    Please confirm that we can run multiple APEX listeners for different instances on the same server?  Is it an xml setup configuration or do we need to do more??
    Thank You,
    Tony Miller
    SmartDog Services
    Austin, TX

    Yes.. Just exactly what I was looking for...
    Thanks Jari!!
    Thank You,
    Tony Miller
    SmartDog Services
    Austin, TX

  • JMS Topic - Deliver to only one Durable Subscriber

    Hi,
    Is it possible to put a message onto a topic but only have it delivered to a single durable subscriber?
    I realise this breaks the rules of what a topic is but this is for a scenario where a single subscriber has errored when processing the original message from the topic. I am putting a user interaction process to recover it and if the user selects ‘resubmit’ I want to put the message back on the topic but only deliver it to the one subscriber that failed to process the message.
    My ways to achieve this (in order of preference) would be.
    1.     JMS Adapter
    2.     Writing Java to use JMS API
    If neither of these are possible than:
    3.     Create a System Resubmit queue and have every composite look for message on the resubmit queue (with their client ID) as well as the normal topic they use
    Of course I would like to avoid 3 as it introduces a complication into every process we create that takes messages from a JMS Topic.
    Thanks for your help.
    Robert

    I could suggest a (dirty) trick:
    all subscribers subscribe to the topic using a filter (message selector, http://docs.oracle.com/javaee/6/tutorial/doc/bnceh.html#bncer)
    SUBSCRIBER1 uses:
    destination = ALL OR SUBSCRIBER1
    SUBSCRIBER2 uses:
    destination = ALL OR SUBSCRIBER2
    etc
    The first message has the property destination set to ALL, so all subscribers will process it.
    The resubmitted message will have destination = SUBSCRIBER<N>, where N is the failed subscriber

  • How can I get all the Listeners of an ObservableMap?

    This is my use case:
    A MapListener can be added/removed to an ObservableMap in any node. To remove a listener I need a reference to the listener object to use the removeMapListener(MapListener listener) method. But if the listener was registered in the node A, and it will be removed by the node B how do I get this reference in this node?
    This can be easily solve if there is a way to get a Set of all the active MapListerner that an ObservableMap have.
    Thanks in advance,

    ggarciao.com wrote:
    OK ... this is very interesting. So, what happen if the node that registered the event goes down?
    What I actually need is a way to register clustered-aware events that can be created/removed from any node, and the cluster should guarantee its execution. The use case? a workflow implementation.
    I have several entities with an state field. every time that the state field change, I need to capture that event and do something (like update another system).
    There is a way to do this using listeners in coherence?
    Thanks in advance, and sorry for the delay (vacation) :-)Yes, there are several kind of events and event listeners.
    For your purpose you can take two approaches.
    You can either have a cache listener which listens for all changes in a cache and submits events to some other place.
    Alternatively, you can have a backing map listener which would put events into another cache on the same service and you would syphon the content of this cache to your external system. In the Coherence Incubator there is the Event Distribution pattern and Push Replication pattern projects which provide functionality to achieve this. It has been indicated at on several Coherence SIG meetings that a later Coherence release is going to contain the functionality of these projects out-of-the-box but I believe specific release version and timeline for that release is not confirmed yet, so your safe bet at the moment is the Coherence Incubator (Release 10, I believe is the latest, which you can find at http://coherence.oracle.com/display/INC10/Home ).
    Best regards,
    Robert

  • Help me I'm trying to create event listeners

    I am trying to create event listeners
    Whenever any keyboard event occurs the string s gets appended by a,c
    or p.At the end of the program its supposed to print value of s
    But s always happens to null.Please tell me how to correct it....so
    that detection is possible for any case
    import java.io.*;
    import java.awt.event.*;
    public class trial {
    int x;
    public static String s;
    //OutputStream f1=new FileOutputStream("file2.txt");
    public static void keyReleased(KeyEvent e)
    s=s+"a";
    public static void keyPressed(KeyEvent e)
    s=s+"c";
    public static void keyTyped(KeyEvent e)
    s=s+"p";
    public static void main(String args[])
    throws IOException
    char c;
    BufferedReader br =new BufferedReader(new
    InputStreamReader(System.in));
    System.out.println("Entercharactes,'q' to quit.");
    do
    c=(char)br.read();
    System.out.println(c);
    while(c!='q');
    // for(int i=0;i<s.length();++i)
    System.out.println(s);

    I suggest looking at the java tutorial. Your code completely misses the mark and you need to see examples.

  • How to check the status of all of the current cache listeners

    Hi,
    Is there a way to programmatically show the status of all of the registered cache listeners?
    The background is that we found only one user (among around 20 users) always stops receiving the events from the cache. However the tcp connection to the proxy server is always alive. We are using .NET client.
    Please provide any suggestions on this issue.
    Thanks
    Mu

    Is there a way to programmatically show the status of all of the registered cache listeners?Not easily. The listeners are managed in a hierarchical manner, so each storage-enabled server keeps track (e.g. per partition) what listeners it has to notify of what events, and each proxy keeps track (e.g. per connection) of what clients it has to notify of what events, and on the client it keeps track of what listener objects it has to deliver what events to. At each level in the hierarchy, there is a data structure that keeps track of this information, and that data structure will typically be an instance of com.tangosol.util.MapListenerSupport. While it is theoretically possible to navigate these data structures at any level of the hierarchy, it's not straight-forward.
    The background is that we found only one user (among around 20 users) always stops receiving the events from the cache. However the tcp connection to the proxy server is always alive. We are using .NET client.It sounds like the client is getting disconnected at some point. To eliminate the obvious (e.g. an event listener getting stuck and never returning), take a thread dump of the .NET process, e.g.
    http://support.microsoft.com/kb/286350
    Next, add the listeners on the client side for the MemberLeft events. If the client does get disconnected, it should get that event.
    Also, turn up the logging level on the proxies (to at least D6) and check the logs when this happens.
    I'd also suggest that you file an SR with Oracle support to track this.
    Peace,
    Cameron Purdy | Oracle Coherence
    http://coherence.oracle.com/

  • HTTP Listeners shown as running but can't stop, start or configure

    In 4.0.8.2 Oracle Application Server Manager Enterprise
    Edition, HTTP Listeners, for the "www", the listener shows as
    down but is actually running. If I try to stop it, it says it
    is not running (the IE dialog box pops-up). If I try to start
    it, it says (in a new small browser window) "OWS-08806: Oracle
    Web Listener 'www' is already UP and running at pid 0." Since
    my site is up, I know it is running. However, how can I bring
    it down?
    If I look at the Http listener views it shows both admin and
    www listeners are up and shows pid's for them. But when I go
    to them individually they say they are stopped as I said above.
    I use Oracle Application Server Manager 4.0 to view the HTTP
    Listeners configuration. The Oracle Application Server Manager
    4.0 looks like this:
    - name of the site
    + Oracle Application Server
    - HTTP Listeners
    - host name: admin
    Network
    Server
    etc
    When I click on, for instance: NETWORK, it supposed to show me
    the properties after prompting for a username and password. But
    it just didn't do anything showing page not found.
    Any assistance would be greatly appreciated.
    Thank You!!!
    J

    Thanks again.
    I'll try to be more clear about my current setup:
    Modem
    ->
    Router
    DHCP enabled but supplying server with static ip of: 192.168.1.2 - hence my Ethernet 1 settings on my Xserve. The DHCP address the router supplies to other devices range between 192.168.1.101 - 192.168.1.150 (this is temporary). I'm using the Router as a temporary network connection for devices as I continue to setup the server. Once the server is completed, I will hook everyone up through the switch.
    ->
    Xserve
    The Xserve receives a static IP from the router above (192.168.1.2) even though the router gives DHCP addresses to other devices. The Xserve then goes out Ethernet 2 to (which has also been assigned a static internal address: 192.168.1.3) a switch.
    ->
    Switch
    The Switch definitely has DHCP disabled, and merely extends the network connection.
    Right now, the Xserve is doing nothing other than attempting to supply an internet connection to devices attached to it. I performed a clean install after a day or two of troubleshooting.
    I really want to be able to control content access as well as give certain devices priority over others using the Xserve. I want it to control... the network, in all aspects: DNS, Open Directory (Master), Firewall etc. Am I still able to control the network with the Xserve if it is hooked up side by side to the clients without reconfiguring my router to hop through the Xserve before going to the internet? If not, why not just use the Xserve as a middle man as I currently do?
    What are the benefits of using it side by side to the clients? What are the drawbacks of my current setup? (Other than it not functioning)

  • Creative MP3 Players (Especially ZEN Touch 2) durability: satisfied?

    Hello,
    I'm willing to buy a ZEN Touch 2, it look so amazing!
    However, what I would like to know more: durability!
    Is the ZEN Touch 2 (Or any other MP3 Player from Creative) durable enough?
    I'll still have the year warrantee, but I'll need to ship it in the US, it'll need to be shipped at another adress in the US, and then shipped back to me (I'm in Canada).
    That'll be a though job, you know.
    My first MP3 , an Archos .5 Vision, died on me when it ran out of batteries for the first time; strangely, I reloaded it, and it had trouble booting.
    My second and actual MP3, Archos 2 Vision, has brokens contacts in the headphone jack... -___-
    Well, it still work, but it's really annoying.
    If you are a ZEN Touch 2 owner, please give me your feedback!
    Thanks you very much!

    Hi Gamex I have a Zen Touch 2 with GPS in the UK. In the first 3 weeks, it froze 3 or 4 times, and then finally died when downloading the Creative update to Android 2.2. You need to be aware that Creative Tech Support seem not to have yet caught up with the fact that they have a new type of MP3 player, and all the Knowledgebase articles they will refer you to are not relevant, as they deal with the older hard dri've type of player. It took me all but a fortnight of shouting to get them to authorise its return for repair/replacement, which is where it is currently. In addition, if you're going for the GPS model, advertised as 8GB, be aware it's capacity for music etc is a mere 4.gb, and any apps you download will eat into that. The way round this is to buy a big micro SDHC card (I got a 32gb one) which integrates seamlessly into the player. You can opt to put the apps on there if you so wish. That's the bad bit; the good bit is that it looks and feels great, and the touchscreen, while not as responsi've as some, is more than acceptable, to me at least. The sound quality is not as good as some other Creative players, mainly due to the fairly low spec earbuds supplied. Get some good ones, and the sound is fine, although strangely there is no equalizer facility. The FM radio, with RDS, gives quite astonishing reception on the move. You can import playlists from Media Player, but there is no option for crossfading, so you get a fairly significant gap between tracks. There are a fair selection of apps available, including an antivirus one (I see you were asking elsewhere about that) but you cannot access Android market; apps are downloaded from the Ziio website. Battery life is obviously dependant on what you are doing; wifi and GPS use will inevitably eat power before your very eyes. Using it for music was giving me around hours (less than claimed). Video playback (which is also very good) brings that down to around 4 hours. Overall I would say I was a little dissapointed with it, but that said having been without it now for nearly 3 weeks I realise how much I want it back, so it can't be all bad! Hope this helps? Regards Mike F

  • InvalidClientIdException while creating Durable subscription in weblogic

    Hi,
    We have scenario to create a durable subscription for an MDB. Here application in weblogic is a subscriber to a Topic present on the Progress Sonic. For integrating to independent platforms we are using Foreign Server mechanism under JMS Modules.
    For creating durable subscription, we have changed the MDB code . Below is the MDB code,
    package com.test;
    import java.util.Enumeration;
    import javax.annotation.Resource;
    import javax.annotation.Resources;
    import javax.ejb.MessageDriven;
    import javax.ejb.TransactionAttribute;
    import javax.ejb.TransactionAttributeType;
    import javax.ejb.TransactionManagement;
    import javax.ejb.TransactionManagementType;
    import javax.jms.Message;
    import javax.jms.MessageListener;
    import javax.jms.TextMessage;
    import javax.ejb.ActivationConfigProperty;
    * Message-Driven Bean implementation class for: TestMDB
    @MessageDriven(description = "mdb for Airline Schedule Change MDB",
    name = "AirlineScheduleMDB",
    activationConfig = {
    @ActivationConfigProperty(propertyName = "destinationType",
    propertyValue = "javax.jms.Topic"),
    @ActivationConfigProperty(propertyName = "subscriptionDurability",
    propertyValue = "Durable")
    @TransactionManagement(value = TransactionManagementType.CONTAINER)
    @Resources( { @Resource(name = "ConnectionFactoryRef",
    mappedName = "TopicConnectionFactory",
    type = javax.jms.ConnectionFactory.class) })
    public class TestMDB implements MessageListener {
    * @see MessageListener#onMessage(Message)
    @TransactionAttribute(value = TransactionAttributeType.NOT_SUPPORTED)
    public void onMessage(Message message) {
    System.out.println("Inside message : ");
    try {
    Enumeration<Object> messageProperty = message.getPropertyNames();
    System.out.println("The request : "+message);
    if(message != null){
    System.out.println("TestMDB : onMessage : Start");
    }else{
    System.out.println("Received Input message is empty");
    } catch (Exception e) {
    System.out.println("Exception Occurred in TestMDB : ");
    e.printStackTrace();
    System.out.println("TestMDB : onMessage : End.Time taken is :");
    Also the following change was included in the weblogic-ejb-jar.xml.
    <?xml version="1.0" encoding="UTF-8"?>
    <weblogic-ejb-jar
    xmlns="http://www.bea.com/ns/weblogic/90"
    xmlns:j2ee="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/90 http://www.bea.com/ns/weblogic/90/weblogic-ejb-jar.xsd">
    <weblogic-enterprise-bean>
    <ejb-name>TestMDB</ejb-name>
    <message-driven-descriptor>
    <pool>
    <initial-beans-in-free-pool>1</initial-beans-in-free-pool>
    </pool>
    <destination-jndi-name>DurableJNDI</destination-jndi-name>
    <connection-factory-jndi-name>TopicConnectionFactory</connection-factory-jndi-name>
    <jms-polling-interval-seconds>30</jms-polling-interval-seconds>
    <generate-unique-jms-client-id>true</generate-unique-jms-client-id>
    <jms-client-id>DurableTest</jms-client-id>
    </message-driven-descriptor>
    </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    Exception we got :
    <03-Apr-2012 18:11:02 o'clock UTC> <Warning> <EJB> <BEA-010061> <The Message-Driven EJB: TestMDB is unable to connect to the JMS destination: DurableJNDI. The Error was:
    javax.jms.InvalidClientIDException: Invalid client id: DurableTest_drdevwls_TestDomain-wls1_CLEARCF.jarTestMDB
    Weblogic is automatically creating a unique id based on the combination of Adminserver/Managedserver/Projectname etc.
    However the id created by weblogic seems to have a dot(.) which as per Sonic spec is an invalid character.
    eg:- DurableTest_test_domain_AdminServer_CLEARCF.jarTestMDB
    Hence we changed the parameter to false and provided our own value.
    <generate-unique-jms-client-id>false</generate-unique-jms-client-id>
    <jms-client-id>DurableTest</jms-client-id>
    At this point of time we were able to see that MDB have created a Durable subscription successfully and it worked as expected.
    However when we tried to scale this change to multiple managed servers, there were errors thrown from sonic side.
    javax.jms.JMSException: [129] progress.message.client.EUserAlreadyConnected: Administrator/$DURABLE$DurableTest$DurableTest
    So we cannot have same clientid for multiple clients(managed server). We arent sure how to proceed with this.
    We need to find a way to remove the dot from the dynamic id weblogic creates.
    Any help on this is highly appreciated.

    Hi Tom,
    We have found the solution to this problem and thanks for your suggestion that has partially helped us in solving the problem.
    As you have suggested we have defined client-id on the connection factory however we will be having only connection factory instead of multiple with different client-ID's.
    Along with the client-id configured at the connection factory level we are now setting the attributes generate-unique-client-id as true at the weblogic end.
    By doing this way, I assume that weblogic while making the durable subscription connection is passing the uniquely generated client ID (which has dots '.' included in it ) as subscription name and client-id will be same, that is defined on the connection factory.
    A question may arise that - 'why is sonic accepting subscription name with dots but not the client-id ?' - When observed from the sonic end the dots in the subscription name are replaced by '@@@' .
    Sonic need to answer the question of why the dots are being replaced for subscription name but not for client-id.
    Regards,
    Bharat K

Maybe you are looking for

  • Video playback stops at first bitrate switch

    When playing my manifest file for HTTP dynamic streaming, it will play the first bitrate (150), however, at exactly 6 seconds, it tries to switch to a higher bitrate (1500) and the video stops playing, but the audio continues. I have tried multiple m

  • I touch 1 gen freezes itunes

    i never updated my itunes version 8.0.2 bacause when i did, my ipod got not recognized any more, as well as closed i tunes down. As i upgraded to itouch firmware 3.1 itunes 8.2 is at least needed. When i connect itouch to Itunes it freezes for 1 minu

  • Missing volume for "movies" after backup.

    Hi, My problem is as follows: I recently re-installed my 10.5 and did a TimeMachine backup restore after. Unfortunatly the backup did not include the "movie" - folder that residents in "user". (I have a "bypass" on this folder in my TimeMachine-backu

  • Error when doing a Full deployment: querying transient versioned item type...

    dears, the problem i am having happens when a execute a full deployment, there is just te stacktrace below but i have not so far found the root cause. Could anyone please check it have ocurred the same? Thanks! **** Error Qui Nov 21 11:18:05 BRST 201

  • Can we call Data flow Task as Container

    Hi All, Can we call Data flow Task as Container  If So what are conditions required to Satisfy as a Container  Thanks Ravindra