UDP client/server

Im trying to connect to a server from my client useing UDP. My partner has the server but im not able to see it at the moment. I have the client that is trying to reach it. Here is the code i use:public Connect(String serv_addr){
          try{
               skt = new DatagramSocket();
               server = InetAddress.getByName(serv_addr);
               byte[] connectData = new byte[128];
               connectData = sentance.getBytes();
               sendPacket = new DatagramPacket(connectData, connectData.length,
                         server, 4525);
               skt.send(sendPacket);
               System.out.println(new String(sendPacket.getData()));
          catch(IOException e){
               System.err.println(e);
     }When i run it, i cannot connect and my partner tells me the server is running. Without seeing the Server code and assuming it works properly, does my code look right? The last line in the try statment, Syste.out.ptintln is justing being used for testing.
Thanks in advance

and is there a firewall in the way? If so it won't probably won't forward UDP traffic on that port unless it's been told to, and you won't get an exception.
And some possibly silly questions:
a. are you sure it's a UDP server?
b. are you aware that UDP is an unreliable transport?
You could also try to connect() the datagram socket to that target address before you send. That way if the target is unreachable you will at least get an exception.

Similar Messages

  • Reliable UDP client/server sample

    I need a reliable UDP client/server sample which uses ack,timeout,sequence number, etc. Client and server are different computers in the same network and I need to send a file >10Mb. Where can I find this kind of example? It is required for a project at my university.
    Thanks.

    Can't you use TCP? It already is reliable, has better performance than simple UDP+ACKs (unless you too implement sliding windows), and is a good network citizen (unless you too implement congestion control). Why reinvent the wheel?
    Unless of course your assignment is "reimplement TCP using UDP" in which case you can find the "example" by writing it.

  • UDP Client-Server Communication

    What should I do to the following code to make it able to create a sequence of packets of pre-specified length and size? Also, by varying these parameters, it should be able to create the situation where the packets are lost due to congestion.
    import java.net.*;
    import java.io.*;
    public class UDPServer{
        public static void main(String args[]){
           System.out.println("### Starting UDPServer...");
           DatagramSocket aSocket = null;
                  try{
                  aSocket = new DatagramSocket(6789);
                                      // create socket at agreed port
                         byte[] buffer = new byte[1000];
                         while(true){
                               DatagramPacket request = new DatagramPacket(buffer, buffer.length);
                               aSocket.receive(request);    
                         DatagramPacket reply = new DatagramPacket(request.getData(), request.getLength(),
                               request.getAddress(), request.getPort());
                         System.out.println("sending reply = " + new String(reply.getData()));
                         aSocket.send(reply);
                  }catch (SocketException e){System.out.println("Socket: " + e.getMessage());
                  }catch (IOException e) {System.out.println("IO: " + e.getMessage());
                  }finally {if(aSocket != null) aSocket.close();}
    import java.net.*;
    import java.io.*;
    public class UDPClient
        public static void main(String args[])
                  System.out.println("=== Starting UDPClient...");              ///////
                  // args give message contents and destination hostname
                  DatagramSocket aSocket = null;
                  try {
                         aSocket = new DatagramSocket();   
                         byte [] m = args[0].getBytes();
                         InetAddress aHost = InetAddress.getByName(args[1]);
                         int serverPort = 6789;                                                            
                         DatagramPacket request =
                                new DatagramPacket(m,  args[0].length(), aHost, serverPort);
                         System.out.println("sending request = " + new String(request.getData()));
                         aSocket.send(request);                                          
                         byte[] buffer = new byte[1000];
                         DatagramPacket reply = new DatagramPacket(buffer, buffer.length);   
                         aSocket.receive(reply);
                         System.out.println("Got reply: " + new String(reply.getData()));    
                  } catch (SocketException e) {
                         System.out.println("Socket: " + e.getMessage());
                  } catch (IOException e) { System.out.println("IO: " + e.getMessage());
                  } finally { if(aSocket != null) aSocket.close(); }
    }

    DatagramPacket.

  • Can i run UDP  client and UDP  server socket program in the same pc ?

    hi all.
    when i execute my UDP client socket program and UDP server socket program in the same pc ,
    It's will shown the error msg :
    "Address already in use: Cannot bind"
    but if i run UDP client socket program in the remote pc and UDP server socket program run in local pc , it's will success.
    anybody know what's going on ?
    any help will be appreciated !

    bobby92 wrote:
    i have use a specified port for UDP server side , and for client define the server port "DatagramSocket clientSocket= new DatagramSocket(Server_PORT);"Why? The port you provide here is not the target port. It's the local port you listen on. That's only necessary when you want other hosts to connect to you (i.e. when you're acting as a server).
    The server should be using that constructor, the client should not be specifying a port.
    so when i start the udp server code to listen in local pc , then when i start UDP client code in local pc ,i will get the error "Address already in use: Cannot bind"Because your client tries to bind to the same port that the server already bound to.

  • UDP Client and Server

    I am trying to run a UDP Client and Server by running the server first and then the client. But when I try to do that I get the message java.lang.NoClassDefFoundError: UDPServer and java.lang.NoClassDefFoundError: UDPClient. I have included the code below. Can you please help. Thank you.
    UDPClient.java:
    import java.io.*;
    import java.net.*;
    import java.util.*;
    public class UDPClient{
        public static void main(String[] args) throws IOException{
          Date d=new Date();
          long time1, time2, ETE, sumETE, maxETE, avgETE;
          if(args.length!=1){
              System.out.println("type java UDPClient <hostname>");
              return;
          time1=d.getTime();
          DatagramSocket s=new DatagramSocket();
          String st=new String("dldfjsdkjf");
          byte[] buf=new byte[256];
          buf=st.getBytes();
          InetAddress address=InetAddress.getByName(args[0]);
          DatagramPacket p = new DatagramPacket(buf, buf.length, address, 8777);
          s.send(p);
          p=new DatagramPacket(buf, buf.length, address, 8777);
          s.receive(p);
          time2=d.getTime();
          ETE=(time2-time1)/2;
          s.close();
    UDPServer.java:
    import java.io.*;
    import java.net.*;
    import java.util.*;
    import java.lang.*;
    public class UDPServer{
      public static void main(String[] args){
        try{
          UDPServerThread ust = new UDPServerThread();
          ust.start();
        catch(IOException e){}
    UDPServerThread.java:
    import java.io.*;
    import java.net.*;
    import java.util.*;
    import java.lang.*;
    public class UDPServerThread extends Thread{
      DatagramSocket s=null;
      BufferedReader br=null;
      PrintWriter pw=null;
      public UDPServerThread() throws IOException{
        this("UDPServer");
      public UDPServerThread(String name) throws IOException{
        super(name);
        s=new DatagramSocket(8777);
      public void run(){
          char[] ca=new char[10];
        //while(true){
          try{
              byte[] buf = new byte[256];
              DatagramPacket p = new DatagramPacket(buf, buf.length);
              s.receive(p);
              String st=new String(p.getData());
              for(int i=0; i<10; i++){
                  ca=st.charAt(i);
    buf=st.getBytes();
    InetAddress ad = p.getAddress();
    int port = p.getPort();
    p = new DatagramPacket(buf, buf.length, ad, port);
    s.send(p);
    catch(IOException e){
    System.err.println("Failed to run the server");
    System.exit(-1);
    s.close();

    this has nothing to do with your code, but how you are running it. It is a classpath problem.
    You should go to the directory where the UDPClient.class is, and type
    java -classpath . UDPClient
    similarly for the UDPServer

  • Client/Server in one program (using multiple threads)?

    Is there some examples out there of how to use a client and server in a single program using separate threads? Also, is it possible to start a third thread to control the packets, such as drop a random or specified number of packets (or match on specific data in a packet)?

    Just trying to have a client send udp packets to a server (all on the same machine running from the same program) and want to be able to drop packets coming from the client side to the server side.
    E.g.,
    Here's an example that I found here: http://compnet.epfl.ch/tps/tp5.html
    import java.io.<strong>;
    import java.net.</strong>;
    import java.util.<strong>;
    /</strong>
    * Server to process ping requests over UDP.
    public class PingServer {
         private static double lossRate = 0.3;
         private static int averageDelay = 100; // milliseconds
         private static int port;
         private static DatagramSocket socket;
         public static void main(String[] args) {
              // Get command line arguments.
              try {
                   if (args.length == 0) {
                        throw new Exception("Mandatory parameter missing");
                   port = Integer.parseInt(args[0]);
                   if (args.length > 1) {
                        lossRate = Double.parseDouble(args[1]);
                   if (args.length > 2) {
                        averageDelay = Integer.parseInt(args[2]);
              } catch (Exception e) {
                   System.out.println("UDP Ping Server");
                   System.out.println("Usage: java PingServer port [loss rate] [average delay in miliseconds]");
                   return;
              // Create random number generator for use in simulating
              // packet loss and network delay.
              Random random = new Random();
              // Create a datagram socket for receiving and sending UDP packets
              // through the port specified on the command line.
              try {
                   socket = new DatagramSocket(port);
                   System.out.println("UDP PingSever awaiting echo requests");
              } catch (SocketException e) {
                   System.out.println("Failed to create a socket");
                   System.out.println(e);
                   return;
              // Processing loop.
              while (true) {
                   // Create a datagram packet to hold incoming UDP packet.
                   DatagramPacket request = new DatagramPacket(new byte[1024], 1024);
                   // Block until the host receives a UDP packet.
                   try {
                        socket.receive(request);
                   } catch (IOException e) {
                        System.out.println("Error receiving from socket");
                        System.out.println(e);
                        break;
                   // Print the received data.
                   printData(request);
                   // Decide whether to reply, or simulate packet loss.
                   if (random.nextDouble() < lossRate) {
                        System.out.println("   Reply not sent.");
                        continue;
                   // Simulate network delay.
                   try {
                        Thread.sleep((int) (random.nextDouble() * 2 * averageDelay));
                   } catch (InterruptedException e) {}; // Ignore early awakenings.
                   // Send reply.
                   InetAddress clientHost = request.getAddress();
                   int clientPort = request.getPort();
                   byte[] buf = request.getData();
                   DatagramPacket reply = new DatagramPacket(buf, buf.length,
                             clientHost, clientPort);
                   try {
                        socket.send(reply);
                   } catch (IOException e) {
                        System.out.println("Error sending to a socket");
                        System.out.println(e);
                        break;
                   System.out.println("   Reply sent.");
          * Print ping data to the standard output stream.
         private static void printData(DatagramPacket request) {
              // Obtain references to the packet's array of bytes.
              byte[] buf = request.getData();
              // Wrap the bytes in a byte array input stream,
              // so that you can read the data as a stream of bytes.
              ByteArrayInputStream bais = new ByteArrayInputStream(buf);
              // Wrap the byte array output stream in an input stream reader,
              // so you can read the data as a stream of characters.
              InputStreamReader isr = new InputStreamReader(bais);
              // Wrap the input stream reader in a buffered reader,
              // so you can read the character data a line at a time.
              // (A line is a sequence of chars terminated by any combination of \r
              // and \n.)
              BufferedReader br = new BufferedReader(isr);
              // We will display the first line of the data.
              String line = "";
              try {
                   line = br.readLine();
              } catch (IOException e) {
              // Print host address and data received from it.
              System.out.println("Received echo request from "
                        + request.getAddress().getHostAddress() + ": " + line);
    }I'm looking to do the "processing loop" in a separate thread, but I'd also like to do the client in a separate thread
    So you're saying, just put the client code in a separate class and start the thread and that's it? As far as the packet rate loss thread, is this possible to do in another thread?

  • Client/Server to Web-Based application Conversion

    Hi! Everyone,
    I have couple of questions for you guys.
    Our Client had recently upgraded Forms 4.5 to 6i to move from Client/Server based application to Web based application.
    They are using Forms Server 6i Patch Set 1, OAS 4.0.8.1, Windows NT Service Pack 5 and Oracle 7.3. They are facing the following error every now and then, when they run the forms,
    "FRM-92100: Your connection to the server was interrupted. This may be the result of a network error or a failure on the server.You will need to re-establish your session."
    Please let me know what might be causing the above error. The only problem i can think about might be Oracle 7.3. If i am right only Oracle 8 and above supports Forms 6i.
    Can anyone let me know some tips and/or techniques to upgrade Forms 4.5 to 6i. If there are any important settings/steps which we might have over looked during the upgrade, please list them.
    Any kind of help is greatly appreciated.
    Thanks,
    Jeevan Kallem
    [email protected]

    Most of the code is use with no changes at all.
    See otn.oracle.com/formsupgrade
    Regards
    Grant Ronald

  • Client/server program validation - is it possible?

    I've been mulling over this problem for a few days, and am starting to wonder if it's theoretically possible to find a solution. I'm not looking for specific code, this probably won't even be implemented in Java, I'm just wondering if there is a theoretical program model that would work in this situation.
    The short version:
    Validate the data generated by a client program, without knowing the original data.
    The long version:
    This is a "profiling" system for a MMOG (Massively Multiplayer Online Game). The MMOG is an internet based client/server graphical program where each client connects to the server and they interact with each other and the virtual world. They pay a monthly fee for access to the game. My program is not affiliated with the MMOG or its makers. I have no connections inside the company and cannot expect any cooperation from them.
    The "profiling" system is also a client/server model. The client program runs in the background while the MMOG client is active. It accesses the memory of the MMOG client to retrieve information about the player's character. Then, possibly on request or maybe immediately, it sends the character data to our server.
    What I want to validate is that the character data being sent is unmodified and actually comes from the MMOG program.
    I can reasonably expect that with mild encryption and some sort of checksum or digest, the vast majority of problems can be avoided. However, I am not sure it's possible to completely secure the system.
    I assume that the user has access to and knowledge of the profiler client and the MMOG client, their assembly code, and the ability to modify them or create new programs, leveraging that knowledge. I also assume that the user does not have access to or knowledge of either of the server applications - the MMOG server or mine.
    In a worst-case scenario, there are several ways they could circumvent any security I have yet been able to think of. For instance, they could set up a fake MMOG client that had the data they wanted in memory, and let the profiler access that instead of the real thing. Or, they could rewrite the profiler to use the data they wanted and still encrypt it using whatever format I had specified.
    I have been considering using some kind of buffer overflow vulnerability or remote execution technique that would allow me to run specific parts of the client program on command, or get information by request, something that could not be anticipated prior to execution and thus could not be faked. But this seems not only insecure for the client but also not quite solid enough, depending on how it was implemented.
    Perhaps a series of apparently random validation codes, where the client does not know which one actually is doing the validation, so it must honor them all. Again, this is very conceptual and I'm sure that I'm not explaining them very well. I'm open to ideas.
    If I don't come up with anything better, I would consider relying on human error and the fact that the user will not know, at first, the relevance of some of the data being passed between client and server. In this case, I would include some kind of "security handshake" that looks like garbage to the client but actually is validated on the server end. A modified program or data file would result in an invalid handshake, alerting the server (and me) that this client was a potential problem. The client would have no idea anything had gone wrong, because they would not know what data the server was expecting to receive.
    I hope I have not confused anyone too much. I know I've confused myself....

    Yes, that is the general model for all MMOGs these days - no data that can actually affect the game is safe if loaded from the client's computer. All character and world data is sent from server to client and stored in memory. Any information that is saved to the client's computer is for reference only and not used by the game engine to determine the results of actions/events etc.
    My program accesses the MMOG client's memory while the game is running, and takes the character information from there. It does not have direct access to the MMOG server, and does not attempt to modify the data or the memory. Instead, it just encrypts it and sends it to our server, where the information is loaded into a database.
    The security issue comes into play because our database is used for ranking purposes, and if someone were to hack my program, they could send invalid data to our servers and affect the rankings unfairly.
    I'm just trying to think of a way to prevent that from happening.

  • SENDING EMAIL USING ORACLE9i CLIENT/SERVER

    I HAVE DOWNLOADED 2 UTILITY LIBRARIES D2KCOMN and D2KWUTIL TO MY COMPUTER. THESE 2 LIBRARIES ARE COPIED TO AN ORACLE FORM. ON THE FORM, THERS IS A BUTTON. IN THE WHEN-BUTTON-PRESSED-TRIGGER, I HAVE CODED
    WIN_API_SHELL.WINEXEC('"C:\PROGRAM FILES\MICROSOFT OFFICE\OFFICE\OUTLOOK.EXE"-c IPM.Note/m"'||:email.recipient_name||'&cc='||
    :email.recipient_name2||'&subject='||:email.subject||
    '&body='||:email.mes||'"',WIN_API.SW_SHOWNORMAL,TRUE);
    :email.recipient_name,
    :email.recipient_nam2,
    :email.subject, and
    :email.mess
    ARE FIELDS ON THE ORACLE FORM.
    THE NAMES ARE DEFINED BY THE PROGRAMMER.
    THE NAMES OF THE FIELDS ARE NOT RESERVED WORDS.
    WHEN THE CODE IS EXECUTED, MICROSOFT OUTLOOK IS OPENED AND THE RECIPIENT LINE, COURTESY COPY LINE, SUBJECT LINE
    AND BODY OF A NEW MESSAGE ARE PREPOPUTATED WITH THESE FIELDS FROM AN ORACLE FORM.
    THIS ROUTINE WORKS FINE ON AN ORACLE6i CLIENT SERVER BUT IT WILL NOT WORK WELL ON AN ORACLE9i CLIENT SERVER.
    WHAT DO I NEED TO DO TO CHANGE MY CODE? DO I NEED TO USE NEW UTILITY LIBRARIES? I WOULD SURE LIKE TO KNOW WHAT TO DO.

    Oracle9i Forms does not support client server - so you are running in a different environment (even though you may still only be onl two tiers).
    Regards
    Grant Ronald
    Forms Product Management

  • VPN Site-to-Site or VPN Client Server with Cisco IP Phone 8941 and 8945

    Hi everyone,
    I decide to deploy a CUCM (BE6K platform), SX20, and IP Phone 8941/8945 on Head Office and Cisco SX10 and IP Phone 8941/8945 for branch offices (actually 9 branch offices).
    The connection will use internet connection for HO and each branch offices.
    And the IT guy want to use kind a VPN client server or VPN site-to-site for the connection through internet,
    what kind of VPN client server or VPN site-to-site that recommended for this deployment?
    and what type of Cisco router that support that kind of VPN (the cheapest one will be great)?
    So the SX10 and IP Phone 8941/8945 in branch offices can work properly through internet connection?
    please advise
    Regards,
    Ovindo

    Hi Leo,
    technically, the ipsec users will not use up any premium license seats, so if you have 10 ipsec users connecting first, the premium seats are still free and so you can then still have 10 phones/anyconnect users connect.
    However, the 250 you mention is the global platform limit, so it refers to the sum of premium and non-premium connections. Or in other words, you can have 240 ipsec users and 10 phones,  but not 250 ipsec users and 10 phones.
    If 250 ipsec users and 10 phones would try to connect, it would be first-in, first-served, e.g. you could have 248 ipsec users and 2 phones connected.
    Note: since you have Essentials disabled I'm assuming you are referring to the legacy "Cisco vpnclient" (IKEv1 client) which does not require any license on the ASA. But for the benefit of others reading this thread: if  you do have Anyconnect clients (using SSL or IPsec/IKEv2) for which you currently have an Essentials license, then note that the Essentials and Premium license cannot co-exist. So for e.g. 240 Anyconnect users and no phones, you can use Essentials. For 240 Anyconnect users and 10 phones, you need a 250-seat Premium license (and a vpn phone license).
    hth
    Herbert

  • How to delete the workbench client server name in FDM

    Hi Gurus
    How to delete/change the workbench client server name in FDQM?
    regards
    Sarilla

    OK, I understand now. You are referring to the Load Balance Server Group. Yes, this can be done:
    a) Browse to Oracle\Middleware\EPMSystem11R1\Products\FinancialDataQuality\SharedComponents\Config
    b) Locate the LoadBalanceServerGroups.xml file
    You can delete this file. The next time the workbench is launched it will ask you to set the load balance server group again and will create this file again.

  • Which keys are used in Client/Server Authentication?

    Hi.
    I am trying to understand how SunX509 algorithm works in a TLS context. When Server or Client authentication is done, which keys of the keystore are used?
    I mean, when you set up your KeyStore instance, it is loaded a whole KeyStore from the filesystem, which has a lot of keys to be used. Are they all tried in order to find the key that authenticates the Client/Server, and when a key that works is found means that Client/Server is authenticated? Or a concrete key with a specific alias is used?
    Do you know a doc or something similar where i can see this explanation? I haven't found this matter in JSSE API User's Guide nor in JSSE Javadocs.
    Thanks!

    The alias that is chosen is arbitrary and depends upon the order in which the aliases are returned via a hashtable enumeration. If you want to make sure you're using a particular aliasn you must write your own key manager, take a look at the X509KeyManager interface with methods such chooseClientAlias(), chooseServerAlias(), ...

  • Looking for a client/server that supports multiple protocol and delivery

    Hi all, I don't know if this the right place to ask my question,here it goes.
    I am looking to develop a client-server that supports multiple protocols such as HTTP, HTTPS etc. I am looking for a framework( i don't know if that is correct or I need some kind of web-service (soap etc)) that would manage connection, security etc. I would like to like to devote most of my time in developing business objects with multiple delivery mechanism such as sending serilized java objects, xml message or soap message, or in some case JMS message as well. So I need a client server that can come in via TCP/IP or HTTP or anyother industry standard protocol and I should be able to service him with pub/sub model and also request/response model as well.
    I don't know if I had explained what I need, I would like to know what technologies I should be evaluating and which direction I should be heading... Also the server I'm developing should be free of Java constraints if needed...
    Also this service is not webbased service as now but if need arises I should have a flexibilty to make them web enabled in future. Also I would like to work with open source webservers or appservers if I need

    Inxsible wrote:I installed i3 - along with the i3status - which I still have to figure out. I am liking what I see as of now. It reminds me of wmii -- when I used it way back when. However I do not like the title bar. I would much rather prefer a 1 px border around the focused window.
    "i3 was created because wmii, our favorite window manager at the time, didn't provide some features we wanted (multi-monitor done right, for example), had some bugs, didn't progress since quite some time and wasn't easy to hack at all (source code comments/documentation completely lacking). Still, we think the wmii developers and contributors did a great job. Thank you for inspiring us to create i3. "
    To change the border of the current client, you can use bn to use the normal border (including window title), bp to use a 1-pixel border (no window title) and bb to make the client borderless. There is also bt  which will toggle the different border styles.
    Examples:
    bindsym Mod1+t bn
    bindsym Mod1+y bp
    bindsym Mod1+u bb
    or put in your config file
    new_window bb
    from: http://i3.zekjur.net/docs/userguide.html (you probably already found that by now )

  • Client-Server - SOA.... Is it really a transition or a big development  ?

    Hi,
    In all sources related to SOA/ESA by SAP, it is said that, transitioning from Client-Server Arch(CSA) to SOA is the same as transitioning from Mainframe systems to Client-Server Arch.
    If we think about Mainframe and CSA, it is obvious that there had been big differences in that transition. Such as, the INTELLIGENT CLIENT concept had appeared to replace the DUMMY CLIENTS, so this had changed the way of IT Business. There would be a main application providing several functionalities(server) and other applications which want to use those functionalities (clients) would connect to the server using some functionalities on its own (that means a client appliction should also have some functionalities in order to at least connect to the server, so that made them different from the DUMMY clients of the mainframe era)
    Now, when I look at the differences between SOA and CSA, I cannot see that incompareble differences.Why ? Let me explain :
    - One of the most important differences between SOA and CSA is, SOA is vendor and platform independent, so that any application can call any applications functionality as long as they are using Web Services. That is true. But the question arises here : It is still the case that someone is calling some others' functionalities (services), so there is still a client/server mentality, isn't there and We will still be using several client/server programming languages in order to realize the main functionality of the web services but this will be transparent to the user and the integration. The main difference is, SOA is vendor and platform independent. But I don't think this can be commented as a missing feature of CSA. Because the aim of CSA was to make the clients more intelligent and not to make them vendor/platform independent. And also architectures like CORBA and DCOM have also tried to achieve that independency (even though they have restrictions compared to Web Services, one of the main reasons for this is using Web as a transport/communication protocol) but they are still treated as some extensions on top of CSA because they are using CSA beneath. But if we compare Mainframes and CSA, even though I haven't seen manframe ages, I think it is clear that CSA does not use any architectural functionality of Mainframes. They are completely different.. But is SOA and CSA completely different ?
    I agree with all reasons why today business needs sth more agile, more flexible and it is becoming clearer day by day that SOA and Web Services provides this environment, BUT, I still cannot make it clear, WHY it is accepted as a transition from CSA and why it is not treated as a big development over CSA while using the main features of it.
    Any comments will be appreciated.
    Regards
    Ahmet Engin Tekin

    Good point..Actually those are the things clearly known but it becomes a bit confusing to build clear sentences when it comes to declare the differences. Anyway, here are my additions :
    - Mainframes were centralized systems which had their own hardware architecture as well. All processes/applications were running on 1 central DB/system and everyone in the company had to use the same functionality and interface.
    - In time, as a result of business demand, people needed different functionalities/applications regarding different business needs. This could either be done by extending the higly-costed big mainframe systems/softwares OR a new approach had to be developed in order to solve those problems. At this point, (thanks to IBM,Macintosh and Xerox) PC and ethernet concepts had emerged. That was a completely different hardware architecture which allowed less costly systems and also distributing the process load and/or applications to different systems in one landscape (app servers, intelligent clients - 2 tier, 3- tier arch.). Thus, while those were happening on harware side, new communication and programming models/languages emerged on software side. As a result, people started using different applications on different systems according to their needs and thus an efficient solution had been provided to the business need (described above).
    To criticise, this was really a big transition. Not only software concepts but also hardware concepts are also changed drastically. Actually, it is not wrong if we say, developments on the hardware side, allowed changes on the software side
    - What happened next ? Companies started using so many different applications by different vendors with different business logic and programming models (thanks to CSA). But in times, this has emerged the biggest problem of the CSA era : Integration.
    We all know the rest. "Web Services" concept emerged with SOA as well. So that, the boundaries between the systems began to disappear.
    So, is this a transition ? Well, yes it is.. The point that made it confusing (at least for me) is that this time there is no hardware transition (yet) but only a transition in software side. But I still insist that the IT transition during Mainframe->CSA was like a revolution (forget what you've left behind) but from CSA to SOA; it is more likely to be an evolution (the next best thing)
    Anyone have more comments ?
    Regards,
    Ahmet

  • Error deploying a composite to a clients server

    Hi,
    I'm having trouble deploying a composite to a clients server.
    I've defined the Configuration Plan to change all the references from our server to the clients server.
    The composite has some references to webservices deployed on the same server. I can test those webservices on the Enterprise Manager and they work.
    The error when I try to deploy is the following:
    Deploying on partition "default" of "/Farm_bpm_domain/bpm_domain/soa_server1" ...
    Deploying on "/Farm_bpm_domain/bpm_domain/soa_server1" failed!
    Error during deployment: Deployment Failed: Error occurred during deployment of component: ServiceTest2Process to service engine: implementation.bpmn for composite: ServiceTest2Composite: ORABPEL-05250
    Error deploying BPMN suitcase.
    error while attempting to deploy the BPMN component file "/oracle/product/fmw/11.1.1/bpm/user_projects/domains/bpm_domain/deployed-composites/ServiceTest2Composite_rev1.0/sca_ServiceTest2Composite_rev1.0/soa_68135a9a-c6b0-4982-99de-2eb366875b5d"; the exception reported is: java.lang.IllegalArgumentException: Conversation is not properly defined. There are not operation/process or external services defined
    This error contained an exception thrown by the underlying deployment module.
    Verify the exception trace in the log (with logging level set to debug mode).
    .The logs on the server (set to TRACE:32 (FINEST)) don't add anything to the error message.
    Anyone has had the same problem or has any ideia what might be the problem?
    Thanks in advance,
    Diogo Henriques

    Hi
    Can't offer much help but I just got exactly the same problem also. I just made a minor modification to a simple BPMN Test process. The change involved adding a Script Task and changing the assignment to the Output Argument of a Sub-Process. This change should not have caused any change to the service interface of the process. This was on a local Dev box.
    The process does call a Web Service. It was deploying/executing without error at last WLS boot a day ago, the Web Service is running fine and the process is building without error. There have been no other changes.
    This seems to be some kind of deployment versioning or stale caching related bug. I just undeployed the current version via EM (which actually reported a failure during undeployment but undeployed anyway!) and rebooted WLS and the deployment was then successful.
    See also Error deploying 2 processes in the same project BPM 11gR3 Project
    I suspect both of these are symptoms of the the same underlying problem which show up when there are repeated deployments of the same process after changes - regardless of whether you overwrite the existing version or start a new one.
    Regards
    Jim Nicolson

Maybe you are looking for

  • How do I store an Int, a short, and multiple bytes from file in byte array

    I'm attempting to do this for a project but can't figure out how to store the three values in one byte array. This is what i've tried public void send(byte[] input)           // TODO           ByteArrayInputStream bais = new ByteArrayInputStream(inpu

  • Using Shared Variables and Initialize Front Panel Binding (to PSP)

    Hi, I use LV DSC RT 8.2.1 I have a Vacuum System That includes signals from - Pumps failure, Valves status, Vacuum gauge, start Pump ... Each signal is read by a FieldPoint.  All the relevant FieldPoint Channels are read by the Server (a computer in

  • Updated data in a web dynpro application

    hi when we develop a web dynpro application using a model from an  R/3 as a backend access system , how is the data updated in the application, in the portal whenever there is a change in the source OLTP data tha we used? thanks in advance krishna ch

  • Change language in NUMBERS..

    Hello, i am new in numbers..and i can't find how i can change the language in the text.. in pages this option exists in Inspector..but here i cannot find it i write in french and although the false orthographe is underlined..the auto correction with

  • Loading jar files

    hello, we are creating a framework for a project that should be able to load some modules from a jar file. Problem is: how do we load the class files and how do we specify the class that should do the work of the plug-in? DOes it has to be a public s