Need basic primer on distributed transactions and java

Hello,
          I am new to distributed transactions in Java...
          I am wondering if there is useful link that will
          explain the basics....
          How is it supported in J2EE, etc.?
          How is it supported in WLS?
          How does 2-phase commit work, etc.?
          Thanks,
          Jason
          

Hi,
          I fond the following a good clear, concise (non vendor specific) intro to
          transactions.
          http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/Transaction.html
          Cheers,
          SB
          "Jason Rosenberg" <[email protected]> wrote in message
          news:3eba8128$[email protected]..
          > Hello,
          >
          > I am new to distributed transactions in Java...
          >
          > I am wondering if there is useful link that will
          > explain the basics....
          >
          > How is it supported in J2EE, etc.?
          > How is it supported in WLS?
          > How does 2-phase commit work, etc.?
          >
          > Thanks,
          >
          > Jason
          >
          >
          

Similar Messages

  • I need to know the right tools and java technology

    Please help,I need to know the right tools and java technology to support what I need.
    I had background programming in Assembly,C++,Visual Basic,SAP/ABAP 4.
    All I can say, programming is about logic, now we are very helped building program using objects.
    I'm very interest to SAP tech, where all screens, programs, reports are resides on tables, this is the real dynamic!
    CUrrently I'm eager to do the same technic with java. I'm new to java....
    What I know the J2EE is the core for me to start is it right? I was very interest with the Client-Server Tech. How can I impelemet this with Java?
    I'm a bit confuse with so many java solutions. There is Java Applets, Swing, Java AWT, JavaBeans, etc...
    I don't know what is the best if I want my Presentation/Client Application will run within browser (not standard html, using like windows gui). What should I do to make business logic objects, how to invoke it within the gui. how to make installation package whenever clients connect to the http server.
    if you have a pointer to do it please let me know.... I'm very appreciate all your response...
    Best regards,
    Lucky Pangemanan

    I'd say - don't get carried away with the heavyweight frameworks. Don't use EJB if Hibernate and/or Tomcat will do the job. There's a danger of winding up using a bulldozer to crack a wallnut.
    What people mean by "J2EE" varies a fair bit.
    Start with Tomcat, which has the virtue of being free. Try some JSPs and servlets.
    Use Applets to do client side presentation only if you must; Applets create an installation overhead on end-users, and some of them can't cope, while others may not have the necessary installation permissions on their office machines. They are pretty rarely needed, IMNSHO, most client-side behaviour is better handled with html and JavaScript.

  • Distributed transactions and 2-phase commit in a SAP Netweaver environment

    Hello,
    I am a Java architect., I don't know very much the SAP technologies. I tried to found on forums or technical papers if SAP does support distributed transactions and two-phase commit, it's not clear. I found something on SAP WAS but my project is using a  SAP PI 7.0 and I cannot find anything on the subject.
    My goal is to include a SAP server (via PI 7.0) in a distributed transaction handled by a J2EE ESB (Oracle, ex-BEA Aqualogic) based on XA capabilities.
    Does anyone have experience or feedback on this topic ?
    Thanks.

    Hi,
    Do you know this white paper ?
    [Distributed Transaction and 2 phase commit|https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/3732d690-0201-0010-a993-b92aab79701f]
    Regards,
    Olivier

  • What is the difference between action and workflow? How do I decide that I need an action in a transaction and not a workflow and vice versa?

    Dear Experts,
    I have few doubts and request your expert inputs to clarify my doubts.
    What is the difference between action and workflow? How do I decide that I need an action in a transaction and not a workflow and vice versa?
    Your earliest response is highly appreciated.
    Thanks,
    SMTP

    Hi SMTP,
    First of all, as I mentioned action is nothing but an executable work item which is designed in the workflow itself. In other words, Workflow is like your OOPS class. At run time, workflow instances are created just like objects of classes. Now, the steps designed in the workflow are called TASKS and the instances of tasks are called WORKITEMS. Now, the work items where any user action is required are called executable work items. ANd the work items where no user action is required (for example, sending an email in background) are called non-executable work items.
    Whether to go with development of workflow or not depends upon your business scenario. If your requirement is only to send an email and you find any BAdi or exit where in you can write your logic then there is no need of creating a workflow. If there is a defined business process with defined users and time lines, then you can go with the development of workflows.
    Rest, the below link will help you in understanding basic concepts of workflow :
    Why use SAP Workflow? | Insight Consulting Partners
    Regards,
    Richa

  • Distributed Transactions and Linked Servers

    I'm somewhat of a novice with SQL Server but I'm learning rapidly from an application I'm developing that uses SQL Server very heavily. In conjunction with the development of this application, I have 3-4 systems set up running SQL Server and I am using those
    systems to develop the database that will ultimately support the application. I decided to try to use linked servers because I am moving data back-and-forth among the different servers frequently and I ran into some consequences that I wasn't expecting.
    I was doing a simple delete query on one of the servers (Delete from TableName Where ...) and I was expecting, of course, that it would only impact the server I was running it on; however, when the query finished after running for a long time, it was apparent
    that SQL Server had automatically escalated that simple delete query into a distributed transaction and applied it to all four of the linked servers I had defined.  I was totally surprised by that and it took some time to recover the data that was inadvertently
    lost on the other servers.
    I want to ensure that this doesn't happen again without me expecting it - I think the right way to prevent this from happening is to run the following stored procedure:
    EXEC sp_serveroption 'servername', 'remote proc transaction promotion', 'false';
    Can someone please verify that this assumption is correct and will prevent SQL Server from automatically creating distributed transactions impacting multiple servers?
    Thanks,
    Chuck

    Hello,
    Based on your description, it seems that when you connect to a SQL Server database and execute a DELETE statement to delete a recode on a table, and then the same recode were delete in the linked server which has the same table.
    As pre my understand, the statement executed on one server will not  apply to the linked servers unless you specify the logic yourself in the application. For example, you use dynamic query and exec the query synchronously on  linked servers.
    What's more, did you specify replication between this linked server?
    If I have any misunderstanding, please let me know.
    Regards,
    Fanny Liu
    If you have any feedback on our support, please click here.
    Fanny Liu
    TechNet Community Support

  • Weblogic 5.1, Distributed Transaction and Oracle Database Link

    We are planning to add a new functionality to run in Weblogic server and it
    needs to update tables in two different Oracle databases. Since we are using
    Weblogic 5.1 and it is unrealistic to upgrade to 6.1 in short term, we have
    to deal with the fact that distributed transaction is not supported by JTS
    on 5.1.
    One workaround we can think of is to utilize Oracle database link. Instead
    of having two connection pools, the application talks to only one database
    and access the tables on the other ones through Oracle database link.
    Therefore, when a session bean tries to update two tables on database 1 in
    one transaction, one of the tables is just a link to the other database. We
    hope that even though distributed transaction is not supported by JTS in
    Weblogic 5.1, but since it is supported by Orable, it would work.
    Do you think the above workaround would work? Does anyone have experience on
    something like that?
    Thanks in advance,
    David Chen
    [email protected]

    Hi. You should be able to use any JDBC driver with WebLogic 5.1.
    It may be the JVM that complains, if you use too old a JVM...
    Joe Weinstein at BEA Systems

  • Distributed transactions and connection pooling

    Hi,
    We have a problem with the enlistment of connections in distributed transactions.
    The following very simple C# program does not work correctly (a simple form with one button and a class hosted in COM+). If you put a breakpoint on "cnOraTx.Close();" you will see that the inserted record is already visible in the database although the transaction has not commited yet.
    If you comment out the lines between //START and //END everything works as expected.
    Also, if we use "Pooling=false" in the connection string, everything works fine again, but since we are writing a web application, we really need the connection pooling.
    We are using ODP.NET 9.2.0.2.102 (I also tried with the ODP.NET 9.2.0.4.0 BETA) and an oracle 8.1.7 database.
    Best Regards,
    Piet
    private void button1_Click(object sender, System.EventArgs e)
    //When commenting the following lines the connection is enlisted in the distributed transaction
    //START
    OracleConnection cnOraTx;
    cnOraTx = new Oracle.DataAccess.Client.OracleConnection("Data Source=ECOMP532;User ID=USER;Password=PWD");
    cnOraTx.Open();
    cnOraTx.Close();
    cnOraTx.Dispose();
    //END
    OpenOraTransConn obj = new OpenOraTransConn();
    obj.Connect();
    //This class is going to be hosted within COM+
    [Transaction(TransactionOption.Required)]
    public class OpenOraTransConn: ServicedComponent
    private OracleConnection cnOraTx;
    private OracleCommand cmd;
    internal void Connect()
    cnOraTx = new OracleConnection("Data Source=ECOMP532;User ID=USER;Password=PWD");          
    cnOraTx.Open();
    cmd = new OracleCommand();
    cmd.Connection = cnOraTx;
    cmd.CommandText = "INSERT INTO SYSADM.PERSON (PE_KEY) VALUES(130000)";
    cmd.ExecuteNonQuery();
    cnOraTx.Close();
    cnOraTx.Dispose();
    ContextUtil.SetComplete();

    Hello:
    We are experiencing the exact same problem. INSERT, UPDATE or DELETE statements that should roll back because an exception is being thrown from inside our ServicedComponent-derived class (which is set to TransactionOption.Required and uses AutoComplete) are not -- and instead are being committed to the database.
    Were you able to figure out why this is happening, and what can be done to get around it? We too were able to avoid the problem by setting Pooling=False to our connect string, but for a variety of reasons we want to use connection pooling ...!

  • On My web site the adobe flash player replaced with a white box "need to install adobe flash player and Java script" both installed. My web site fine using Internet Explorer and Chrome.

    I've updated to Firefox ver 5.
    Gordon

    The FlashPlayer plugin used for Firefox is entirely separate from the one that Internet Explorer uses. You system details do not show Flash Player is installed.
    With flash player installed and enabled if you go to the Adobe website it will check that FlashPlayer works, also you will be able to download and install from there if necessary. The site page also has links to troubleshooting information. http://www.adobe.com/software/flash/about/
    Javascript is not the same as Java. Javascript, which is what you need enabled at present is a feature of the firefox browser that needs enabling in order for it to handle the javscript files.
    * use '''Firefox button -> Options ->| Content| -> [] Enable Javascript'''
    * see [[Javascript]]

  • Torch 9810 Need basics about Wifi auto-switching and tethering, please.

    Concerning my AT&T Data plan:
    1- when i'm using the device by itself, all indicators show that auto-switching is working when wifi is available. ok, bb gurus, i can't afford any surprises on my bill, so...is it really working all by itself, or am i gonna have to play the "disable this, enable that" game to make sure?
    2- when i'm tethered, i see my device is being used as a standard dial-up modem, so clearly there's no wifi to be had. but...during tethering, is there any hardware config that allows my device to become a wifi adapter instead of a modem?
    3- i think i don't have hotspot capabilities, is that correct?
    btw-i absolutely love how easy it is to check service/connection status.
    EDIT: i just noticed that when i have wifi, the ssid shows up next to the "AT&T" on the main screen, i walked back & forth across the street and watched it change...holy-moly i'm digging this phone!

    1- you said "If so, leave it on but be aware that if your phone falls back to the network connection, you won't get any kind of warning from your homescreen." 
    here's what i learned since i last posted:
    as i understand it, BB internet services is something separate from my metered AT&T data (i think bb services is how/why i'm getting my POP mail, "reconciliation" rocks the house). the service has a useful status display showing how it's connected...this auto-switches between network & wifi before my eyes as i walk in & out of range. here's the kicker...in the homescreen 'header' where my active carrier is displayed, a connected ssid is displayed along with it, ie "AT&T - Public Hotspot" which also changes on the fly. huh...yeah...and tapping said header opens up the connection manager, this is one smooth ui.
    none of that says my data-stream is also being auto-switched, but it would be a fair bet to assume if the services has a signal, the data connection would too. i'd like to dig into this a little deeper, i've seen several versions of the right answer in my research.
    2- you saying i get the updated OS?
    3- see question 2
    the rest of this you can totally ignore if you want, i've had one too many java's tonite, heh.
    i'm an old-school hardware freak...i was changing jumpers on 486 motherboards & frying them back in the day. until recently i didn't need more than a phone (that old bullet proof nokia flip) but then i went to traveling on my motorized bicycle and upgraded to messaging & data. got a pantech link, it never failed me, i really like it a lot.
    there's been times i've been out of cell range but sitting at a hotspot, wishing there was a messaging phone with wifi....like 35 miles north of haines alaska. i keep a little personal site if you're interested & if it's not against the rules:
    http://mb-rambler.mysite.com/
    so i decided to get into a smartphone, did a lot of shopping, a total newb...i started by choosing the pantech crossover, and honestly for my minimal needs it looks like a real beaut. we setup the deal and the crossover was shipped but then misrouted. i was told 2 weeks for that to be resolved, and i got mad but remained calm. bottom line is the AT&T rep went to bat for me on customer service, and eventually arranged for me to go to the nearest store and get whatever i wanted. no crossover in stock. well, in real life, there was no denying the blackberry's. it was the torch 2 or the bold, i like a real keyboard. but i'm a total bb newb too, so i closed my eyes and pointed at what i could afford.
    i'm a lucky bubba i know...because since then i've learned a lot about this version and its history, and the hardware inside is blowing my mind. sorry for rambling, it's just i'm getting into this.
    thanks for stepping in to help out. i'm sure i'll have more questions and comments as i move along.

  • MDB Distributed transaction and stored procedure rollback

    Hi All,
    I am developing an asynchronous application using MDB. My application flow is as follows:
    1. From MDB onMessage i am calling another method MEthodA that
    a. calls a simple pojo1 where I am getting a Connection on XA enable datasource1 and executing Stored Procedure1 of DatabaseSchema1. In Stored Procedure1 I have some inner savpoints and rollback. No commit is inside Stored Procedure1 .
    b. In that pojo withput commiting m closing the connection and coming back in MethodA.
    c. Again from MethodA m calling an different pojo2 where I am getting a new Connection on XA enable datasource2 and executing Stored Procedure2 of DatabaseSchema1.In this pojo also without commiting m closing the connection and coming back in MethodA. In Stored Procedure2 I have some inner savpoints and rollback. No commit is inside Stored Procedure2 .
    d. Again from MethodA m calling pojo1 where I am getting a new Connection on XA enable datasource1 and executing a diffrent function of Stored Procedure1 of DatabaseSchema1.
    Now problem is:
    I have written some Savepoint and rollback inside Stored Procedure1 and inside Stored Procedure2. But these rollback is working only in inside Stored Procedure1 not in inside Stored Procedure2 in each case.
    In ejb-jar.xml transaction attributes is Required for all methods and transaction type is Container.
    Backend is Oracle 10g and init.xa has already been run on that.
    I have tested this on Oc4J and Websphere 6.0.
    I am using XaDatasource.
    Will be very obliged if any one can give a single hint of the problem as soon as possible.
    Thanks a lot

    Hi Kent;
      You have a few choices (AFAIK) with ASE...
    1)  AutoCommit = TRUE
      - must be before connect to your DB
    2) End your PB transaction first. For example
    String ls_end    =  "END TRANSACTION"
    String ls_begin  =  "BEGIN TRANSACTION"
    EXECUTE IMMEDIATE  ls_end using SQLCA;
    <call your SP>
    EXECUTE IMMEDIATE  ls_begin using SQLCA;
    3) use a 2nd Transaction Object for the SP where its AutoCommit = TRUE
    - or -
    4) In your SP ...
    Commit Transaction
    begin transaction
        insert into mytab (pub_id) values ("9999")
    commit transaction

  • Need basic Help - SG300 with vlan and routing

    Hi,
    i need some basic help with configuring vlan/routing.
    Situation:
    DSL Router - Cisco 300 - XenServer
    192.168.1.253 - 192.168.1.19 - 192.168.1.10 (mgmt ip)
    goal is, to reach from inside xenserver vms the internet.
    vms = 192.168.2.x
    gateway ip = 192.168.2.1
    what i did:
    - configured vlan 102, tagged, with the xenserver port
    - configured on xenserver a network with vlan id 102, attached to the vm
    - this network is conntected to an external bond
    - configured ipva4 interface: vlan102 - Static - IP 192.168.2.1 (this is the gateway ip of the vms)
    - automatic configured IPv4 Route: 192.168.2.0/24 next hop 0.0.0.0, Directly connected
    So at the moment i cant ping from inside a vm to the DSL Router (192.168.2.2 to 192.168.1.253)
    any ideas what i misconfigured or whats wrong?
    cheers,
    -Marco

    Hi Tom,
    ok, that make sense. I can ping the router now inside vms from 192.168.2.x network.
    But i cant ping external adresses, error: Destination net unreachable.
    My other problem i have, i cant reach any server from outside over router portforwarding.
    How do i have to configure the upload port to the dsl router? Is it a access port or a trunk
    port with all vlans (tagged or untagged?) At the moment ive a tagged Trunkport with all vlans.
    IPv4 Interface Table
    Interface
    IP Address Type
    IP Address
    Mask
    Status
    VLAN 1
    Static
    192.168.1.19
    255.255.255.0
    Valid
    Should the VLAN1 ip adress not the router ip adress ? Do i need an additional vlan for
    the router ? At the end i like to change the switch ip from dhcp to static (change automaticly
    when switching to layer 3 mode), but ive to look for the ios commands first.
    What else do i missing ?
    Thanks a lot,
    Marcus

  • JMS Distributed Transactions

    I need to perform a distributed transaction in My Servlet.
    My distributed transaction involves Updating to the DB and also publishing a message to a queue.
    The queue is not present in my app server, where my Servlet is running.
    It is there on a remote machine.
    I'm using below code to achieve the same.
    But I'm not getting the transactional behaviour working... That means
    If I publish a message to queue and then if DB Operation fails, the transaction should roll back and the queue should not be having any contents.
    But my queue is still showing me the contents...
    Any glitches in my code???
    public class RemoteServlet extends javax.servlet.http.HttpServlet implements
              javax.servlet.Servlet {
         private QueueConnectionFactory queueConnectionFactory;
         private Queue queue;     
         private QueueConnection queueConnection = null;
         private QueueSession queueSession = null;
         private QueueSender queueSender = null;
         private TextMessage message = null;
         @Resource
         UserTransaction utx;
         protected void doBatch(HttpServletRequest request,
                   HttpServletResponse response) throws Exception {
              try {
                   initQueue();          
                   utx.begin();
                   publishMessage(false);
                   updateDB();//Some DB Operation which will fail to test the rollback          
                   utx.commit();
              } catch (Exception e) {
                   utx.rollback();
                   e.printStackTrace();
              } finally {
                   closeJMS();
              printQueue();
         private void closeJMS() {
              try {
                   queueSession.close();
                   queueConnection.close();
              } catch (JMSException jmse) {
                   jmse.printStackTrace();
         private void publishMessage() throws Exception {
            for ( int i = 1; i < 5; i++) {
                 message = queueSession.createTextMessage();
                  message.setText("Current Time is (" + (new Date().getTime() + i) + ")::  " + new Date());
                  System.out.println("<br>" + "Sending message :: " + message.getText());
                  queueSender.send(message);
         public void initQueue() throws Exception {
              Context ctx = getInitialContext();
              Object obj = null;
              try {
                   queueConnectionFactory = (QueueConnectionFactory) ctx.lookup("jmsfactory/default/MyQueueConnectionFactoryXA");
                   queue = (Queue) ctx.lookup("jmsqueues/default/MyQueue");
                   queueConnection = queueConnectionFactory.createQueueConnection();
                   queueSession = queueConnection.createQueueSession(true, Session.AUTO_ACKNOWLEDGE);
                   queueSender = queueSession.createSender(queue);
                   queueConnection.start();
              } catch (Exception e) {
                   e.printStackTrace();
         public void printQueue(String desc) {
              try {
                   QueueBrowser browser = queueSession.createBrowser(queue);
                   Enumeration<TextMessage> en = browser.getEnumeration();
                   while (en.hasMoreElements()) {
                     TextMessage queueBrMessage = en.nextElement();
                     System.out .println( "<br>" + queueBrMessage.getText());
              } catch (JMSException e) {
                   e.printStackTrace();
         public Context getInitialContext() throws Exception {
              Properties properties = new Properties();
              properties.put(Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl");
              properties.put(Context.PROVIDER_URL, "10.134.162.75:50004"); // IP Address of the Host where the Queue is setup
              properties.put(Context.SECURITY_PRINCIPAL, "Administrator");
              properties.put(Context.SECURITY_CREDENTIALS, "password");
              properties.put("force_remote", "true");
              InitialContext context = new InitialContext(properties);
              return context;
         public RemoteServlet() {
              super();
         protected void doGet(HttpServletRequest request,
                   HttpServletResponse response) throws ServletException, IOException {
              try {
                   doBatch(request, response);
              } catch (Exception e) {
                   e.printStackTrace();

    A "resource adapter" is a JavaEE component used by modern application servers for linking to an external resource such as a JMS provider or database. It will wrap the XAQueueConnection for you and take care of enlisting the resources, performing two-phase commit, etc. - basically hiding all the complexities of XA transactions from you.
    Nigel

  • Distributed Transaction in weblogic 5.1

    Hi all,
    Does Weblogic 5.1 support Distributed Transactions?.

    While they aren't java-specific, if you're looking for XA/2PC details,
    these 2 are good:
    Transaction Processing: Concepts and Techniques (Morgan Kaufmann Series
    in Data Management Systems)
    by Jim Gray, Andreas Reuter
    Principles of Transaction Processing
    by Philip A. Bernstein, Eric Newcomer (Contributor)
    5.1 does not support XA or 2 phase-commit. However, it does allow
    multiple cluster members to enlist in the same transaction as long as
    all database access goes through the same JDBC connection.
    WLS 6.0 and later do support XA and 2PC.
    -- Rob
    chandrasekar wrote:
    Hi all,
    Does Weblogic 5.1 support Distributed Transactions?.Please suggest me some
    books or documentation regarding Distributed Transactions, and about the XA compliant
    resources.

  • ADS in ABAP and JAVA on different servers

    Dear community,
    I need to run ADS with  ABAP and JAVA on different servers but after read and apply every step on The ADS Configuration Guide, still getting doubts and problems. Those steps work succesfully on a server with ABAP+JAVA on same server. Those are the problems:
    When I perform the report test FP_TEST_00 i get this error:
    ADS: com.adobe.ProcessingException: Problem accessing d(200101)
    I haven't found a a detailed procedure to set on ABAP and JAVA on different servers...
    Do you know any procedure to set this scenario??
    As a result, I don't know which role i must assign to adsuser on Java UME because i did not found any SAP_ADSCALLER role as i have ridden on some forums or blogs...
    I try to set ADS on ABAP+JAVA on different servers by this official guides:
    The ADS Configuration Guide:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/30a9630b-4f89-2a10-6fab-e311b3ffd9a6
    The ADSConfiguration Guide for Print Scenarios
    http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/a04ef746-4c89-2a10-0f8e-eb2b3460fb7c
    Thanks in advance
    Kind regards
    Scottie

    HI again,
    ADS_AGENT now has sap_all but still same problem:
    Creating or Changing the Destination Service, On Visual Administrator/Destinations/HTTP/ FP_ICF_DATA_<SID>
    When I set the URL http://<hostname>:<HTTP_port> i am getting error Received HTTP response 502
    - If I paste the http://<hostname>:<HTTP_port>  +
    - Enter the appropriate client number of the system, where the service user ADS_AGENT exists into the client field. Keep the other fields System ID and Language empty +
    - Under Logon Data, choose BASIC in the Authentication field. +
    - Enter ADS_AGENT in the Username field and enter the same password as given for this service user in the SAP NetWeaver AS ABAP in the Password field
    - Choose Save and Test and  Received HTTP response 502 appears.
    But if I paste on Explorer  http://<hostname>:<HTTP_port>/sap/bc/fp/form/layout/fp_test_00.xdp, request User (ADS_AGENT) +Pwd and work ok, so error only appears by Visual Administrator...
    Anybody knows how can resolve this doubt?
    Thanks in advance

  • Errors in DB alert log for distributed transactions

    Hi,
    I am receiving the following type of errors regularly in one of our development databases:
    Errors in file e:\oracle\product\diag\rdbms\agdev10g\agdev10g\trace\agdev10g_reco_16356.trc:
    ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
    ORA-02062: distributed recovery received DBID d672931d, expected 2d7b9dec
    ORA-12154: TNS:could not resolve the connect identifier specified
    ORA-12500: TNS:listener failed to start a dedicated server process
    ORA-12154: TNS:could not resolve the connect identifier specified
    From researching on the net it looks like it may have something to do with distributed transactions and database links however I'm not sure how to proceed to diagnose the problem and find out where the issue is. Can anyone help?
    Thanks
    Adam
    Edited by: Adam J. Sawyer on 27/05/2010 16:57

    SQL*Net typically involves two systems so post following details for both systems
    Post Operating System (OS) name & version for DB server system.
    Post results of
    SELECT * from v$version
    or post Oracle version to 4 decimal places
    oerr ora 12514
    12514, 00000, "TNS:listener does not currently know of service requested in connect descriptor"
    // *Cause:  The listener received a request to establish a connection to a
    // database or other service. The connect descriptor received by the listener
    // specified a service name for a service (usually a database service)
    // that either has not yet dynamically registered with the listener or has
    // not been statically configured for the listener.  This may be a temporary
    // condition such as after the listener has started, but before the database
    // instance has registered with the listener.
    // *Action:
    //  - Wait a moment and try to connect a second time.
    //  - Check which services are currently known by the listener by executing:
    //    lsnrctl services <listener name>
    //  - Check that the SERVICE_NAME parameter in the connect descriptor of the
    //    net service name used specifies a service known by the listener.
    //  - If an easy connect naming connect identifier was used, check that
    //    the service name specified is a service known by the listener.
    //  - Check for an event in the listener.log file.
    bcm@bcm-laptop:~$ oerr ora 2062
    02062, 00000, "distributed recovery received DBID %s, expected %s"
    // *Cause: a database link at a coordinator no longer points to the expected
    //         database.  Link may have been redefined, or a different DB mounted.
    // *Action: restore link definition or remote database.
    bcm@bcm-laptop:~$ oerr ora 12154
    12154, 00000, "TNS:could not resolve the connect identifier specified"
    // *Cause:  A connection to a database or other service was requested using
    // a connect identifier, and the connect identifier specified could not
    // be resolved into a connect descriptor using one of the naming methods
    // configured. For example, if the type of connect identifier used was a
    // net service name then the net service name could not be found in a
    // naming method repository, or the repository could not be
    // located or reached.
    // *Action:
    //   - If you are using local naming (TNSNAMES.ORA file):
    //      - Make sure that "TNSNAMES" is listed as one of the values of the
    //        NAMES.DIRECTORY_PATH parameter in the Oracle Net profile
    //        (SQLNET.ORA)
    //      - Verify that a TNSNAMES.ORA file exists and is in the proper
    //        directory and is accessible.
    //      - Check that the net service name used as the connect identifier
    //        exists in the TNSNAMES.ORA file.
    //      - Make sure there are no syntax errors anywhere in the TNSNAMES.ORA
    //        file.  Look for unmatched parentheses or stray characters. Errors
    //        in a TNSNAMES.ORA file may make it unusable.
    //   - If you are using directory naming:
    //      - Verify that "LDAP" is listed as one of the values of the
    //        NAMES.DIRETORY_PATH parameter in the Oracle Net profile
    //        (SQLNET.ORA).
    //      - Verify that the LDAP directory server is up and that it is
    //        accessible.
    //      - Verify that the net service name or database name used as the
    //        connect identifier is configured in the directory.
    //      - Verify that the default context being used is correct by
    //        specifying a fully qualified net service name or a full LDAP DN
    //        as the connect identifier
    //   - If you are using easy connect naming:
    //      - Verify that "EZCONNECT" is listed as one of the values of the
    //        NAMES.DIRETORY_PATH parameter in the Oracle Net profile
    //        (SQLNET.ORA).
    //      - Make sure the host, port and service name specified
    //        are correct.
    //      - Try enclosing the connect identifier in quote marks.
    //   See the Oracle Net Services Administrators Guide or the Oracle
    //   operating system specific guide for more information on naming.
    bcm@bcm-laptop:~$ oerr ora 12500
    12500, 00000, "TNS:listener failed to start a dedicated server process"
    // *Cause:  The process of starting up a dedicated server process failed.
    // The executable could not be found or the environment may be set up
    // incorrectly.
    // *Action: Turn on tracing at the ADMIN level and reexecute the operation.
    // Verify that the ORACLE Server executable is present and has execute
    // permissions enabled. Ensure that the ORACLE environment is specified
    // correctly in LISTENER.ORA. The Oracle Protocol Adapter that is being
    // called may not be installed on the local hard drive.  Please check that
    // the correct Protocol Adapter are successfully linked.
    // If error persists, contact Oracle Customer Support.What explicit SQL or command trigger these errors?

Maybe you are looking for

  • How can I change a wrong e-mail adres in the Adobe ID for an E-Reader.

    I have an Adobe ID for Digital Editions for my pc. Then I connected an E-Reader to my pc and I had to authorize the reader with an Adobe ID. I thought it would be the same as the ID for my pc, but the system send my the message that this ID already w

  • Migrating ADF Security from file-based provider to LDAP provider

    We have deployed a small application using ADF Security with file-based provider in OAS and it works fine. Now we want to migrate to ADF Security using LDAP provider. In order to make this possible we followed the next steps: - Migrate all the roles

  • CS5 Ecore stops responding on startup

    I am running Windows 7 Home Preminum on an HP 17 Envy Laptop. Windows, drivers and CS5 are up to date. Encore stops responding on start up, Windows search for a solution and closes Encore. All other CS5 Pro programs function normally. I have tried al

  • CAPWAP error on WLC

    Yesterday I had an AP that disassociated from the controller and now it won't join.  I'm getting the following errors.  Cisco's documentation is not really pointing out the issue.  Any one encountered these before? Software Version: 7.4.100.0 FRI: 1.

  • Help! Torch broken down from nowhere. App Error 602.

    So today my phone was working fine as it always has, I decided to remove some programs I don't need. I removed Google Talk and AOL Messenger and pressed yes to reboot as it needed to. Phone powered off, powered back on again and did the black Blackbe