Jdbc URL with dbserver only?

i would like to connect to the server first and connect to the database later. is this possible with the oracle driver? i did this before with the informix driver and would like to keep the program logic.

This is a DNS/name resolution issue. A JDBC connection (like all other TCP/IP based connections) is established at the network layer using an IP address. Depending on your operating system, names (such as your host's name) can be resolved to an IP address in different ways. That name resolution fails when the network cable is unplugged strongly suggests that your host's name is being resolved by the DNS server on your network.
Since localhost works, you can use that; there's nothing particularly wrong with that and in fact in can be more efficient. You can also use your host's IP address, or the standard "loopback" address of 127.0.0.1 However, on some systems, you might need to confiure a personal firewall to allow access.
On most OSes, you can also configure a 'hosts file' to create name-to-address mappings that don't depend on external DNS lookups. On Unix/Linux, this is usually done by an entry in the /etc/hosts file; you may also have to modify other files in /etc to configure your system to actually use the hosts file - this is OS/configuration specific. Windows also uses a host file; it's buried somewhere in the system files.
Host file entries affect everything that uses TCP/IP.
For what you want, you should probably add an entry that maps your host name to 127.0.0.1; that way, when your host's IP address changes, you won't have to change the host file entry.

Similar Messages

  • JDBC URL or not JDBC URL

    Hello experts,
    I have two WLS 10.3.5.0 running in dev mode: WLS_A and WLS_B.
    They both have the same database resource, with the same name, and the same JNDI as well. Each WLS resides on a different Linux machine.
    If I set, in the Applictation properties in Jdeveloper, the database properties as JDBC Datasource, I can only deploy on WLS_A, while If I set the database properties as JDBC URL, I can only deploy on WLS_B.
    Why on hearth I get this different behavior, even if the WLS servers do have the same version, and the database is declared in the same way on both ?
    Is there any other setting on the WLS I'm missing ? I would like to have the same behavior for both server..
    Regards,
    Sergio.

    Yeah sorry, I try to give a more detailed explanation:
    - The deployment are in both cases successful, but I get for both server, in the log file - the one generated by startWebLogic.sh - the following warning message:
    <17.02.2012 07:21 Uhr MEZ> <Warning> <oracle.adf.share.jndi.ReferenceStoreHelper> <BEA-000000> <Incomplete connection reference object for connection:myConn>
    After this message, on the WLS_A the application runs and continue without connection problems, while on WLS_B, after this message the application does not start, and the WLS complains that it can not resolve the JNDI connection.
    I have the same connection description on both servers, with the same JNDI name.
    From within JDeveloper, where I have the application, I set in the AppModule.xml the values for the configurations: AppModuleShared and AppModuleLocal.
    If I set AppModuleShared and AppModuleLocal to JDBC Datasource, I can deploy on both servers, and the application works on both WLS_A and WLS_B.
    If I set AppModuleShared and AppModuleLocal to JDBC URL, I can still deploy on both servers, but the application works only on WLS_A.
    Thanks so far for the answers, but I'm still baffled by this WLS behavior..
    Sergio.

  • Jdbc urls and when does load balancing and failover work?

    I you use a jdbc url with OracleDriver not OracleDataSource because we use dbcp for our connection pooling. What can we expect by putting in two connection descriptors one for each host when an 11g RAC node goes away?
    I know all about ONS and FCF etc but when you are not using OracleDataSource and friends what benefit is there is having mulitple hosts in the jdbc url?
    What is that recognises the other host in the jdbc url when a RAC node goes away? Is that integral to OracleDataSource or anything outside of OracleDriver?
    right now we only have one HOST = in your jdbc url but I'm not sure how we would benefit by adding the second if we are not using OracleDataSource.

    Best I can suggest - step up and become the expert.
    You are dealing with RAC which most people do not have and do not use (based on postings I have seen) so you already have that advantage.
    The dbcp pool doesn't mean anything since it just acts as a wrapper around the Oracle driver.

  • Connection with Advanced - custom JDBC URL fails with some valid JDBC-URLs

    Hi,
    I am trying to create a connection with a custom JDBC connection string, but SQL*Developer throws the error message:
    Status : Failure -Test failed: Required property 'hostname' is not set on the DatabaseProvider my tests are:
    <li> with connection via Connection Type set to TNS and a proper alias - it works fine
    <li> with connection via Connection Type set to Advanced and exactly the same values from tns in the url: jdbc:oracle:thin:@(DESCRIPTION=(enable=broken)(ADDRESS=(PROTOCOL=tcp)(HOST=172.24.32.113)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=RESTSVP_SITE1))) - it fails with Status : Failure -Test failed: Required property 'hostname' is not set on the DatabaseProvider<li> with JDBC URL set to jdbc:oracle:thin:@172.24.32.113:1521/RESTSVP_SITE1 - it works fine
    As my jdbc url is quite close to the example in [url http://docs.oracle.com/cd/E11882_01/java.112/e16548/apxtblsh.htm#CHDBBDDA]Using JDBC with Firewalls maybe someone can help me to fix it?
    Martin
    Edited by: berx on Oct 12, 2012 11:32 AM - fixed typos

    Hi Martin,
    1/oci/thick
    2/RAC options
    3/TNS connection
    1/oci/thick
    OCI driver has a slightly different set of features than thin:
    -try oci/thick (requires Oracle Client, server or instant client) (It requires SQLDeveloper java and .dll, .so libraries to match)Re: SQL developer 3.1 shows error Incompatible version of libocijdbc
    jdbc:oracle:oci:@(DESCRIPTION=(enable=broken)(ADDRESS=(PROTOCOL=tcp)(HOST=your_host_name)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=your_service_name)))
    2/RAC options
    More speculatively:
    -Try sid instead of service name (will disable some networking features on that connection), try switching load balancing off.
    From: Unable to access RAC from SQL Developer!
    In general and especially for RAC database you should use SERVICE_NAME to connect and not SID (because only SERVICE_NAME can use load balancing and failover features):
    3/TNS connection
    with connection via Connection Type set to TNS and a proper alias - it works fine(Which Connection Type TNS did you use? TNS Connect Identifier = oci/thick, TNS Network alias (can be thin (I should check, might depend on oci/thick checkbox))
    Is this issue stopping your work i.e. is this workaround unacceptable?
    -Turloch
    SQLDeveloper team

  • Strange problem with JDBC URL

    Hi All,
    I don't know whether this is a known issue which has a workaround or I am doing something wrong. But this is the problem.
    I have a nice GUI application which takes the JDBC URL, Driver, User name and password and then takes the input and tries to establish a connection with the Database. I was trying it on MySQL and I encountered a problem.
    The general format of the JDBC URL for MySQL is "jdbc:mysql://<ip_address>:<port>/<db_name> and if I have MySQL running on 3306 and if I give the URL as:
    "jdbc:mysql://localhost:9001" (where my HSQL is running), then, it never gets the connection and the application stays there forever (the call never returns after the DriverManager.getConnection() statement). And if I give the port as something else (say 9898) where nothing is running, then the getConnection() doesn't send me a SQLException.
    What could be the problem?

    Are you saying that you're connecting using the
    MySQL driver to an HSQL database, and
    that this results in a hang (rather than a timeout)?
    Just to clarify that I've understood the problem.
    If so, it should be fairly easy to get a simple test
    scenario up and running independent from your "real"
    application. Have you tried this, and could you post
    the code if so?
    Dave.Hi Dave,
    Thank you very much trying,
    Sorry if my English was poor. I am not trying to connect to HSQLDB using the MySQL Driver.
    Actually, I am trying to connect to MySQL db using the MySQL driver, but the DriverManager.getConnection() method hangs when I...
    1. Give a wrong URL e.g(jdbc:mysql://localhost:9001/")
    2. Run my MySQL on default port (3306)
    3. And If I have HSQL or any other program that is listening at port 9001.
    The problem seems to be very strange. here's the code below, you can try out yourself...
    import java.sql.DriverManager;
    import java.sql.SQLException;
    public class Demo {
         public static void main(String[] args) {
              try {
                   Class.forName("com.mysql.jdbc.Driver");
                   DriverManager.getConnection("jdbc:mysql://localhost:9001/", "user", "password"); // <-- The call hangs here
              } catch (SQLException e) {
                   e.printStackTrace();
              } catch (ClassNotFoundException e) {
                   e.printStackTrace();
    }Remember to have your mysql*.jar file in your classpath while running. :)
    Thank you....

  • Proxy Authentication with JDBC Datasource instead of JDBC URL?

    Hello,
    A requirement for my current project (ADF 10g) is that a user should be able to log in with his regular database account. For the moment, this is implemented using Proxy Authentication, as described in the following article:
    http://blogs.oracle.com/jheadstart/2008/01/using_proxy_authentication.html
    For now, we are using a JDBC URL defined in the application module config for the BC. In short: a ProxyAuthConnectionPoolManager class was created that overrides the default ConnectionPoolManagerImpl. The getConnection method has been overridden to create a standard connection (with the username/pw defined on the AM), and additionally, create a proxy connection within this connection with the specific user credentials. The (simplified) code:
        public Connection getConnection(String key, String url, Properties props, String username, String pwd) {
            // first fetch a default connection from the pool through the superclass
            Connection connection = super.getConnection(key, url, props, username, pwd);
            // cast into an OracleConnection
            OracleConnection oraConnection = (OracleConnection) connection;
                // close any proxy sessions that would still exist on the connection
                if (oraConnection.isProxySession()) oraConnection.close(OracleConnection.PROXY_SESSION);
                // get a handle on the session scope
                Map sessionScope = ADFContext.getCurrent().getSessionScope();
                if (sessionScope != null) {
                    // find the user object in the session (the account the user logs in with)
                    ProxyAuthUser user = (ProxyAuthUser) sessionScope.get(ProxyAuthUser.JHS_USER_KEY);
                    if (user != null) {
                        // create a property map with the end user credentials
                        Properties proxyProps = new Properties();
                        proxyProps.put(OracleConnection.PROXY_USER_NAME, user.getDbUsername() + "/" + user.getDbPassword());
                        proxyProps.put(OracleConnection.PROXY_USER_PASSWORD, user.getDbPassword());
                        // open the proxy session
                        oraConnection.openProxySession(OracleConnection.PROXYTYPE_USER_NAME, proxyProps);
                return oraConnection; 
        }Now, this works perfectly when using a JDBC URL. But when I switch the JDBC Datasource the ProxyAuthConnectionPoolManager class is not called anymore. This is all done in code in the Application Server. While using a JDBC Datasource is actually necessary: otherwise for each environment (dev, test, production,...) a different WAR file is needed.
    What class can I override with code similar to the piece above, to open a proxy connection inside the existing connection, when using a JDBC Datasource?
    Your help would be greatly appreciated!
    Chris

    Hello Krasimir,
    Frank Nimphius gave me the solution to this problem. The prepareSession is indeed the best place to put the code:
       private OracleConnection oconn = null;
       public void prepareSession(SessionData SessionData) {
          super.prepareSession(SessionData);
          oconn = ((PrxyTransactionImpl)this.getDBTransaction()).getPrxyConnection();
          // Specify the user that connects through the proxy user and its roles
          Properties prop = new Properties();
          prop.put(OracleConnection.PROXY_USER_NAME,"hr");
          prop.put(OracleConnection.PROXY_USER_PASSWORD,"hr");
          //prop.put(OracleConnection.PROXY_ROLES, roles);
          // Open the proxy session (DB-authenticated users)
          try {
             oconn.openProxySession(OracleConnection.PROXYTYPE_USER_NAME, prop);
          catch (SQLException e) {
             // Close the connection, to avoid connection to remain open after exception
             oconn.abort();
             e.printStackTrace();
       }But Frank also created the following helper classes to extend the ADF BC behavior:
       package oracle.sample.dbprxy.adfbc;
       import oracle.jbo.server.DBTransactionImpl2;
       import oracle.jbo.server.DatabaseTransactionFactory;
        * TransactionFactory that returns PrxTransactionImpl, which is a subclass of
        * DBTransactionImpl2
        * @author Frank Nimphius
       public class PrxyDatabaseTransactionFactory extends DatabaseTransactionFactory {
          public PrxyDatabaseTransactionFactory() {
             super();
           * Override the create method to return an instance of PrxyTransactionImpl instead
           * of DBTransactionImpl2
           * @return PrxyTransactionImpl
          public DBTransactionImpl2 create() {
             return new PrxyTransactionImpl();
       package oracle.sample.dbprxy.adfbc;
       import oracle.jbo.server.DBTransactionImpl2;
       import oracle.jdbc.internal.OracleConnection;
       public class PrxyTransactionImpl extends DBTransactionImpl2 {
          public PrxyTransactionImpl() {
             super();
           * The DBTransactionImpl2 does not expose the connection in a public
           * method. This class is a wrapper to expose the connection to the
           * BC app, so it can be accessed in the ApplicationModuleImpl class
           * @return OracleConnection - SQL Connection
          public OracleConnection getPrxyConnection() {
             return (OracleConnection) this.getJdbcConnection();
       }In the configuration of your Application Module, you have to set the property "TransactionFactory" (normally the last one in the list) to oracle.sample.dbprxy.adfbc.PrxyDatabaseTransactionFactory. This way, the DBTransaction() of your AM will have a getPrxyConnection() method and you will have the connection at your disposal. You won't need the createPreparedStatement in your code anymore.
    To close the connection, this is the code behind my "logout button" on the backing bean. Application Module Pooling and Connection Pooling will take care of the rest for you!
       ExternalContext ectx = FacesContext.getCurrentInstance().getExternalContext();
       HttpSession session = (HttpSession)ectx.getSession(false);
       session.invalidate();Another thing: be sure to set the internalconnection property to a different JDBC Datasource (or file based) than the one you are using to connect to the database (the default value). Otherwise connection pooling will be confused and there will be too much pending database connections.
    This works for me, all sessions are closed in time and logging out seems secure. I do not have my complete, adjusted code here at my disposal, but next week, when I'm back at work, I'll have a look to see if there is anything I forgot to mention. So this should get you started, but I'll keep you posted!
    A huge thank you to Frank again for helping me (/us) out with this problem!! And sorry I forgot to post the answer here sooner. I was too busy with testing it. :-)
    Regards,
    Chris

  • JDBC URL for Two Oracle Nodes with different SID

    Hi All,
    I have two DB nodes which are running independently (Mean no RAC), I want to configure JDBC URL for these nodes that if one node goes down my application automatically connected to second one.
    Both nodes have different HOST and SID but the tables i am going to access have same structure. we are using this DB for some logging purpose that's why we didn't choose RAC option.
    Regards,
    imran

    For RAC database, I used:
    jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=on)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=hostname)(PORT=port))(ADDRESS=(PROTOCOL=TCP)(HOST=hostname)(PORT=port)))(CONNECT_DATA=(SERVICE_NAME=servicename)))
    For non RAC database you could ommit LOAD_BALANCE setting, and set correct hostname & port for both nodes. We connected using common service name. If your databases have different service names, then the SID will have to be part of ADDRESS somehow - maybe (SID=sid).
    I have to mention though that unless the main reason behind your decision was lower cost without RAC (and you don't need to store any information apart from logs), it was a wrong decision. If you decide to store any additional information in the database for whatever reason (new requirements), you are in trouble.

  • Wrong SID in JDBC URL

    Hi all,
    I'm developing a java program in OAF context to generate a pdf from a xdo data template and template. this is already working, there is only one issue.
    The DataProcessor needs a connection, therefore I've specified hardcoded a JDBC URL.
    Connection conn = DriverManager.getConnection("jdbc:oracle:thin:apps/apps@(DE.............");
    and then pass conn to the DataProcessor.
    dataprocess.setConnection(conn);
    But i want to get rid of this hardcoded connection.
    So I did the following:
    OAApplicationModuleImpl am = (OAApplicationModuleImpl)pageContext.getRootApplicationModule();
    String JDBCURL = am.getOADBTransaction().getConnectionMetadata().getJdbcURL();
    System.out.println(JDBCURL");
    as result a wrong connectionstring: ....com)(PORT=1533)))(CONNECT_DATA=(SID=1533)))
    he takes for SID the port number....
    questions I have:
    - the way I work is correct?
    - where does he gets his jdbc url from? becuase I already checked my database in jdev and it works (with correct SID) and also my dbc file is correct...
    Thanks in advance!
    Stijn

    Stijn ,
    You can get connection from OADBTransactionImpl in AM.Here is the sample code:
    import oracle.apps.fnd.framework.server.OADBTransaction;
    import oracle.apps.fnd.framework.server.OADBTransactionImpl;
    import oracle.jdbc.driver.OracleConnection;
    OADBTransactionImpl oadbtransactionimpl = (OADBTransactionImpl)getOADBTransaction();
    OracleConnection conn = (OracleConnection)oadbtransactionimpl.getJdbcConnection();
    --Mukul                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • REDIRECT JDBC URL WHEN USING DYNAMIC JDBC CREDENTIALS SO NOT HARDCODED

    I have taken over an application that uses row-level security and ADF (using
    dynamic JDBC Credentials). I have been able to set the internal_connection to
    a JDBCDatasource, but cannot set the Connection Type in the Oracle Business
    Component Configuration to a JDBCDatasource. When I do, I receive errors that
    tables are not found. When I set the value back to a JDBC URL, everything
    works fine again.
    I am looking for a solution where the userid and password are not hardcoded in
    the BC4J.xcfg or a way to redirect this information, as we change our system
    passwords every nighty days. Otherwise, I will have to redeploy the
    application every nighty days.
    I did not create this application, but I am sure that you could simply follow
    the "How to Support Dynamic JDBC Credentials" article. From that point, you
    will probably be where I am, where I have the internal_connection set to a
    JDBCDataSource and working properly, but cannot set the Connection Type to
    anything where the userid and password will not be hardcoded or cause failure.
    I wanted to let you know that I have
    found the updated How to Support Dynamic JDBC Credentials
    (http://www.oracle.com/technology/products/jdev/howtos/bc4j/howto_dynamic_jdbc.h
    tml) and was going to run through the "Advanced: Supporting Dynamic JDBC URLs",
    but once I was done keying in
    env.remove(ConnectionStrategy.DB_CONNECT_STRING_PROPERTY); I received a
    depreciation message on the DB_CONNECT_STRING_PROPERTY. (Note: I am coding in
    JDeveloper 10.1.3, so this may be depreciated as of then, but the ADF Libraries
    for JDeveloper 10.1.3 are on our Oracle 10gAS 10.1.2 server.)
    I thought maybe this would resolve my issue, but I can't be sure as the
    deprecation message leads me to believe that this solution may not be viable in
    the future.
    UPDATE
    =======
    The article you are referencing is definitely an older version.
    There is a newer article for 10g at:
    http://www.oracle.com/technology/products/jdev/howtos/10g/dynamicjdbchowto.html
    Please see if that helps.
    I have already reviewed this article.
    In fact, I have reviewed many versions of this document. I have not seen one
    created yet for 10.1.3 though (especially without JSF as our 10.1.2 AS server
    will not support it). I need to find an example or documentation that shows
    how we can keep from having the JDBC URL stored in the BC4J.xcfg or a way to
    use dynamic JDBC credentials with a JDBCDataSource. We do not want to store
    the userid and password in the application, rather, we would like to setup
    something that can be configurable from the application server.
    I think we need to use the dynamic JDBC credentials because we are using the
    row-level security, where we setup a database context for the user and only
    allow certain records of a database table to be returned to the browser based
    on that context.
    Might there be a way to still use the JDBCDataSource?

    I understand that the user provides the userid and password and that these values are setup using the Configuration class.
    However, when I am to deploy the ADF Business Module with my application, I have to specify either a JDBC URL or a JDBC DataSource in the Oracle Business Component Configuration.
    When I use JDBC DataSource, the code does not work properly, almost like the user's credentials are not used for the connection (I get errors like table or view does not exist).
    When I use the JDBC URL, the bc4j.xcfg stores a reference in the JDBCName attribute to a ConnectionDefinition in the same file. It is in this tag of the bc4j.xcfg where the userid, sid, and password (encrypted) is stored and used when retrieving the initial context of the ADF business components.
    It is these values that I want to have stored else where so that the application does not have to be redeployed in order for the password (or sid, or other connection information) to be change.

  • JDBC URL for Two Oracle Nodes

    Hi All,
    I have two DB nodes which are running independently (Mean no RAC), I want to configure JDBC URL for these nodes that if one node goes down my application automatically connected to second one.
    Both nodes have different HOST and SID.
    Regards,
    imran

    Hi jwenting,
    I tried following URL in PL/SQL developer and my fail over is working fine with separate nodes, Only thing i did was i keep SID of both nodes with same name.
    ERS=(DESCRIPTION=(FAILOVER=on)(LOAD_BALANCE=off)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=172.21.5.130)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=172.21.5.133)(PORT=1521)))(CONNECT_DATA=(SID=orcl)))
    But strange when i connected this through JDBC URL like following it gives me error of invalid URL
    jdbc:oracle:thin:@(DESCRIPTION=(FAILOVER=on)(LOAD_BALANCE=off)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=172.21.5.130)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=172.21.5.133)(PORT=1521)))(CONNECT_DATA=(SID=orcl)))
    Regards,
    imran

  • Deployment using JDBC DataSource instead of JDBC URL

    Hello,
    I've noticed some strange behaviour when deploying an ADF application (11g, latest release) to a WLS (integrated or stand-alone), when using JDBC DataSource as a connection type for the application module.
    Normally, when you create your Business Components, a Database Connection is added to the Application Resources panel, eg MyConnection. If you then set your AM to JDBC DataSource instead of JDBC URL, the default datasource would be jdbc/MyConnectionDS. To make the application use the DataSource defined on the WLS, I then uncheck "Auto Generate and Synchronize weblogic-jdbc.xml Descriptors during deployment" in the Application Properties > Deployment tab.
    So far so good: after deployment to the WLS, the application uses the DataSource defined on the WLS server (jdbc/MyConnectionDS). When changing it on the server to another database, the application indeed uses this other database. Also, the following is automatically added to the web.xml during deployment to .ear file:
      <resource-ref>
        <res-ref-name>jdbc/MyConnectionDS</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
      </resource-ref>Now the part that doens't make sense to me: if I delete the password in the Database Connection under Application Resources, I can still deploy the application, but the jdbc/MyConnectionDS on the WLS is not found anymore. While it is still there. I get the following error message:
    Unable to lookup Data Source at context java:comp/env/jdbc/MyConnectionDS
    oracle.jbo.DMLException: JBO-27200: JNDI failure. Unable to lookup Data Source at context java:comp/env/jdbc/MyConnectionDS
    I made the JDev connection (used at development) invalid, and the deployed application stops working (at runtime). While it should just be using the JDBC DataSource defined on the WLS, that is still there. The reason appears to be that when there is no password in the Database Connection in JDev, the entry in the web.xml (see above) is not made during deployment.
    I am doing something wrong? Or is this "expected" behaviour?
    The reason why it bothers me: I have made a reusable component (a Data Control, let's call it A) from a model project, by deploying it to a ADF library JAR. I've set the AM of this project to use a certain jdbc datasource, which will be defined on the WLS.
    When importing the library JAR of A inside another application (B), the connection of the A is added to B. But ofcourse, without the password for security reasons, so we're in the situation described above: When I deploy the new application B, the web.xml is not updated with the DataSource of A, and the application doens't work. And what I would like to avoid, is that whenever someone uses component A, that they have to update the connection details of component A in application B. Because when I fill in the password of application A's Database Connection in application B, all works well again.
    I hope this question makes sense. :-)
    Thanks in advance,
    Chris

    Arun and Krithika,
    Thanks for your replies. I have already done what both of you suggested:
    Chris Schryvers wrote:
    I then uncheck "Auto Generate and Synchronize weblogic-jdbc.xml Descriptors during deployment" in the Application Properties > Deployment tab.I can get it to work, both for deployment on the internal WLS as on a stand-alone WLS.
    My only question is: why does a property at development time (the empty password of the JDev connection) influence the runtime behaviour (the JDBC DataSource not being found after deployment).
    Ofcourse, setting the password for the connection in JDev "solves" the problem. But I want to avoid that everyone who uses the reusable component needs to fill in the password for its database connection. In my opinion, that's the whole point of using a JDBC datasource instead of a JDBC URL: the reusable component just states that there needs to be a jdbc/MyConnectionDS on the server and it can be used as is. Wihtout any modifications at development time.
    What's more:
    Suppose I import the reusable JAR and its connection is added to JDev, without password.
    *) Leaving the password empty: DS not found after deployment (web.xml not adjusted, as mentioned in my original post)
    *) Entering the correct password: DS found, web.xml adjusted at deploy time.
    *) Entering an incorrect password: DS found, web.xml adjusted at deploy time.
    It even works when I enter an incorrect password, which proves that the JDBC DataSource on the server is used, instead of the JDev connection. Then why is the web.xml not adjusted when the password remains empty?
    Arun, I'll check the documention that you linked to, but this just seems like an weird decision in the implementation of JDev/ADF. :-)

  • Creating a service ; What needs to be added to tnsnames.ora and JDBC url?

    DB version: 11.2.0.2
    OS platform : Solaris 10
    We have a 2 node RAC.
    DB name   = mbsprd
    Instance1  = mbsprd1
    Instance2  = mbsprd2I want Instance 1 (mbsprd1) to be used for our OLTP application and Instance 2 (mbsprd2) to be used for another application of DSS nature.
    Based on the syntax
    srvctl add service -d <dbname> -s <ServiceName> -r <Preferred Instance> -a <Available Instance>I am going to create 2 services
    -- Creating a service called OLTP
    srvctl add service -d mbsprd -s OLTP  -r mbsprd1 -a mbsprd2-- Creating a service called DSS
    srvctl add service -d mbsprd -s DSS  -r mbsprd2 -a mbsprd1-- Starting the services
    srvctl start service -d mbsprd -s OLTP
    srvctl start service -d mbsprd -s DSSI guess the above steps are enough to configure a service at the server side.
    I would like to know what needs to be done at the client side.
    Currently the tnsnames.ora file and JDBC url used by our clients are shown below. What needs to be added to tnsnames.ora file and jdbc URL to start using services configured above?
    -- SCAN based TNS entry
    mbsprd =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (COMMUNITY = tcp.world)
            (PROTOCOL = TCP)(Host = p148149-scan.tpam.net) (Port = 36964))
        (CONNECT_DATA =
          (SERVER       = DEDICATED)
          (SERVICE_NAME = mbsprd)
          (FAILOVER_MODE=(TYPE=SELECT)(METHOD=BASIC))
    -- TNS entry based on local listener
    -- Instance 1
    mbsprd1 =
    (DESCRIPTION =
       (ADDRESS_LIST =
       (ADDRESS =(PROTOCOL = TCP)(HOST = hsolarp148-vip)(PORT = 36973))
       (CONNECT_DATA =
             (SERVICE_NAME = mbsprd)
             (INSTANCE_NAME = mbsprd1)
    -- Instance 2
    -- TNS entry based on local listener
    mbsprd2 =
    (DESCRIPTION =
       (ADDRESS_LIST =
       (ADDRESS =(PROTOCOL = TCP)(HOST = hsolarp149-vip)(PORT = 36973))
       (CONNECT_DATA =
             (SERVICE_NAME = mbsprd)
             (INSTANCE_NAME = mbsprd2)
    )JDBC entry for RAC
    jdbc:oracle:thin:@p148149-scan.tpam.net:36964:mbsprd -- Alternative version used by some clients because the above had 'some issues'
    jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=on)(ADDRESS=(PROTOCOL=TCP)(HOST=p148149-scan.tpam.net) (PORT=36964))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=mbsprd)(FAILOVER_MODE =(TYPE = SELECT)(METHOD = BASIC)(RETRIES = 180)(DELAY = 10))))

    OLTP =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = p148149-scan.tpam.net)(PORT = your_port_number))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = OLTP)
    DSS =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = p148149-scan.tpam.net)(PORT = your_port_number))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = DSS)
      )JDBC entry for RAC
    jdbc:oracle:thin:@p148149-scan.tpam.net:36964:service_name
    jdbc:oracle:thin:@new_tns_entry_description(if you would like to connect the database with particular service)
    try this and let us know any issues,

  • Dynamic JDBC URls at Runtime

    Hi Experts,
    I did my application in jdev 11.1.1.6 and deployed using Jdbc Url connections and it worked successfully (Actually I m working with 2 diff Database connectiosn in my application)
    But the thing is my company need me to do something like I should be able to dynamically use Jdbc url connections at runtime so that they want to have QA db and PROD db inside the application
    and dynamically change them itseems. (i.e I will have 4 Db in which 2 for QA and 2 for PROD)
    Is there a way where I can achieve them. If so help me out.
    Thanks,
    933601

    Hi,
    You could store the database URLs in a properties file in the app server filesystem, then look them up in the dynamic JDBC code before setting the session attributes. So your QA app server has a properties file containing the URLs for the 2 QA databases and the PROD app server has a properties file containing the URLs for the 2 PROD databases.
    If you want a single app server to talk to multiple sets of databases you could pass a parameter to the login screen. Based on this you decide which database(s) to connect to.
    Kevin

  • Firefox starts treating URLs with .exe in them as downloads instead of pages.

    I use an online database system which was written and compiled using CGI for VB. All of the URLs have .exe in them (e.g. http://www.website.com/record.exe?a=SMITH). I can work in Firefox for hours without a problem, but then seemingly at random Firefox will start prompting me with the 'save' dialogue, as if I was trying to download the .exe instead of just loading the URL. The only way to get back to normal is to quit the browser and re-open it. After that it's fine... for a while anyway.

    Clear the cache and the cookies from sites that cause problems.
    "Clear the Cache":
    * Tools > Options > Advanced > Network > Offline Storage (Cache): "Clear Now"
    "Remove Cookies" from sites causing problems:
    * Tools > Options > Privacy > Cookies: "Show Cookies"
    Start Firefox in <u>[[Safe Mode]]</u> to check if one of the extensions or if hardware acceleration is causing the problem (switch to the DEFAULT theme: Firefox (Tools) > Add-ons > Appearance/Themes).
    *Don't make any changes on the Safe mode start window.
    *https://support.mozilla.com/kb/Safe+Mode

  • Remote JDBC Problem with Oracle BPM Studio

    Hi all, i am facing the Remote JDBC Problem with Oracle BPM Studio.
    When i configure a Remote JDBC Connection for SQL in BPM Studio, it prompt me an error.
    The SQL Connection is configured as following :
    External Resource:
    Name : MyDS
    Type : SQL Database
    Supported Types : Remote JDBC
    Details:
    Database Type : BPM's Oracle Driver Version:10, 11
    J2EE : WLS
    Lookup Name : MyAppDS
    Configuration for "WLS"
    Name : WLS
    Type : J2EE Application Server
    Supported Types : GENERIC_J2EE
    Details:
    Initial Context Factory : weblogic.jndi.WLInitialContextFactory
    URL : t3://localhost:7001
    But, when i try to connect to the Database by using this configuration, I will get an Exception.
    An exception occurred while getting a resource from a connector.
    Detail:The connector [[ MyDS : SQL : REMOTE_JDBC ]] caused an exception when getting a resource.
    Caused by: An exception occurred while getting a resource from a connector.
    Detail:The connector [[ WLS : J2EE : J2EE ]] caused an exception when getting a resource.
    Caused by: javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [[ Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory ]]
         at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:657)
         at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
         at javax.naming.InitialContext.init(InitialContext.java:223)
         at javax.naming.InitialContext.<init>(InitialContext.java:197)
         at fuego.jndi.FaultTolerantContext.createContext(FaultTolerantContext.java:726)
         at fuego.jndi.FaultTolerantContext.<init>(FaultTolerantContext.java:79)
         at fuego.connector.impl.GenericJ2EEConnector.createInitialContext(GenericJ2EEConnector.java:177)
         at fuego.connector.impl.GenericJ2EEConnector.createStandaloneContext(GenericJ2EEConnector.java:98)
         at fuego.connector.impl.BaseJ2EEConnector.getResource(BaseJ2EEConnector.java:92)
         at fuego.connector.impl.BaseJ2EEConnector.getResource(BaseJ2EEConnector.java:76)
         at fuego.connector.J2EEHelper.getReadOnlyContext(J2EEHelper.java:86)
         ... 12 more
    Edited by: user2262377 on Jun 22, 2009 4:01 PM

    I guess the weblogic.jar is not included in the studio.
    So, i added weblogic.jar (Weblogic 10.3) and wlclient.jar (Weblogic 10.3)
    It is working in my simple java code. But, still not working in BPM Studio.
    The error logs:
    An exception occurred while getting a resource from a connector.
    Detail:The connector [OFT_APP_DS:SQL:REMOTE_JDBC] caused an exception when getting a resource.
    Caused by: java.lang.Object cannot be cast to java.io.Serializable
    fuego.connector.ConnectorException: An exception occurred while getting a resource from a connector.
    Detail:The connector [OFT_APP_DS:SQL:REMOTE_JDBC] caused an exception when getting a resource.
         at fuego.connector.ConnectorException.exceptionOnGetResource(ConnectorException.java:88)
         at fuego.connector.JDBCHelper.getReadOnlyConnection(JDBCHelper.java:93)
         at fuego.sqlintrospector.BrowserPanel.connect(BrowserPanel.java:395)
         at fuego.sqlintrospector.BrowserPanel.populateTree(BrowserPanel.java:200)
         at fuego.ui.wizards.ui.CheckTreeBrowser$1.construct(CheckTreeBrowser.java:63)
         at fuego.ui.SwingWorker$2.run(SwingWorker.java:39)
         at java.lang.Thread.run(Thread.java:619)
    Caused by: java.lang.ClassCastException: java.lang.Object cannot be cast to java.io.Serializable
         at weblogic.iiop.IIOPOutputStream.writeAny(IIOPOutputStream.java:1588)
         at weblogic.iiop.IIOPOutputStream.writeObject(IIOPOutputStream.java:2231)
         at weblogic.utils.io.ObjectStreamClass.writeFields(ObjectStreamClass.java:413)
         at weblogic.corba.utils.ValueHandlerImpl.writeValueData(ValueHandlerImpl.java:235)
         at weblogic.corba.utils.ValueHandlerImpl.writeValueData(ValueHandlerImpl.java:225)
         at weblogic.corba.utils.ValueHandlerImpl.writeValue(ValueHandlerImpl.java:182)
         at weblogic.iiop.IIOPOutputStream.write_value(IIOPOutputStream.java:1963)
         at weblogic.iiop.IIOPOutputStream.write_value(IIOPOutputStream.java:2001)
         at weblogic.iiop.IIOPOutputStream.writeObject(IIOPOutputStream.java:2266)
         at weblogic.jdbc.common.internal.RmiDataSource_WLSkel.invoke(Unknown Source)
         at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589)
         at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
         at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
         at weblogic.security.service.SecurityManager.runAs(Unknown Source)
         at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473)
         at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

Maybe you are looking for

  • Reg :How can we debug in ale/idoc

    in ale/idoc  where can we put the break points , and how can we know is it received correctly with out we05.

  • Authorization Issue on Portal when executing a WAD

    Hi Guys, I have a WAD that is published to the portal. I have added the WAD to a page via a hyperlink, the page resides in KM. When a user opens the page, via a URL iView, the see the page, but when they click on the link to open the WAD, I get the f

  • Modify Entries in DZL

    Hi, I have a scenario where in Time Pairs are to be converted to number of days instead of number of hours. Function GMT is processing TIP (time pairs) and is creating wagetypes in DZL with number of hours in number field wherein i need number of day

  • Change in Infotype fields

    Hi, If the below question is already answered, provide me the thread. I want to change HRP1001-PROZT field to HRP1001-PERCE and PA0002-NACHN to PA0002-FIRSTN. I am trying to say that is there any way to change the standard fields in the standrard inf

  • I need help with some technical YouTube Settings, third party tools page

    How can I add ios mobile Safari, back to my google + third-party tools page?  I updated my ipad 2 to ios7 and could no longer upload videos to youtube for my blog.  YouTube had been saying unrecognized file type because it's not longer compatible wit