HELP: how can we make BPEL PM more developer friendly

Hi All,
With the new year starting, one of our resolutions for 2005 is to enhance the developer experience for BPEL PM and we are looking for suggestions and help in prioritizing them. Given that some of you guys have kicked the tires, you are the best source for those suggestions. I hope that you guys will be vocal.
We are interested in the end to end experience: OTN, Download, 1 st hour, documentation, product development, console, this forum, anything else that is part of the overall experience.
If you do not like to post, please just send me an email.
Thank you!
Edwin
VP Product Development
Oracle BPEL Process Manager
[email protected]

Edwin,
I might have several suggestions as I'm sinking my teeth into the PM Server and Designer. We're considering to use the BPEL technology in the BIG way.
First of all, make it a bug-free (as much as possible). Let me describe to you what I believe is a bug or a flaky design. In the Designer, File>New>Oracle BPEL Project creates a new project with a file bpel.xml. For example, look at your CreditFlow sample. In that file there is <partnerLinkBinding name="..." <property name=wsdlLocation"> http://<host name of the WSDL host server>/....
when the partner WSDL is hosted on the localhost that <host name> in the line above is the name of my machine instead of 'localhost'. Then, <project name>.bpel validation crashes when you're in the off-line (disconnected) mode or connected via VPN gateway (since obviously you think you don't need a proxy because everything is local). But, even if it works inside the LAN I think it's a bad design; since it's generated automatically by Designer the developer doesn't have a clue what's wrog when he/she needs to debug your code. The Designer should stick there 'localhost' instead of the the name of my computer on the network.
Here how I spotted it. I generated you CreditFlow sample in the Quick Start Tutorial. I went by the book, Compiled the CreditFlow.bpel and it crashed! The book did not say it was supposed to crash. The book said everything should be honky dory. The Validator printed a message: "connection timeout...." Since I'm new to the BPEL it took me awhile to figure out and once I stick 'localhost' in the right place in bpel.xml everything worked. Again, I was running everything on localhost.
So, I think it's a bug at worst or a flaky design at second. What am I missing here?
The problem is that if my company wants to convert the Biz Analysts into BPEL modelers how could a BA figure out the solution to the problem like this? He/She would just give up and tell the Technologists (us) that this is a bad product.
Thanks,
Greg
P.S. What happened to Doron Sherman (CTO) and the old Collaxa folks? He is not listed in the ORCL directory. For those who don't know BPEL Server and Designer were developed by Collaxa and ORCL bought that company last year.

