Getting the number of active connections in a connection Pool

Hi,
I have an application deployed on jboss. DB used is db2. For monitoring purpose i need to get the number of active and idle connections at any point of time. I am trying to use commons-dbcp jar to get this data using BasicDataSourceClass. Following is the piece of code.
Context initialContext;
try {
     initialContext = new InitialContext();
     DataSource ds = (DataSource) initialContext.lookup(myjndiname);
     logger.info("************CONNECTION POOL DATA->" + ds.getClass().getName() + "************" + ds.getClass() + "**************");
     BasicDataSource bds = (BasicDataSource) datasource;
          logger.info("************CONNECTION POOL DATA-> ACTIVE CONN=" + bds.getNumActive() + " IDLE CONN=" + bds.getNumIdle() + " INIT SIZE=" + bds.getInitialSize());
catch (NamingException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
This code gave a class cast exception at the point datasource is cast to BasicDataSource. The class name returned by ds is WrapperDataSource. I have few queries on this:-
1. What configurations do i need so that datasource returned by InitialContext is BasicDataSource? FYI i tried to add the BasicDataSourceFactory in db2-ds.xml. But it still didnt work
2. Is there any other way to find the number of active connections in a connection pool? I dont want any server specific solution.
Pls help.
Thanks

user13642196 wrote:
Hi,
I have an application deployed on jboss. DB used is db2. For monitoring purpose i need to get the number of active and idle connections at any point of time. I am trying to use commons-dbcp jar to get this data using BasicDataSourceClass. Following is the piece of code.
Context initialContext;
try {
             initialContext = new InitialContext();
             DataSource ds = (DataSource) initialContext.lookup(myjndiname);
             logger.info("************CONNECTION POOL DATA->" + ds.getClass().getName() + "************" + ds.getClass() + "**************");
             BasicDataSource bds = (BasicDataSource) datasource;
          logger.info("************CONNECTION POOL DATA-> ACTIVE CONN=" + bds.getNumActive() + "  IDLE CONN=" + bds.getNumIdle() + "   INIT SIZE=" + bds.getInitialSize());
catch (NamingException e) {
             // TODO Auto-generated catch block
             e.printStackTrace();
}This code gave a class cast exception at the point datasource is cast to BasicDataSource. The class name returned by ds is WrapperDataSource. You can only cast an object to an interface it implements or to a class it extends (directly or indirectly).
I have few queries on this:-
1. What configurations do i need so that datasource returned by InitialContext is BasicDataSource? FYI i tried to add the BasicDataSourceFactory in db2-ds.xml. But it still didnt workhttp://commons.apache.org/dbcp/api-1.2.2/org/apache/commons/dbcp/package-summary.html#package_description

Similar Messages

  • I can't cap the number of active downloads (via persistent-connection-to-server cap) AND still be able to load pages hosted on the same server, *because*...?

    I'm aware that, by setting "network.http.max-persistent-connections-per-server" (in about:config) to 1, I'm effectively preventing myself from being able to download a single file from a server AND load a page hosted on the same server simultaneously.
    My question is, why can't Firefox tell the difference between a file download and loading a website?
    The reason I ask is that I feel I should be able to create a download queue and have my browser download one file at a time (to minimize the impact downloads have on available bandwidth and my own downstream, while allowing me to set up a long chain of sequential downloads), YET still be able to browse websites hosted on the same server.
    I do not want to use an add-on or a separate download manager to solve this problem. I think that's stupid. Firefox should be able to tell the difference between a request to load an html file and a request to download any other type of file.
    After all, I can already configure Firefox's file handling behavior for each type separately (I have, for example, previously set PDF files to prompt me to "Save as...", in order to prevent exploits from triggering when I click on a link, by preventing Firefox from opening them in-browser).
    There is no reason I shouldn't be able to do what I have said I would like to. I should not HAVE to limit the number of max server connections in order to ACHIEVE filling a simple download queue with a 1-file-at-a-time limit.

    In your Keychain under 'login' delete the VeriSign certificates and then quit and restart all browsers/itunes/app store.
    http://apple.stackexchange.com/questions/180570/invalid-certificate-after-securi ty-update-2015-004-in-mavericks

  • How to get the number of current active external modes?

    hi all,
    I need to get the number of currently active external modes. This can be done by calling function THUSRINFO. But this only works propperly, if you are logged on only once. If you are logged on more than one time then the function returns several entries in the parameter USR_TABLE. The entries mainly differ in the first parameter TID (type UTID, INT4) "terminal-identification" but how can I know which is the valid one for my current session. Functions TERMINAL_ID_GET, SPH_TERMINAL_IDENTIFY and SPH_TERMINAL_ID_GET dont work.
    Or is there another way to get the number of active external sessions?
    Thanks in advance,
    Michael

    Hi,
    tables: usr02, usr41.
    data: OPCODE_MODE_COUNT(1) TYPE X VALUE 3,
          modes like sy-index,
          u_MODES LIKE MODES.
    select * from usr02.
      select * from usr41 where BNAME = usr02-bname.
        CALL 'ThUsrInfo' ID 'OPCODE' FIELD OPCODE_MODE_COUNT
          ID 'TID' FIELD usr41-TERMID
          ID 'MODES' FIELD MODES.
        IF SY-SUBRC = 0.
          u_MODES = u_MODES + MODES.
        ENDIF.
      endselect.
      if sy-subrc = 0.
        write:/ usr02-bname, u_MODES.
      endif.
      clear u_modes.
    endselect.

  • How to get the number of issued active certifcates from a CA

    Hi,
    We have a PKI infrastructure still running on Windows Server 2003. How can I get the number of active certificates issued?  I have used the filter option on the issued certifcates node listing the certificates with expiry date after the current
    date, but this list only all the certs without the actual total number of certs.
    Any help is appreciated
    Thanks
    Johan Marais
    JkM6228

    On Wed, 22 Jan 2014 08:57:59 +0000, Martin Rublik wrote:
    certutil -config -view -out "Issued Distinguished Name" -restrict "Certificate Expiration Date > 22. 1. 2013" | findstr Rows
    It will dump CA database look for issued distinguished name (name in the subject of the certificate) and outputs only certificates expiring after 22.1.2013. The output is piped to findstr command that filters the total number of rows.
    There are a couple of problems with the above:
    1. Not every certificate will have a Subject name.
    2. This won't filter out certificates that have been revoked but are still
    time valid.
    3. I couldn't get the "findstr Rows" to return anything and when I look at
    the help for findstr I don't see that as an option for the command.
    This command worked for me, make sure you enter it all on a single line:
    certutil -view -restrict "Disposition=20,NotBefore<January 22 2013" -out
    SerialNumber | findstr /C:"Serial Number:" | findstr /r /n "^" | find /c :"
    Also, if you copy and paste from this post into the cmd window, be careful
    that the quotes and dashes don't get converted into the wrong type.
    Paul Adare - FIM CM MVP
    "for thing in $(fnord $(frob $(./gazonk foo bar baz bletch thud grunt)));
    do
    zot --wodchuck ${thing}; done"
    -- Stig Sandbeck Mathisen making a point about the beauty of shell scripts

  • How do I reset the number of activations on Visio 2003 after getting a "too many activations" message?

    I just installed Visio 2003 on a PC, and got the "we can't activate this app via the internet because you've installed it too many times" message. I went back to phone activation, but, of course, that's no longer available for this product.
    How do I get the number of activations reset? Apparently you used to be able to do this by calling Microsoft, but what's the number to call? Or is there another way to do it?
    I'm probably going to need to do it for my copy of Office 2003 also.

    Hi,
    Microsoft has ended support for Office 2003 on April 8, 2014. This change will affect your software updates and security options.
    Please contact your local customer service. Explain to the service (Human being) that you can’t activate Visio 2003 and the error message is “we can't
    activate this app via the internet because you've installed it too many times”.
    You can find
    your local custom support number on the link below.http://support.microsoft.com/gp/customer-service-phone-numbers/en-us
    Hope it can be helpful.

  • Monitoring the number of active calls in a gateway from HUM

    Hi,
    we are configuring HUM and we want to display the number of active calls in a gateway but we can't find any OID's that show exactly what we want. So we are going to use the EXPRESSION-MIB in order to calculate some values we need.
    In MRTG we launch a snmpwalk query against the OID 1.3.6.1.4.1.9.9.63.1.3.1.1.9 (cvCallActiveInSignalLevel) and we count with a counter the number of rows obtained from that snmpwalk. The calculation is as follows:
    @ret=snmpwalk(sigint03.'@'.'x.x.x.x'.'1.3.6.1.4.1.9.9.63.1.3.1.1.9');
    foreach $campo (@ret) {
         $cuenta=$cuenta+1;
    print $cuenta."\n";
    But we don't know how to implement the "foreach" loop with the EXPRESSION-MIB... and we don't know any other way for getting the number of active calls.
    Can anybody please help me?
    Regards.

    Hi, I've only changed the command:
    snmpset -v 2c -c private router expExpressionValueType i 4
    with:
    snmpset -v 2c -c private router expExpressionValueType.1 i 4
    and
    snmpset -v 2c -c private router expExpressionValueType.2 i 4
    because, an error message appeared if not using the index. So, finally, the commands used are the following:
    snmpset -v 2c -c private router expNameStatus.110.110.110.110.110 i 6snmpset -v 2c -c private router expNameStatus.110.110.110.110.110 i 5snmpset -v 2c -c private router expExpressionIndex.110.110.110.110.110 gauge 1snmpset -v 2c -c private router expExpressionComment.1 octetstring "numeroEntradas"snmpset -v 2c -c private router expExpression.1 octetstring '$1 >= 0'snmpset -v 2c -c private router expObjectID.1.1 o 1.3.6.1.4.1.9.9.63.1.3.1.1.1snmpset -v 2c -c private router expExpressionValueType.1 i 4snmpset -v 2c -c private router expObjectIDWildcard.1.1 i 1snmpset -v 2c -c private router expObjectStatus.1.1 i 1snmpset -v 2c -c private router expNameStatus.110.110.110.110.110 i 1snmpset -v 2c -c private router expNameStatus.111.111.111.111.111 i 6snmpset -v 2c -c private router expNameStatus.111.111.111.111.111 i 5snmpset -v 2c -c private router expExpressionIndex.111.111.111.111.111 gauge 2snmpset -v 2c -c private router expExpressionComment.2 octetstring "sumaEntradas"snmpset -v 2c -c private router expExpression.2 octetstring 'sum($1)'snmpset -v 2c -c private router expObjectID.2.1 o expValueInteger32Val.1.0.0snmpset -v 2c -c private router expExpressionValueType.2 i 4snmpset -v 2c -c private router expObjectIDWildcard.2.1 i 1snmpset -v 2c -c private router expObjectStatus.2.1 i 1snmpset -v 2c -c private router expNameStatus.111.111.111.111.111 i 1
    But there are no entries in the expValueInteger32Val OID, so later, in the sum expression, there is no elements to sum. Please, find attached 2 files with the snmpwalk outputs.
    How could we get to have values in expValueTable?
    Many thanks.

  • When trying to connect to the itunes store on my MacBook Pro, I get the following error message: "iTunes could not connect to the iTunes Store.  An unknown error occurred (-54) Make sure your network connection is active and try again."

    When trying to connect to the itunes store on my MacBook Pro, I get the following error message: "iTunes could not connect to the iTunes Store.  An unknown error occurred (-54) Make sure your network connection is active and try again."

    I've had the same problem for a month and yet I still cant get iTunes to work, I've heard different solutions but none have worked for me
    This may or may not work for you but its worth a try even though it didnt seem to work for me, Good Luck!
    Control Panel
    Internet Options
    Connections Tab
    Click LAN Settings
    Uncheck "Use A Proxy Server"

  • Why do the number of active JMS connections increase?

    <strong>Problem</strong>
    - Number of active JMS connections and current JMS messages increases until the Weblogic instances crash with an OutOfMemory exception
    <strong>Setup</strong>
    - Weblogic v9.2.3, Cluster with 4 Nodes
    - A JMS Message is sent from a MDB in Weblogic to a distributed queue which has a member on each of the 4 Weblogic nodes. The session is created as follows session = connection.createSession(false,Session.AUTO_ACKNOWLEDGE), the message delivery mode is set programmatically to persistent and the delivery mode override of the queue setup is set to persistent too
    - Standalone JMS client processes: each one is attached to <strong>all</strong> 4 nodes. Each one uses a unique JMS message selector so that we have more than one queue consumer for one queue but every message is exactly dedicated to one queue consumer. We us weblogic.jar for the clients.
    - Use of Weblogic auto reconnect feature. JMS client code:
    Connection connection = this.connectionFactory.createQueueConnection();
    final WLConnection wlconnection = (WLConnection)connection;
    wlconnection.setReconnectPolicy(JMSConstants.RECONNECT_POLICY_ALL);
    wlconnection.setTotalReconnectPeriodMillis(-1);
    wlconnection.setReconnectBlockingMillis(-1);
    <strong>Remarks and Questions</strong>
    - There are no pending JMS messages which is good
    - In our setup, each JMS client is connected to all 4 nodes as the messages are not distributed to all nodes: if a message is put to Queue A but the client is only connected to Queue B, the message is NOT transfered from Queue A to Queue B. We set the parameter "Forward Delay" to 5 seconds with no effects. Is this the normal behavior?
    - Not all JMS clients are visible in the Weblogic console under JMS Services -&gt; JMS Servers -&gt; [Server] -&gt; Monitoring -&gt; Active Connections. Which one are visible? Which one are not visible? There are also clients where the number of connections is not zero but stays constant; we know that as several independent clients on different hosts are started and the IP adress is visible in the Weblogic console. Why....?
    - What reasons can lead to increasing connections? Is this due to client or server problems? Do we have to acknowledge the message in the onMessage(Message) method of the client JMS consumer? So far as I know, we don't have to.
    - Are the increasing number of current messages due to the increasing number of JMS connections?
    - May the RECONNECT_POLICY_ALL policy produce this problem?
    Any hint is appreciated.
    Peter
    Edited by: pkeller on 23.10.2008 17:08

    To answer the question about the forwarding of messages from one queue to another myself: As mentioned at http://forums.bea.com/thread.jspa?threadID=400000611, the forwarding for queues does only work if all queue consumers are attached to the same queue. This means that our setup is OK.
    But the main question is still unanswered: why do the number of active JMS connections increase? I forgot to mention that
    - all messages arrive at the clients and that no exceptions are visible in the log
    - if you kill the client, the connections are still visible in the Weblogic console!?
    Please help as this problem is very urgent.
    Peter
    Edited by: pkeller on 24.10.2008 09:06
    Edited by: pkeller on 24.10.2008 09:10

  • How to get the number of records of a streaming result set

    Hi guys.
    So if it wasn't a streaming result set, I would have done this:
    {noformat}myResultSet<code class="jive-code jive-java">.last();
    {color:navy}*int*{color} numResults = </code>myResultSet<code class="jive-code jive-java">.getRow();
    </code>myResultSet<code class="jive-code jive-java">.beforeFirst();
    </code>{noformat}
    but being a streaming result set, beforeFirst() throws an exception...
    So how do you get the number of records in that result set? I wanna avoid an extra count(*) query, so I would appreciate other solutions than that.

    JoachimSauer wrote:
    vanwil wrote:
    you see, for now I just use a count(*) query to get the number of records, but that's adding a lot of extra waiting time...Iterating over the result twice will surely be slower then doing the count(*).great! so what I got now is actually the fastest way there is... awesome...
    If you get an exception, then you surely have a stack trace. That should tell you what happens, or at least where.com.mysql.jdbc.MysqlIO.checkForOutstandingStreamingData(MysqlIO.java:2066)
    Why do you need to know the number of elements beforehand, anyway?I need to know the number of elements because the incoming data goes into a table. Now of course, I could use ArrayList<String[]> or something, but wouldn't that require more memory resources than Object[][] ?
    No one can tell you that, at least not without more information (say, the stack trace for example).Here's the exception message:
    java.sql.SQLException: Streaming result set com.mysql.jdbc.RowDataDynamic@10c0ef2 is still active. Only one streaming result set may be open and in use per-connection. Ensure that you have called .close() on  any active result sets before attempting more queries.

  • How to get the number of community members from outside the community

    Hi everyone.
    I need to know if there is any way to get the number of community members from outside the community, I mean, not using the "What's happening" webpart. I want to build up a page with a Webpart that summarize my three most visited communities indicating
    number of members, three last messages in the newsfeed, and number of posts in blog, wikis, document libraries, etc.
    Do I need statistics to get this kind of information? Should I use Sharepoint Object model instead?
    Here is an example of what I need:
    - Community name
    - Number of members
    - Community activity (messages, docs uploaded to library, etc)
    - Number of posts in calendar, blog, wiki that belongs to community
    Thank you all!

    Hi Thuan.
    Thanks for your answer but it does not help me because these communities are Sharepoint Communities not external sites so I need to get that information using SP object model and BCS in this case is useless.
    EDIT
    I found the solution using the search objects but I was only able to get members, discussions and replies
    using (ClientContext clientContext = new ClientContext("URL_OF_ENTERPRISE_SEARCH_CENTER"))
    KeywordQuery keywordQuery = new KeywordQuery(clientContext);
    keywordQuery.QueryText = "The_Name_of_the_Community WebTemplate:COMMUNITY";
    SearchExecutor searchExecutor = new SearchExecutor(clientContext);
    ClientResult<ResultTableCollection> results = searchExecutor.ExecuteQuery(keywordQuery);
    clientContext.ExecuteQuery();
    System.Collections.Generic.IDictionary<string, object> ret = null;
    foreach (System.Collections.Generic.Dictionary<string, object> resultRow in results.Value[0].ResultRows)
    Console.WriteLine("{0}: {1} ({2})", resultRow["CommunityMembersCount"], resultRow["CommunityTopicsCount"], resultRow["CommunitiyRepliesCount"]);
    This is a Console Application.
    I hope someone helps

  • Check the number of active users of oc4j in EBS

    Hi,
    I often see a recommndation of sizing jvm's to 1 per 100 active users. How can I find the number of active users currently using a jvm in EBS. We have 4 apps servers and 1 of apps servers also runs OBIEE with it's own jvm.
    I can find out from a unix command prompt counting establish connections to the port but I like to know if there's a better way to find the number of active users using the jvm's
    Thanks
    Mike

    Hi,
    To find the number of active user session on each of the application servers from a unix command line. I would find the port that Apache was listening on eg 8100. The use the following command on each of the apps servers
    netstat -an | grep 8100 | grep -i est | wc -l
    This gives a rough idea of how many active connections are established to the apps server. But I would really like to find how many users are actively using o4cj.
    If you are using forms in socket mode again, you can grep on the forms listening port number to find how many active forms users are connected.
    I can also see how many active connections are in the oc4j established to the database using lsof. Find the process id for oacore jvm.
    lsof -p PID
    But I'm sure there's a better and more accurate way of find active users of o4cj, specifically oacore.
    Thanks
    Mike

  • How to get the number of rows in a ResultSet

    Hello,
    I'm an intern and I'm trying to get the number of rows from result set in oracle using rs.last() and rs.beforeFirst() methods
    but I got an error. Could Below is my sample code:
    import java.sql.*;
    public class SarueckConnect {
    public static void main(String[] args) {
    Connection con = null;
    Statement stmt = null;
    ResultSet re = null;
    String[] ParamArray;
    ParamArray = new String[24];
    //Properties logon;
    try {
    Class.forName("oracle.jdbc.driver.OracleDriver"); //Loading the Oracle Driver.
    con = DriverManager.getConnection
    ("jdbc:oracle:thin:@258.8.159.215:1521:test_DB","data","data"); //making the connection DB.
    stmt = con.createStatement ();// Sending a query string to the database
    //stmt.executeUpdate("UPDATE test_table set steuk = 6 WHERE steuk = 5");
    ResultSet rs = stmt.executeQuery("SELECT mandt,kokrs,werks,arbpl,aufnr,vornr,ile01,"+
    "lsa01,ism01,ile02,lsa02,ism02,ile03,lsa03,ism03,ile04,lsa04,ism04,steuk,matnr,budat,"+
    "kostl,pernr,rueckid FROM test_table where steuk =6");
    //Print the result out.
    rs.last(); //This is the line which gives an error.
    int rows = rs.getRow();
    rs.beforeFirst();// I presume this is wrong to.
    ParamArray = new String[24*rows];
    int counter=0;
    while (rs.next()) {
    for (int i = 1; i <= 24; i++){
    ParamArray[i-1+(counter*24)] = rs.getString(i);
    System.out.print(rs.getString(i) + '\t');
    System.out.println();
    counter++;
    } catch(Exception e) {
    e.printStackTrace();
    } finally {
    try
    if(stmt != null) stmt.close();
    if(con != null) con.close();
    } catch (Exception exception) {
    exception.printStackTrace();
    TryBapi sap = new TryBapi(ParamArray);
    }When I run the code I do have the following ERROR Message:
    java.sql.SQLException: Invalid operation for forward only resultset : last
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
    at oracle.jdbc.driver.BaseResultSet.last(BaseResultSet.java:91)
    at SarueckConnect.main(SarueckConnect.java:28)Please could any body Help me out here to figure out how to correct this?
    Any Help would be highly apprecited.

    make your result set scrollable...Not such a good idea. With Oracle, the JDBC driver will read and cache all the ResultSet in memory (with other DBMSs/drivers the behavior will probably be different, but you will still have some unnecessary overhead).
    You can do the caching yourself if you think it's worth it. If the piece of code you posted is why you need this for, then use a List or Vector and you won't need to know the size upfront.
    Alin,
    The jTDS Project.

  • How can I get the number of computers that a specific user had add to domain?

    Greetings
    In Win Srv 2K8 I know how to increase\decrease the total number of computers that any user can add to domain.
    (http://support.microsoft.com/kb/243327/en-us)
    but there is any way to get the number of computer accounts that a user had add?
    thank you in advance

    Hi,
    Regarding your request, maybe we could use the 'ms-DS-CreatorSID' attribute to verify the computer number that a specific has joined to the domain. Please understand that for a
    computer account created by domain users, the account has 'ms-DS-CreatorSID' attribute to indicate the creator user. When a user adds a computer to the domain, a process enumerates the 'ms-DS-CreatorSID' attribute on every computer account in the domain and
    calculates if the sum exceeds the current quota for that user.
    The 'ms-DS-CreatorSID' and 'ms-DS-MachineAccountQuota' with default value 10 are also available in Windows Server 2008 AD DS.
    Note: The 'ms-DS-CreatorSID' attribute will be unset in the computer account that is pre-created in Active Directory Users and Computers MMC or joined by domain administrators.
    Auditing on the computers container should work for collecting information of joining computer into the domain.
    For details, please refer to the following similar thread.
    How to find computers joined by an user (ms-ds-creatorsid) using powershell
    http://social.technet.microsoft.com/Forums/windowsserver/en-US/68db87d8-0890-4d23-af9f-4693ccc1074d/how-to-find-computers-joined-by-an-user-msdscreatorsid-using-powershell?forum=winserverpowershell
    Regards,
    Andy Qi
    Andy Qi
    TechNet Community Support

  • Getting the number of rows returned from ResultSet

    Hi,
    Does anyone know a method to get the number of rows returned with a query using the Resultset class?
    Thanks.

    Hi 281080,
    If your database and JDBC driver support it, in order to use the solution that da-alexj has suggested, you need to create a 'scrollable' "ResultSet" -- the javadoc for method "createStatement()" (in class "java.sql.Connection") has more details.
    However, I have found with Oracle 8.1.7.4 database and Oracle (thin) JDBC driver, that part of their implementation of the "last()" method (in class "java.sql.ResultSet") is to actually iterate through the entire "ResultSet" in order to reach the last row. If your "ResultSet" is very large (I tested it with a 100,000 row "ResultSet"), this will take a long time.
    Just wanted to make you aware of that.
    Of-course, this may be irrelevant to you since I didn't see any mention in your post of what database and JDBC driver you are using.
    Hope this has helped you, anyway.
    Good Luck,
    Avi.

  • I bought Photoshop Elements 12 (box - CD) and threw away the box. I thought the serial number would be on the disc sleeve, but it was not. Now I can´t register the product. Is there something I can do to get the number/code to activate Photoshop Elements?

    I bought Photoshop Elements 12 (box - CD) and threw away the box. I thought the serial number would be on the disc sleeve, but it was not. Now I can´t register the product. Is there something I can do to get the number/code to activate Photoshop Elements? Thank you.

    My guess is that you won't be able to do much if you threw away the serial number before using it.  The serial number will not have been externally visible on the box though... doing that would make it available for use by anyone who sees the box in any store.
    To locate the serial number:
    http://helpx.adobe.com/x-productkb/global/find-serial-number.html
    If you remain unable to locate the serial number you might need to head back to wherever you purchased the product to confirm whether or not you might have thrown out the serial number or if it could even possibly have never been provided.
    Beyond that you need to resolve serial number issues with ASdobe Support directly.  Here is a link for chat:
    Serial number and activation chat support (non-CC)
    http://helpx.adobe.com/x-productkb/global/service1.html ( http://adobe.ly/1aYjbSC )

Maybe you are looking for