Similar Messages

  • How can i make it so more then one computer can be on time machine at one time

    How can I make apple airport let more the one computer be on the internet at one time

    Any computer logged into your wireless network should be able to access the Internet.
    Is that not the case.

  • How can I make my Flash menu SEO Friendly?

    Hi all, I have my site at http://www.sgdtechs.com and I really don't like the ugly menu I have there now and I designed a beautiful menu in flash, but I've read online that it's not SEO friendly....
    So my question is this, how can I make my menu SEO friendly? Is it even possible?
    Thanks for your answers!

    Provide an html menu for SEO purposes.  If you want to keep the Flash version, consider providing the html at the bottom of the page as text links like you will see in many sites.

  • How can I make the cursor more visible?

    I have seen in some training videos a ring around the cursor to make it more visible. How can I get this ring around my cursor in Photoshop CS 3?
    Anyone knows? /Tommy

    This should do it:
    1. Go to systems preference  and click it.  (it'll be under the top L hand side, click the apple logo and "System Preferences" will appear in a drop menu)
    2. Go to Show All
    3. Click Universal (round blue shape with a person logo)
    4. Click Mouse
    5. Go to Cursor size (at the bottom of the page)  and adjust the size from normal to large.  Watch your actual cursor on screen so you can see how big or small you're making it.
    voila:   a change of arrow or cursor size.

  • WIFI WPA-EAP won't connect as EAP method only shows SIM, how can I make it show more?

    Trying to connect to a wifi connection which uses WPA-EAP security, with a username and password system (at work and I cannot change these settings).
    My Android device connects with no issues, but my ZTE open C on Firefox OS will not...
    Looking into my Android settings it is using EAP method PEAP; but the FFOS will only let me use SIM.
    What is the workaround for this?
    How can I connect my device to my work's wifi?

    GAUTAM24, if you read the earlier reply you would see a relevant bug has already been filed.

  • Menu Bar contrast is sick. How can I make it look more vivid?

    How can I increase the contrast for the Menu Bar?

    Maybe look if you can find a solid persona that works for you.
    *Personas for Firefox | Gallery: http://www.getpersonas.com/en-US/gallery/Solid

  • How can I make my code more efficient?

    Hello Everyone,
    I have a problem that is something like this:
    Say you have a database and inside that database you have a table called 'books' which has only 3 columns: id, title, author.
    Now let's say you have a servlet/jsp (servlet1) that expects a parameter called 'author' and it will display a list of all books by a certain author to the client. It will display this list such that each book is a link to another servlet/jsp (servlet 2)that accepts the book 'id' [primary key] as a parameter. Servlet 2 will display all the information about that book to the client.
    Servlet1 works by querying the database and building a list of beans, one of which will contain the same data as servlet 2 is going to need to display the book information. But I don't know how to make so that servlet2 can see the bean used in servlet 1. Right now servlet2 gets the primary key as a parameter and queries the database again. This can't be the right way to being going about this. Can anyone offer me some insight as to a better way to approach this problem?
    Thanks v. much.
    Chris Latimer

    put all the data you wish the 2nd servlet to recieve from the first servlet in a bean or object and pass it to the second. This works great with small amounts of data, but if you are going to have huge beans there are other ways of doing it.
    If you have huge beans, then you may consider updating/inserting into a table in the database and then reading the data from the table into the 2nd servlet.
    tnx,
    Les

  • Help - How can I make this effect?

    Hey guys,
    im kinda new to photoshop and i've bin playing around with stuff, i saw these 3 pictures on the site and i like the effect that they used for the backgrounds.
    could anyone tell me what effect(s) the person who made this used? (i'd like to create a copy of them just for personal learning)

    Hi there
    there are a huge number of sites with tutorials
    for example
    http://www.photoshopstar.com/
    http://photoshoptutorials.ws/
    you can find more withh google
    In your case try to find tutorial about "Wonderful backgrounds"

  • Help: how can i make fresh download of ios5, having one already installed on my iphon4 4?

    Hi
    since ive installed ios5 on my iphone, 4 two days ago im having a lot of problems like activating imessage, reminders does not appear on lock screen, missing adress book buttons, etc...
    i would like to download the ios5 again from apple servers, but i am not able to download it because the itunes says that is the latest version.
    can anyone help me?
    using win7
    thanks in advance
    hemal

    Plug your iPhone into iTunes - and press Restore
    OR
    On your phone, go to Settings->General->Reset->Erase all Content and Settings

  • How can I make my code more optimized?

    This is the code for my android game I am trying to make:
    import flash.events.MouseEvent;
    import flash.media.SoundChannel;
    import flash.display.MovieClip;
    var STATE_INIT_GAME:String = "STATE_INIT_GAME";
    var STATE_PLAY_GAME:String = "STATE_PLAY_GAME";
    var STATE_END_GAME:String = "STATE_END_GAME";
    var gameState:String;
    var hearts:Array;
    var atoms:Array;
    var bombs:Array;
    var enemies:Array;
    var level:Number;
    var score:Number;
    var lives:Number;
    var tempHeart:MovieClip;
    var tempBomb:MovieClip;
    var tempAtom:MovieClip;
    var tempEnemy:MovieClip;
    var rSound:rMusic = new rMusic  ;
    var Rchannel:SoundChannel;
    var offset:int = 20;
    var enemyBaseSpeed:int = 4;
    var speedLevelInc:Number = 3;
    var MAX_SPEED:Number = 100;
    score = 0;
    roachLevel.score_txt.text = String(score);
    function gameLoopR(e:Event):void
        switch (gameState)
            case STATE_INIT_GAME :
                initGame();
                break;
            case STATE_PLAY_GAME :
                playGame();
                break;
            case STATE_END_GAME :
                endGame();
                break;
    function initGame():void
        Rchannel = rSound.play(0,9999);
        level = 1;
        roachLevel.level_txt.text = String(level);
        lives = 3;
        roachLevel.lives_txt.text = String(lives);
        hearts = new Array();
        bombs = new Array();
        atoms = new Array();
        enemies = new Array();
        gameState = STATE_PLAY_GAME;
    function playGame():void
        makeEnemies();
        moveEnemies();
        makeHearts();
        moveHearts();
        makeBombs();
        moveBombs();
        makeAtoms();
        moveAtoms();
        testForEnd();
    function makeBombs():void
        var chance:Number = Math.floor(Math.random() * 6000);
        if (chance <=  +  level)
            tempBomb.scaleX = 1.5;
            tempBomb.scaleY = 1.5;
            tempBomb = new Bomb();
            tempBomb.x = Math.round(Math.random() * 480);
            tempBomb.cacheAsBitmap = true;
            addChild(tempBomb)
            bombs.push(tempBomb);
            tempBomb.speed = 1;
    function moveBombs():void
        var tempBomb:MovieClip;
        for (var h:int =bombs.length-1; h>=0; h--)
            tempBomb = bombs[h];
            if (tempBomb.dead)
                Rchannel.stop();
                lives = 0;
                roachLevel.level_txt.text = String(lives);
                bombs.splice(h,1);
            else
                tempBomb.rotation += (Math.round(Math.random()*.4));
                tempBomb.y +=  (Math.cos((Math.PI/180)*tempBomb.rotation))*tempBomb.speed;
                if (tempBomb.x < 10)
                    tempBomb.x = 11;
                if (tempBomb.x > stage.stageWidth - offset)
                    tempBomb.x = stage.stageWidth - offset;
                if (tempBomb.y > stage.stageHeight)
                    removeBomb(h);
    function makeEnemies():void
        var chance:Number = Math.floor(Math.random() * 150);
        if (chance <= level && enemies.length < 4)
            tempEnemy = new Enemy();
            tempEnemy.x = Math.round(Math.random() * 480);
            tempEnemy.cacheAsBitmap = true;
            addChild(tempEnemy);
            tempEnemy.scaleX = 1.5;
            tempEnemy.scaleY = 1.5;
            enemies.push(tempEnemy);
            tempEnemy.speed = enemyBaseSpeed + ((level - 1) * speedLevelInc);
            if (tempEnemy.speed > MAX_SPEED)
                tempEnemy.speed = MAX_SPEED;
    function moveEnemies():void
        var tempEnemy:MovieClip;
        for (var i:int =enemies.length-1; i>=0; i--)
            tempEnemy = enemies[i];
            if (tempEnemy.dead)
                score++;
                score++;
                roachLevel.score_txt.text = String(score);
                enemies.splice(i,1);
            else
                tempEnemy.rotation += (Math.round(Math.random()*.4));
                tempEnemy.y +=  (Math.cos((Math.PI/180)*tempEnemy.rotation))*tempEnemy.speed;
                if (tempEnemy.x < 10)
                    tempEnemy.x = 11;
                if (tempEnemy.x > stage.stageWidth - offset)
                    tempEnemy.x = stage.stageWidth - offset;
                if (tempEnemy.y > stage.stageHeight)
                    removeEnemy(i);
                    lives--;
                    roachLevel.lives_txt.text = String(lives);
    function makeHearts():void
        var chance:Number = Math.floor(Math.random() * 8000);
        if (chance <=  +  level)
            tempHeart = new Heart();
            tempHeart.x = Math.round(Math.random() * 480);
            tempHeart.cacheAsBitmap = true;
            addChild(tempHeart);
            tempHeart.scaleX = 1.5;
            tempHeart.scaleY = 1.5;
            hearts.push(tempHeart);
            tempHeart.speed = enemyBaseSpeed + ((level - 1) * speedLevelInc);
    function moveHearts():void
        var tempHeart:MovieClip;
        for (var k:int =hearts.length-1; k>=0; k--)
            tempHeart = hearts[k];
            if (tempHeart.dead)
                lives++;
                roachLevel.lives_txt.text = String(lives);
                hearts.splice(k,1);
            else
                tempHeart.rotation += (Math.round(Math.random()*.4));
                tempHeart.y +=  (Math.cos((Math.PI/180)*tempHeart.rotation))*tempHeart.speed;
                if (tempHeart.x < 10)
                    tempHeart.x = 11;
                if (tempHeart.x > stage.stageWidth - offset)
                    tempHeart.x = stage.stageWidth - offset;
                if (tempHeart.y > stage.stageHeight)
                    removeHeart(k);
    function makeAtoms():void
        var chance:Number = Math.floor(Math.random() * 7500);
        if (chance <=  +  level)
            tempAtom = new Atom();
            tempAtom.x = Math.round(Math.random() * 480);
            tempAtom.cacheAsBitmap = true;
            addChild(tempAtom);
            tempAtom.scaleX = 1.5;
            tempAtom.scaleY = 1.5;
            atoms.push(tempAtom);
            tempAtom.speed = enemyBaseSpeed + ((level - 1) * speedLevelInc);
    function moveAtoms():void
        var tempAtom:MovieClip;
        for (var c:int =atoms.length-1; c>=0; c--)
            tempAtom = atoms[c];
            if (tempAtom.dead)
                score++;
                score++;
                score++;
                score++;
                score++;
                roachLevel.score_txt.text = String(score);
                atoms.splice(c,1);
            else
                tempAtom.rotation += (Math.round(Math.random()*.4));
                tempAtom.y +=  (Math.cos((Math.PI/180)*tempAtom.rotation))*tempAtom.speed;
                if (tempAtom.x < 10)
                    tempAtom.x = 11;
                if (tempAtom.x > stage.stageWidth - offset)
                    tempAtom.x = stage.stageWidth - offset;
                if (tempAtom.y > stage.stageHeight)
                    removeAtom(c);
    function removeEnemy(id:int)
        removeChild(enemies[id]);
        enemies.splice(id,1);
    function removeHeart(kd:int)
        removeChild(hearts[kd]);
        hearts.splice(kd,1);
    function removeBomb(hd:int)
        removeChild(bombs[hd]);
        bombs.splice(hd,1);
    function removeAtom(cd:int)
        removeChild(atoms[cd]);
        atoms.splice(cd,1);
    function testForEnd():void
        if (score > level * 20)
            level++;
            roachLevel.level_txt.text = String(level);
        if (lives == 0)
            gameState = STATE_END_GAME;
    function endGame():void
        removeGame();
        roachLevel.visible = false;
        Menu_mc.visible = false;
        endscreen_mc.visible = true;
        removeEventListener(Event.ENTER_FRAME, gameLoopR);
        showresults();
    function removeGame():void
        for (var i:int = enemies.length-1; i >=0; i--)
            removeEnemy(i);
        for (var h:int = bombs.length-1; h >=0; h--)
            removeBomb(h);
        for (var k:int = hearts.length-1; k >=0; k--)
            removeHeart(k);
        for (var c:int = atoms.length-1; c >=0; c--)
            removeAtom(c);
    The game works perfectly on Android and everything works. There is one problem though. The game gets laggy and the enemies get harder to click when the enemies' speed increases. This is the code for the enemies. It is a movie clip that gets added on to the stage by actionscript.
    import flash.events.MouseEvent;
    import flash.display.MovieClip;
    import fl.motion.Animator;
    import flash.events.*;
    play();
    var mysound:squish = new squish();
    this.addEventListener(MouseEvent.CLICK, kill);
    this.dead = false;
    function kill(e:MouseEvent):void
        this.dead=true;
        mouseChildren=false
        mysound.play();
        gotoAndPlay(21);
        this.removeEventListener(MouseEvent.CLICK, kill);
        flash.utils.setTimeout(removeSelf,2000);
    function removeSelf():void
        this.parent.removeChild(this);

    no,
    var identityMatrix:Matrix=new Matrix()
    my_sprite.cacheAsBitmapMatrix=identityMatrix;
    though for tempAtom,
    var scaleMatrix:Matrix=identityMatrix.scale(1.5,1.5); //would be appropriate.
    you can get a cc trial, http://gaming.adobe.com/technologies/scout/

  • How can I make Preview behave more like it used to?

    I use Preview a LOT for doing things like annotating screenshots for IT helpdesk stuff.
    In 10.9 it was invaluable; but the version in 10.10 seems to be a bad  step backwards. I used to be able to select a tool, like text,  a line, or oval, for example, and it would stick, and let me draw the item where I wanted it to go, like an actual graphics program.
    Now I have to reselect the tool each time, and it plops some default shape in the middle of the image that I then have to drag and resize to suit my needs. Needless to say this is making my task annoyingly repetitive and longer than necessary. The preferences are useless. Any hints or secrets to m,making Preview a useful graphics tool again?

    I use Preview a LOT for doing things like annotating screenshots for IT helpdesk stuff.
    In 10.9 it was invaluable; but the version in 10.10 seems to be a bad  step backwards. I used to be able to select a tool, like text,  a line, or oval, for example, and it would stick, and let me draw the item where I wanted it to go, like an actual graphics program.
    Now I have to reselect the tool each time, and it plops some default shape in the middle of the image that I then have to drag and resize to suit my needs. Needless to say this is making my task annoyingly repetitive and longer than necessary. The preferences are useless. Any hints or secrets to m,making Preview a useful graphics tool again?

  • Slow computer due to only 25 GB of storage available.  BUT...most of what's on the HD is labelled as "other".  What is this, and how can I make more space?  THANK YOU!

    SLOW MACBOOKPRO G4 === due to only 25 GB of storage available.  BUT...most of what's on the HD is labelled as "other".  What is this, and how can I make more space?  THANK YOU!

    I apologize for not knowing how or where to post the etre report, so I just copy&paste it here.
    My system is slow o
    Hardware Information:
              MacBook Pro (15-inch, Mid 2010)
              MacBook Pro - model: MacBookPro6,2
              1 2.4 GHz Intel Core i5 CPU: 2 cores
              4 GB RAM
    Video Information:
              Intel HD Graphics - VRAM: 288 MB
              NVIDIA GeForce GT 330M - VRAM: 256 MB
    System Software:
              OS X 10.9.1 (13B42) - Uptime: 0 days 16:57:32
    Disk Information:
              Hitachi HTS545032B9SA02 disk0 : (320.07 GB)
                        EFI (disk0s1) <not mounted>: 209.7 MB
                        Macintosh HD (disk0s2) /: 319.21 GB (143.12 GB free)
                        Recovery HD (disk0s3) <not mounted>: 650 MB
              MATSHITADVD-R   UJ-898 
    USB Information:
              Apple Inc. BRCM2070 Hub
                        Apple Inc. Bluetooth USB Host Controller
              Apple Internal Memory Card Reader
              Apple Inc. Apple Internal Keyboard / Trackpad
              Apple Computer, Inc. IR Receiver
              Apple Inc. Built-in iSight
    FireWire Information:
    Thunderbolt Information:
    Kernel Extensions:
              com.symantec.kext.internetSecurity          (1.3.2f5)
              com.symantec.kext.pf          (4.2.1f7)
              com.symantec.kext.ips          (3.2f8)
              com.symantec.kext.SymAPComm          (11.2.2f3)
              com.symantec.kext.fw          (1.0.3f5)
    Problem System Launch Daemons:
    Problem System Launch Agents:
    Launch Daemons:
              [System] com.adobe.fpsaud.plist 3rd-Party support link
              [System] com.google.keystone.daemon.plist 3rd-Party support link
              [System] com.symantec.avscandaemon.plist 3rd-Party support link
              [System] com.symantec.deepsight-extractor.plist 3rd-Party support link
              [System] com.symantec.diskMountNotify.plist 3rd-Party support link
              [System] com.symantec.MissedTasks.plist 3rd-Party support link
              [System] com.symantec.navapd.plist 3rd-Party support link
              [System] com.symantec.navapdaemonsl.plist 3rd-Party support link
              [System] com.symantec.Sched501-1.plist 3rd-Party support link
              [System] com.symantec.sharedsettings.plist 3rd-Party support link
              [System] com.symantec.symdaemon.plist 3rd-Party support link
              [System] com.symantec.symSchedDaemon.plist 3rd-Party support link
    Launch Agents:
              [System] com.conduit.loader.agent.plist 3rd-Party support link
              [System] com.google.keystone.agent.plist 3rd-Party support link
              [System] com.hp.help.tocgenerator.plist 3rd-Party support link
              [System] com.mga.updater.plist 3rd-Party support link
              [System] com.symantec.uiagent.application.plist 3rd-Party support link
    User Launch Agents:
    User Login Items:
              Garmin Lifetime Map Updater
              Steam
              iTunesHelper
              Skype
              Steam
              Mail
              GamePadCompanionLauncher
              Mac Game Store Helper
              HPEventHandler
              SymSecondaryLaunch
    Internet Plug-ins:
              JavaAppletPlugin: Version: 14.9.0 - SDK 10.7 Outdated! Update
              FlashPlayer-10.6: Version: 12.0.0.38 - SDK 10.6 3rd-Party support link
              Default Browser: Version: 537 - SDK 10.9
              Flash Player: Version: 12.0.0.38 - SDK 10.6 3rd-Party support link
              QuickTime Plugin: Version: 7.7.3
              o1dbrowserplugin: Version: 4.9.1.16010 3rd-Party support link
              npgtpo3dautoplugin: Version: 0.1.44.29 - SDK 10.5 3rd-Party support link
              GarminGpsControl: Version: 3.0.1.0 Release - SDK 10.4 3rd-Party support link
              googletalkbrowserplugin: Version: 4.9.1.16010 3rd-Party support link
              iPhotoPhotocast: Version: 7.0 - SDK 10.8
    Audio Plug-ins:
              BluetoothAudioPlugIn: Version: 1.0 - SDK 10.9
              AirPlay: Version: 1.9 - SDK 10.9
              AppleAVBAudio: Version: 2.0.0 - SDK 10.9
              iSightAudio: Version: 7.7.3 - SDK 10.9
    User Internet Plug-ins:
              BrowserPlus_2.9.8: Version: 2.9.8 3rd-Party support link
              LogitechDeviceDetection: Version: 1.0.0.76 - SDK 10.7 3rd-Party support link
    3rd Party Preference Panes:
              BrowserPlus  3rd-Party support link
              Flash Player  3rd-Party support link
              GamePadCompanionPrefPanel  3rd-Party support link
              Norton\nQuickMenu  3rd-Party support link
    Bad Fonts:
              None
    Old Applications:
              /Applications/iWork '09
              /Users/[redacted]/Downloads
                        Mystery Case Files Dire Grove CE:          Version: 1.0.8 - SDK 10.5 3rd-Party support link
                        Mystery Case Files Escape from Ravenhearst CE:          Version: 1.0.8 - SDK 10.5 3rd-Party support link
                        Weird Park Broken Tune Collectors Edition:          Version: 1.2 - SDK 10.5 3rd-Party support link
                        Call of Duty 4 Modern Warfare-1:          Version: 1.2 - SDK 10.5 3rd-Party support link
                        Anna-1:          Version: 1.0.8 - SDK 10.5 3rd-Party support link
                        Call of Duty 4 Modern Warfare:          Version: 1.0.8 - SDK 10.5 3rd-Party support link
                        Drawn The Painted Tower:          Version: 1.0.7 - SDK 10.5 3rd-Party support link
              Mayan Prophecies - Ship of Spirits CE:          Version: 1.0 - SDK 10.5 3rd-Party support link
                        /Applications/MacGameStore/Demos/Mayan Prophecies Ship of Spirits CE/Mayan Prophecies - Ship of Spirits CE.app
              Garmin Lifetime Map Updater:          Version: 2.1 - SDK 10.5 3rd-Party support link
              Google Chrome:          Version: 20.0.1132.47 - SDK 10.5 3rd-Party support link
              FacebookVideoCalling:          Version: 1.2.0.157 - SDK 10.5 3rd-Party support link
                        /Users/[redacted]/Library/Application Support/Facebook/video/1.2.0.158/FacebookVideoCalling.app
    Time Machine:
              Time Machine not configured!
    Top Processes by CPU:
                   8%          WindowServer
                   2%          HP Utility
                   1%          EtreCheck
                   1%          NortonAutoProtect
                   0%          mds
    Top Processes by Memory:
              315 MB          SymAVScanDaemon
              111 MB          DashboardClient
              102 MB          WindowServer
              94 MB          mds_stores
              90 MB          Mail
    Virtual Memory Information:
              36 MB          Free RAM
              1.23 GB          Active RAM
              1.18 GB          Inactive RAM
              758 MB          Wired RAM
              1.27 GB          Page-ins
              21 MB          Page-outs
    Thank-You

  • How can I make a server differ between two or more clients?

    How can I make a server differ between two or more clients?
    The clients can connect and talk to the server fine, but how can I make the server talk to one, two or all clients? i.e. what would be a good way to implement this?
    Currently, the server listens for connections like this:
    while (listening) {
    try {
    new ServerThread(this, serverSocket.accept()).start();
    I guess one way would be to add the ServerThreads to a Hashtable with the client ID as key, and then get the ServerThread with the proper client ID, but this seems unnecessary complicated. Any ideas?

    Complicated was perhaps the wrong word, I should have
    written something like it doesn't "feel" right. Or is
    this a common and good way to solve communication
    between a server and multiple clients?Thats pretty much how I do it. I normally use an array or ArrayList of Sockets instead of HashTable, with [0] being the first player etc.... Then you can communicate with exactly who you want. If you want to send bytes to all of them, just send the same thing to each socket individually (or is there a better way to do this?).

  • Help - I have an apple id account, where is my iPod and iPad registered, but also the iPod of my daughter. How can I make an account for my daughter and keep all the apps she has on her iPod?

    Help - I have an apple id account, where is my iPod and iPad registered, but also the iPod of my daughter. How can I make an account for my daughter and keep all the apps she has on her iPod and in her own iTunes?

    Sorry, content bought with one Apple ID cannot be merged or transferred to another Apple ID.

  • How can you make your persona show on the top and bottom? Also can you make it bigger at the top to show more of the picture?

    How can you make your persona show on the top and bottom?
    Also can you make it bigger at the top to show more of the picture?

    Add extra empty toolbars if you want to see more of the persona.<br />
    You can create extra toolbars to get extra space via View > Toolbars > Customize<br />
    You have to put something on a toolbar (drag a Space item onto it) before closing the Customize window because empty toolbars are automatically removed.<br />
    See http://kb.mozillazine.org/Toolbar_customization

Maybe you are looking for

  • Multiple Mailadapters for one mailbox

    Hello, we are receiving messages into one emailbox from several senders. (same directory on an IMPA server, but it is not possible to use different folders) We want to have different mailadapters to know in SXMB_MONI which party is sending the messag

  • How to handle a java.lang.OutOfMemoryError???

    I use java1.1.7A. In prog. a outofmemoryerror occours when using a JEditorPane.EditorKit.read(xx,xx,xx). I catched it and forced running a System.gc( ) to make the garbage collector active to enlarge the memory. But it seems it didn't help. Has anybo

  • HT2584 HOW DO I PRINT RETURN ADDRESS LABELS FROM MY ADRESS BOOK?

    HOW DO I PRINT RETURN ADDRESS LABELS FROM MY ADRESS BOOK?

  • My F Buttons dont do what they are supposed to do!

    My F buttons (ex. F1, F2, F3 etc.) dont do what they are labeled to do, i pressed F9 for expose and now my F buttons do weird commands, like when i press volume up (F12) my dock comes up and when i press F11 (down volume) it pushes my windows out of

  • Adaptive Computing Controller (ACC) install trouble

    Hi, experts. I installed Preview Version of Netweaver 04 Web AS for Linux (containing both ABAP and JAVA). I tried to install ACC SP4 on it. It went through a lot of steps without too much trouble. But at the step next to last, i.e. "SAP J2EE Engine