Question about scoping finally blocks

Hello All,
I have a piece of code here that has been tricky for me to do a finally block on and it suddenly occured to me that I have maybe been going about exceptions the wrong way. So generally with this type of situation I'll just declare the variable somewhere else above the try and when i do that the scope makes me able to finally block it. Here I can't do that because the declaration actually requires it to have an initial value and it throws it's own exception as a filereader. Sorry about the newb question, but what's the proper way to block out the exceptions and finally block for this code snippet?
Thanks in advance!
Josh
public static void setParameters(File fileName)
          try
               File fileForProcessing=new File(fileName.getAbsolutePath());
               //wrap the file in a filereader and buffered reader for maximum processing
               FileReader theReader=new FileReader(fileForProcessing);
               BufferedReader bufferedReader=new BufferedReader(theReader);
               //fill in data into the tempquestion variable to be populated
               //Set the question and answer texts back to default
               questionText="";
               answerText="";
               //Define the question variable as a Stringbuffer so new data can be appended to it
               StringBuffer endQuestion=new StringBuffer();
               String tempQuestion="";
               //Define new file with the absolutepath and the filename for use in parsing out question/answer data
               tempQuestion=bufferedReader.readLine();
               //while there are more lines append the stringbuffer with the new data to complete the question buffer
               while(tempQuestion!=null)
                    endQuestion.append(tempQuestion);
                    tempQuestion=bufferedReader.readLine();
               //Set the answer to the stringbuffer after converting to string
               answerText=endQuestion.toString();
               //code to take the filename and replace _ with a space and put that in the question text
               char theSpace=' ';
               char theUnderline='_';
               questionText=(fileName.getName()).replace(theUnderline, theSpace);
          catch(FileNotFoundException exception)
               logger.log(Level.WARNING,"The File was Not Found\n"+exception.getMessage()+"\n"+exception.getStackTrace(),exception);
          catch(IOException exception)
               logger.log(Level.SEVERE,exception.getMessage()+"\n"+exception.getStackTrace(),exception);
          finally
               try
               theReader.close();
               catch(Exception e)
     }

Here I can't do that
because the declaration actually requires it tohave
an initial value No, it doesn't.Yes it does. But that value can be and should be
null.I suspect it would be more accurate to say that dereferencing the variable in the finally block requires definite assignment. The declaration itself doesn't require it at all and in fact assignment could be deferred. However, just assigning null in the declaration is still probably the best idea.
FileReader theReader = null;
try {
    // yadda yadda
} finally {
   if (theReader != null) {
       theReader.close();
}

Similar Messages

  • About the finally block of the try catch.

    I know that finally block contains the code that will be executed in any condition of the try catch.
    However, I think it is unneccessary, since the stack after the try catch stack will be executed any way.
    Any one can help?
    for example
    try{
    System.in.read();
    catch(Exception e){}
    finally
    { System.out.println("does this matter?");}and
    try{
    System.in.read();
    catch(Exception e){}
    System.out.println("does this matter?");

    However, I think it is unneccessary, since the stackafter the try catch
    stack will be executed any way.That does assume that you catch and handle the error
    appropriately.
    Of course this is valid as well, and demonstrates
    when you would WANT a finally clause.
    Connection con = null;
    Statement stmt = null;
    try{
    con  = Database.getConnection();
    stmt = con.createStatement("Select * from dual");
    // maybe something throws an exception here?
    finally{
    if (stmt != null){
    stmt.close();
    if (con != null){
    con.close();
    The finally block here might throw a null pointer exception itself use
    null!=stmt null!=stmt

  • Question about web browser block

    "To help protect your security, your web browser has blocked this website from displaying non-secure content."  I get this message when I try to download my VISA statement which is a pdf file -- at least it requires Adobe to read and download.
    I've tried everything I can think of, but nothing works.  Tried disabling my security programs, turning off pop-up blocker, adding the web-site address to the "trusted sites" list, etc, etc.  PC Cleaners says there's a problem with recent Adobe updates.
    Anyone have any ideas about this?  I'm not the computer expert in our family, but my husband is unavailable while he recuperates from surgery.

    I tried saving the link to the pdf -- when I try, I only save the link back to the web-page.  when I right click on the blank page, there's no way to save it as a pdf file (the "Save Target As" command doesn't work)
    Windows 7 Home (Premium, I think)
    Internet Explorer 10

  • Question  about Abstract,Final Class

    when we are using final keyword along with class definition .we are making that class final, means we can’t extend that class. The same thing happens when we make our constructors private. From usability perspective both are same ? or is there any difference?
    Secondly accounting to java syntax a class can be either final or abstract and not both .Then why language specification doesn't impose any restriction on making abstract classes constructor private. We can create an Abstract class with private Constructor (Basically utility class with all methods are static) ,to make this class Singleton .This situation is equal to abstract final class ?
    Thanks,
    Paul.

    EJP wrote:
    when we are using final keyword along with class definition .we are making that class final, means we can’t extend that class. The same thing happens when we make our constructors private.No it doesn't.
    Secondly accounting to java syntax a class can be either final or abstract and not both.Correct.
    Then why language specification doesn't impose any restriction on making abstract classes constructor private.Why should it? That proposition doesn't follow from your previous sentence.I think OP is asking about this case
    public abstract class WTF {
      private WTF() {}
      private WTF(...) {}
    }where the class is abstract and all the c'tors are final. It's an abstract class that cannot be extended, much like a final abstract class would be if it were allowed. So, since purpose of abstract classes is to be extended, the OP seems to be asking, "Why can we, in this fashion, create an abstract class that cannot be extended?"
    I don't know the answer to that, but I would guess that, while final is an explicit syntactical element for the purpose of making a class non-extensible, in the all-private-c'tors case, the non-extensibility is simply a side effect, and probably enough of a corner case that it wasn't worth the effort to explicitly forbid it in the spec.
    I also think it's something not worth thinking much about. It was certainly not a key point of some grand design.

  • Question about muti-line block

    Hello,
    I have a multi-row block in a form and I want to know If it's possible to limite the user to don't create a new line when he click on a empty one. I got a button to do the job of adding a new line.
    Also, it is possible to avoid the loose of a line if the user insert a new line and after this operation (without inserting any data), click on the line just ahead, the last line is no longer there...
    It gave me some problems with my validation on the key-down and mouse-click validation...
    Thanx in advance!

    I have a little problem nom,
    I try this solution and it works only for the first time before you click on the button who add a new line, after that, the user can click on a empty row to make a new one... I guess we have to reset the INSERT_ALLOWED at FALSE after the user insert the data of a new line but I try in a different kind of trigger that rely to the creation of a new records, and it seems to don't work...

  • NOOB question about outputting final edit

    I'd used FCE for several years, and am in the midst of switching over.
    I've gone through 2/3 of Mr. Wolsky's book and have probably 4-5 completed projects with FCP X. However, there have been some FCP X updates since the book was written.
    I will be filming a concert for a friend, and have learned how to create and edit a multi-cam clip.
    My friend wants a recording of the complete concert, and in addition to the complete concert, he also wants individual songs from the concert separated from the complete show as "stand alone" files.  He wants to be able to upload these "stand alone" song videos to his own website, so I was going to deliver the edited files of the complete concert, and files of the individual, edited songs on a external hard drive. 
    I'm using consumer-level cameras (Sony CX 700, Sony PJ710, Sony HC9, iPhone) recording at 1080.
    My question is, what settings/options should use to share the finished video so that he can upload them (from his PC) at the highest quality?
    Thanks in advance for any assistance.
    Gary

    Gary Markovich wrote:
    …  It there some kind of generic HiDef QuickTime format that is somewhat "universal" to both platforms?
    I'm delivering my son's weekly game-reports to the soccer-moms & -dads on various platforms - incl. Xbox/PS3 as media-players. 'My' universal format is 720p as h264.mp4.
    so, my workflow is:
    • exporting a master-file (for future use, the 'raws' get dumped after a year), which is actually 720p - not fullHD, for two reasons: a) I hadn't the recording equip until now, b) some device stumble with higher bit-rates 1080p makes neccessary
    • open the file in MpegStreamclip, go straight to save-as, and in the drop-down I choose mp4 - this 're-wraps' the file into a mp4 media-wrapper without lossy re-encoding
    ==> the resulting mp4 is fully compatible on all platforms I know of.-
    note:
    I'm still not fully aware of the various 'new' export options since vers06 of FCPX … esp. the 'package' option, which allows multiple exports within one click, is tempting, although I assume, my brave ol' MacMini will start choking on so much encoding
    a friend of mine owning an i7 iMac blows me away when hitting Export - actual hardware makes a difference
    mov asks for Quicktime-for-Windows on PCs - which some Windows users are hesitant to install.
    proRes is a MacOS-proprietary format .... and is a lil' 'bloated' for exchange.
    so, h264 is universal (since YouTube), mp4 is 'more universal' than mov

  • Few questions about apex + epg and cookie blocked by IE6

    Hi,
    I would like to ask a few questions about apex and epg.
    I have already installed and configured apex 3.2 on oracle 10g (on my localhost - computer name 'chen_rong', ip address -192.168.88.175 ), and enable anonymous access xdb http server.
    now,
    1. I can access 'http://chen_rong' , 'http://localhost' , 'http://192.168.88.175' without input username / password for realm 'XDB' in IE6;
    2. I can access 'http://localhost/apex/apex_admin' , 'http://192.168.88.175/apex/apex_admin' , and I can be redirected into apex administation page after input admin/<my apex admin password> for realm 'APEX' in IE6;
    3. I can access 'http://chen_rong/apex/apex_admin' in IE6, but after input admin/password , I can not be redirected into administation page, because the cookie was blocked by IE6.
    then, the first question is :
    Q1: What is the difference among 'http://chen_rong' , 'http://localhost' , 'http://192.168.88.175' ? I have already include site 'chen_rong' into my trusted stes! why the cookie was blocked by IE6. I have already tried firefox and google browser, both of them were ok for 'chen_rong', no cookie blocked from site 'chen_rong'!
    and,
    1. I have tried to use the script in attachment to test http authentication and also want to catch the cookie by utl_http .
    2. please review the script for me.
    3. I did:
    SQL> exec show_url('http://localhost/apex/apex_admin/','ADMIN','Passw0rd');
    HTTP response status code: 401
    HTTP response reason phrase: Unauthorized
    Please supplied the required Basic authentication username/password for realm XDB for the Web page.
    Web page http://localhost/apex/apex_admin/ is protected.
    MS-Author-Via: DAV
    DAV: 1,2,<http://www.oracle.com/xdb/webdav/props>
    Server: Oracle XML DB/Oracle Database
    WWW-Authenticate: Basic realm="XDB"
    Date: Tue, 04 Aug 2009 02:25:15 GMT
    Content-Type: text/html; charset=GBK
    Content-Length: 147
    ======================================
    PL/SQL procedure successfully completed
    4. I also did :
    SQL> exec show_url('http://localhost/apex/apex_admin/','ANONYMOUS','ANONYMOUS');
    HTTP response status code: 500
    HTTP response reason phrase: Internal Server Error
    Check if the Web site is up.
    PL/SQL procedure successfully completed
    SQL> exec show_url('http://localhost/apex/apex_admin/','SYSTEM','apexsite');
    HTTP response status code: 401
    HTTP response reason phrase: Unauthorized
    Please supplied the required Basic authentication username/password for realm APEX for the Web page.
    Web page http://localhost/apex/apex_admin/ is protected.
    Content-Type: text/html
    Content-Length: 147
    WWW-Authenticate: Basic realm="APEX"
    ======================================
    PL/SQL procedure successfully completed
    my second questions is :
    Q2: After I entered into realm 'XDB', I still need went into realm'APEX'. how could I change the script show_url to accomplish these two tasks and successfully get the cookie from site.
    the show_url script is as following:
    CREATE OR REPLACE PROCEDURE show_url
    (url IN VARCHAR2,
    username IN VARCHAR2 DEFAULT NULL,
    password IN VARCHAR2 DEFAULT NULL)
    AS
    req UTL_HTTP.REQ;
    resp UTL_HTTP.RESP;
    name VARCHAR2(256);
    value VARCHAR2(1024);
    data VARCHAR2(255);
    my_scheme VARCHAR2(256);
    my_realm VARCHAR2(256);
    my_proxy BOOLEAN;
    cookies UTL_HTTP.COOKIE_TABLE;
    secure VARCHAR2(1);
    BEGIN
    -- When going through a firewall, pass requests through this host.
    -- Specify sites inside the firewall that don't need the proxy host.
    -- UTL_HTTP.SET_PROXY('proxy.example.com', 'corp.example.com');
    -- Ask UTL_HTTP not to raise an exception for 4xx and 5xx status codes,
    -- rather than just returning the text of the error page.
    UTL_HTTP.SET_RESPONSE_ERROR_CHECK(FALSE);
    -- Begin retrieving this Web page.
    req := UTL_HTTP.BEGIN_REQUEST(url);
    -- Identify yourself.
    -- Some sites serve special pages for particular browsers.
    UTL_HTTP.SET_HEADER(req, 'User-Agent', 'Mozilla/4.0');
    -- Specify user ID and password for pages that require them.
    IF (username IS NOT NULL) THEN
    UTL_HTTP.SET_AUTHENTICATION(req, username, password, 'Basic', false);
    END IF;
    -- Start receiving the HTML text.
    resp := UTL_HTTP.GET_RESPONSE(req);
    -- Show status codes and reason phrase of response.
    DBMS_OUTPUT.PUT_LINE('HTTP response status code: ' || resp.status_code);
    DBMS_OUTPUT.PUT_LINE
    ('HTTP response reason phrase: ' || resp.reason_phrase);
    -- Look for client-side error and report it.
    IF (resp.status_code >= 400) AND (resp.status_code <= 499) THEN
    -- Detect whether page is password protected
    -- and you didn't supply the right authorization.
    IF (resp.status_code = UTL_HTTP.HTTP_UNAUTHORIZED) THEN
    UTL_HTTP.GET_AUTHENTICATION(resp, my_scheme, my_realm, my_proxy);
    IF (my_proxy) THEN
    DBMS_OUTPUT.PUT_LINE('Web proxy server is protected.');
    DBMS_OUTPUT.PUT('Please supply the required ' || my_scheme ||
    ' authentication username/password for realm ' || my_realm ||
    ' for the proxy server.');
    ELSE
    DBMS_OUTPUT.PUT_LINE('Please supplied the required ' || my_scheme ||
    ' authentication username/password for realm ' || my_realm ||
    ' for the Web page.');
    DBMS_OUTPUT.PUT_LINE('Web page ' || url || ' is protected.');
    END IF;
    ELSE
    DBMS_OUTPUT.PUT_LINE('Check the URL.');
    END IF;
    -- UTL_HTTP.END_RESPONSE(resp);
    -- RETURN;
    -- Look for server-side error and report it.
    ELSIF (resp.status_code >= 500) AND (resp.status_code <= 599) THEN
    DBMS_OUTPUT.PUT_LINE('Check if the Web site is up.');
    UTL_HTTP.END_RESPONSE(resp);
    RETURN;
    END IF;
    -- HTTP header lines contain information about cookies, character sets,
    -- and other data that client and server can use to customize each
    -- session.
    FOR i IN 1..UTL_HTTP.GET_HEADER_COUNT(resp) LOOP
    UTL_HTTP.GET_HEADER(resp, i, name, value);
    DBMS_OUTPUT.PUT_LINE(name || ': ' || value);
    END LOOP;
    -- Read lines until none are left and an exception is raised.
    --LOOP
    -- UTL_HTTP.READ_LINE(resp, value);
    -- DBMS_OUTPUT.PUT_LINE(value);
    --END LOOP;
    UTL_HTTP.GET_COOKIES(cookies);
    dbms_output.put_line('======================================');
    FOR i in 1..cookies.count LOOP
    IF (cookies(i).secure) THEN
    secure := 'Y';
    ELSE
    secure := 'N';
    END IF;
    -- INSERT INTO my_cookies
    -- VALUES (my_session_id, cookies(i).name, cookies(i).value,
    -- cookies(i).domain,
    -- cookies(i).expire, cookies(i).path, secure, cookies(i).version);
    dbms_output.put_line('site:'||url);
    dbms_output.put_line('cookies:');
    dbms_output.put_line('name:'||cookies(i).name);
    dbms_output.put_line('value:'||cookies(i).value);
    dbms_output.put_line('domain:'||cookies(i).domain);
    dbms_output.put_line('expire:'||cookies(i).expire);
    dbms_output.put_line('path:'||cookies(i).path);
    dbms_output.put_line('secure:'||secure);
    dbms_output.put_line('version:'||cookies(i).version);
    END LOOP;
    UTL_HTTP.END_RESPONSE(resp);
    EXCEPTION
    WHEN UTL_HTTP.END_OF_BODY THEN
    UTL_HTTP.END_RESPONSE(resp);
    END;
    /

    I use oracle database enterprise edtion 10.2.0.3. I have already figured out the epg on 10.2.0.3 to support apex 3.2.
    And as I described above, the apex site works fine for ip address , and localhost. but the cookie will be blocked by IE6, if I want to access the site by 'http://computername:port/apex/apex_admin'. This problem does not occured in firefox and google browser. Could someone give me answer?

  • Questions about JVC GZ HD7 and Final Cut

    i'm planning to buy a JVC GZ HD7, but i have some questions about it...
    My imac configuration is
    Imac 20" late 2006
    1 Gb Ram
    Leopard 10.5.2
    Final Cut Studio 2
    Ok
    So my questions are:
    1- When shooting the best setting for me is the 1440cbr, or 1920x1080
    is better? i would like to have progressive instead of interlaced
    moviefiles, but for what i have read the JVC HD7 only shoots interlaced...is possible to turn them into progressive after working in final cut?
    2- In Final Cut Pro what are the sequence settings and the video
    settings for a video shoot from this camera?
    I would like to know the best settings possible for me,
    regarding that i would like to edit in real time, no rendering needed,
    and to have the best image quality that this camera can offer...

    FCE is designed to work with DV/HDV files. It cannot work natively with MPEG2 files. You will need something like MPEG Streamclip to convert your files to a format that FCE understands
    Streamclip is free but you need to buy Apple's MPEG Playback Component to make it work

  • Important conceptual question about Application Module, Maximum Pool Size

    Hello everyone,
    We have a critical question about the Application Module default settings (taking the DB connections from a DataSource)
    I know that on the Web it is generally suggested that each request must end with either a commit or rollback when executing PL/SQL blocks "directly" on the DB without the framework BC/ViewObject/Entity service intervention.
    Now, for some reasons, we started to develop our applications with thinking that each Web Session would reference exactly one DB session (opened by any instance taken from the AM pool) for the whole duration of the session, so that the changes made by each Web session to its DB session would never interfere with the changes made by "other" Web Sessions to "other" DB sessions .
    In other words, because of that convincement we often implemented sort of "transactions" that open and close (with either commit or rollback) each DB session not in/after a single HTTP request, but during many HTTP Requests.
    As a concrete example think of this scenario:
    1. the user presses the "Insert" button. An HTTP request is fired. The action listener is executed and ends up with inserting rows in a table via a PL SQL block (not via the ViewObjects API).
    2. no commit or rollback after the above PL/SQL block is done yet.
    3. finally the user presses a "Commit" or "Rollback" button, firing the call to the appropriate AM methos.
    Those three requests consist of what I called "transaction".
    From the documentation it's clear that there is no guarantee that the couple AM istance + DB session is the same during all the requests.
    This means that, during step 2, it's possible that another user might reference the same "pending" AM/DbSession for his needs and "steal" somehow the work done via PL/SQL after step 1. (This happens because sessions taken by the pool are always rolled back by default.)
    Now my question is:
    Suppose we set the "Maximum Pool Size" parameter to very a great number (always inferior to the maximum number of concurrent users):
    Is there any guarantee that all the requests will be isolated in that case?
    I hope the problem is clear.
    Let me know if you want more details.

    Thanks for the answers.
    If I am right, from all your answers about resource avaiability, this means that even supposing the framework is able to always give us the same AM instance back from the AM pool (by following the session-affinity criterias), there is, however, no "connection affinity" with the connections from the DataSource. This means that the "same AM instance" might take the "a new DB connection", if necessary, from the connection pool of the DataSource. If that happens, that could give us the same problems as taking "a new AM instance" (that is, not following session-affinity) from the beginning, since each time an a new connection is taken (either via a new AM instance or via the same AM instance plus a new DB connection), the corresponding DB session is rolle back by default, clearing all the pending transactions we might have performed before with direct PL/SQL calls bypassing the AM services during the life cycle of our application, so that the new HTTP request will have a clean DB session to start to work with.

  • Question about "synchronized" and "wait"

    Hello, everyone!
    I have seen a piece of code like this,
    synchronized (lock)
    //do operation 1
    lock.wait();
    //do operation 2
    I think in the above piece of code, when a thead finished operation 1, it will release the lock and let other threads waiting for the lock have chance to run the same block of code. Am I correct?
    If I am correct, I have a further question, a "synchronized" block means a set of operations that can not be interrupted, but when invoke "wait" method, the thread running in the "synchronized" block will be terminated (interrupted) by release the lock and other threads will have chance to enter the "synchronized" block. In short, the execution inside the "synchronized" block will be interrupted. So, I wonder whether the above piece of code is correct and conforms to the principle of "synchronized". And what is its real use?
    Thanks in advance,
    George

    Thanks, pkwooster buddy!You're welcome
    I just wondered whether "wait inside a synchronized
    block" technology is thread safe. Please look at the
    following example,wait and synchronized are thread safe.
    public class Foo {
    int mVal= 0;
    public final Object mLock = ...;
    public void doIt() {
    synchronized(mLock) {
    mVal = ...;
    mLock.wait();
    if (mVal == ...) {
    // do something
    } else {
    // do something else
    }If we have two threads, T1 and T2, enter the block in
    their respective order, and T1 is woken up first, T2
    may have tampered with T1's execution path because T2
    changed mVal while T1 was asleep. So T2 manipulate
    instance field mVal is a side-effect.when you do the wait() you give up the lock and the other threads get a chance to run. When you exit the wait() you get the new value of the myVal variable which may have been changed. This is exactly what you want. To make that not thread save you could do
    int temp = myVal;
    wait();
    if(temp == ...)in this case the variable temp contains the old vale of myVal.
    >
    I think the most safest way is never wait inside a
    synchronized block, but it is less efficient. What do
    you think about the trick of wait inside a
    synchronized block? I think you are very experienced
    in thread field from your kind reply.
    Thanks in advance,
    Georgewait(), notify() and notifyAll() are very useful. You need them when you want threads to cooperate in an predictable manner. I recommend that you review the section on consumer and producer classes and wait and notify in the Threads Tutorial. It gives good examples. For a practical example of this you could also take a look at my Multithreaded Server Example. It implements a simple chat server that switches String messages. Look especially at the send(), doSend() and popMessage() methods in the StreamConnection class. These allow the receive thread of one user to send messages out using the send thread of another user. If you have questions about that example, please post the questions on that topic.
    Hope this helps.

  • Questions about ActiveX Bridge and SWT

    Hi !
    I found few weeks ago the www.reallyusefulcomputing.com site answering my question about Java & Macro of MSWord. Now I've found two steps that I am not able to overcome.
    First, when I build a simple application and I have internal libraries to use, am I compelled to place the jars in the lib/ext directory of the Java Runtime Directory? I have many difficulties in placing a convenient class-path in the manifest file. Why does the application ignore the manifest string?
    The second problem (and the biggest one) is that I am trying to build an SWT java-bean-application but I have problems during runtime. Is it possible to use this technology for my software or am I compelled to use AWT and SWING?
    I really hope you can help me.
    Thank you in advance.

    hi,
    I have to catch events from excel sheet in my java code..events like some change in value or a click of some user defined button etc.I have written th follwoing code but it does not gives me any event.It simply opens the specified file in the excel in a seperate window.but when i click on the sheet or change some value no event is captured by my code....can ne one pls tell me how to go about it....
    public class EventTry2 {
         private Shell shell;
         private static OleAutomation automation;
         static OleControlSite controlSite;
         protected static final int Activate = 0x00010130;
         protected static final int BeforeDoubleClick = 0x00010601;
         protected static final int BeforRightClick = 0x000105fe;
         protected static final int Calculate = 0x00010117;
         protected static final int Change = 0x00010609;
         protected static final int Deactivate = 0x000105fa;
         protected static final int FollowHyperlink = 0x000105be;
         protected static final int SelectionChange = 0x00010607;
         public void makeVisible()
              Variant[] arguments = new Variant[1];
              arguments[0]=new Variant("true");
              //Visible---true
              automation.setProperty(558,arguments);
              //EnableEvent--true
              boolean b =automation.setProperty(1212,arguments);
            System.out.println(b);
             public Shell open(Display display){
             this.shell=new Shell(display);
              this.shell.setLayout(new FillLayout());
              Menu bar = new Menu(this.shell,SWT.BAR);
              this.shell.setMenuBar(bar);
              OleFrame frame = new OleFrame(shell,SWT.NONE);
            File file= new File("C:\\Book1.xls");
              try{
              controlSite =  new OleControlSite(frame, SWT.NONE, "Excel.Application");
              this.shell.layout();
              boolean a2=true;
              a2=(controlSite.doVerb(OLE.OLEIVERB_SHOW|OLE.OLEIVERB_OPEN|OLE.OLEIVERB_UIACTIVATE|OLE.OLEIVERB_HIDE|OLE.OLEIVERB_PROPERTIES|OLE.OLEIVERB_INPLACEACTIVATE)== OLE.S_OK);
              System.out.println("Activated::\t"+a2);
            }catch(SWTException ex)
                 System.out.println(ex.getMessage());
                 return null;
              automation = new OleAutomation(controlSite);
              //make the application visible
              makeVisible();
              System.out.println("Going to create Event listener");
              OleListener eventListener=new OleListener(){
                   public void handleEvent(OleEvent event){
                        System.out.println("EVENT TYPE==\t"+event.type);
                   switch(event.type){
                   case Activate:{
                        System.out.println("Activate Event");
                   case BeforeDoubleClick:{
                        System.out.println("BeforeDoubleClick Event");
                   case BeforRightClick:{
                        System.out.println("BeforeRightClick Event");
                   case Calculate:{
                        System.out.println("Calculate Event");
                   case Change:{
                        System.out.println("Change Event");
                   case Deactivate:{
                        System.out.println("DeActivate Event");
                   case FollowHyperlink:{
                        System.out.println("Activate Event");
                   case SelectionChange:{
                        System.out.println("Activate Event");
                        Variant[] arguments = event.arguments;
                        for(int i=0;i<arguments.length;i++)
                             System.out.println("@@");
                             arguments.dispose();
              System.out.println("outside");
              OleAutomation sheetAutomation=this.openFile("C:\\Book1.xls");
              controlSite.addEventListener(sheetAutomation,Activate,eventListener);
              controlSite.addEventListener(sheetAutomation,BeforeDoubleClick,eventListener);
              controlSite.addEventListener(sheetAutomation,BeforRightClick,eventListener);
              controlSite.addEventListener(sheetAutomation,Calculate,eventListener);
              controlSite.addEventListener(sheetAutomation,Change,eventListener);
              controlSite.addEventListener(sheetAutomation,Deactivate,eventListener);
              controlSite.addEventListener(sheetAutomation,FollowHyperlink,eventListener);
              controlSite.addEventListener(sheetAutomation,SelectionChange,eventListener);
              shell.open();
              return shell;
         public OleAutomation openFile(String fileName)
              Variant workbooks = automation.getProperty(0x0000023c);//get User Defined Workbooks
              Variant[] arguments = new Variant[1];
              arguments[0]= new Variant(fileName);
              System.out.println("workbooks::\t"+workbooks);
              IDispatch p1=workbooks.getDispatch();
              int[] rgdispid = workbooks.getAutomation().getIDsOfNames(new String[]{"Open"});
              int dispIdMember = rgdispid[0];
              Variant workbook = workbooks.getAutomation().invoke( dispIdMember, arguments );
              System.out.println("Opened the Work Book");
              try {
                   Thread.sleep(500);
              } catch (InterruptedException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
              int id = workbook.getAutomation().getIDsOfNames(new String[]{"ActiveSheet"})[0];
              System.out.println(id);
              Variant sheet = workbook.getAutomation().getProperty( id );
              OleAutomation sheetAutomation=sheet.getAutomation();
              return(sheetAutomation);
         * @param args
         public static void main(String[] args) {
              // TODO Auto-generated method stub
              Display display=new Display();
              Shell shell=(new EventTry2()).open(display);
              while(!shell.isDisposed()){
                   if(!display.readAndDispatch()){
                        display.sleep();
              controlSite.dispose();
              display.dispose();
              System.out.println("-----------------THE END-----------------------------");

  • Catching causal exceptions from finally{} block?

    I have some code that I have not developed, yet from what I can tell throws Exceptions as in the following psuedo-code:
    public void foobar() throws BarException, FooException {
            try {
                  throw new FooException();
            } finally {
                    throw new BarException();
    }This expectedly returns BarException, not FooException. Question is since FooException was thrown, is there any way to get a reference to the original cause?

    This is due to the good-ol' problem of cleaning up
    java.sql.Connection objects to a connection pool in
    the finally block yet wanting to ensure the original
    exception is propagated to the calling method,
    whereas the OP should catch the exception,
    maintain temporary reference, then use it as a
    reference to the other Exception in the finally
    if there's no better way for her to do it.There's a better way to do it. You don't need to keep a temp reference to that exception in your finally block. Finally doesn't need to know anything about the exception. public void foo() {
        try {
            Bar bar = sqlStuff();
        catch (SQLException exc) {
            // This catch block will execute if  SQLException is thrown at *1*
            System.err.println("I got a SQLException!");
    private Bar sqlStuff() throws SQLException, MyException {
        try {
            // *1* do something that might throws SQLException, and maybe something else
            return aBar;
        catch (SomeOtherException exc) {
            throw new MyException(exc);
        finally {
            // close ResultSet, Statement, Connection
            // NO EXCEPTION re-throwing
        // or return aBar here
    } If a SQLException is thrown inside the try block, finally will execute, and then the method will throw that original SQL exception. If SomeOtherException is thrown, it will be caught, a new MyException will be created to wrap it, the finally block will execute, and the MyException will be thrown from the method. If everything goes well, the finally block will execute, and the method will return aBar.
    All this will happen without the finally block touching or knowing about any exception that was thrown before entering it.

  • Just installed iOS6, questions about "iMessage" and other things...

    I've been a satisfied iOS4 user since I bought my iPhone4, but I was forced to install iOS6 tonight in order to download a "free" app. I found a few new icons on the screen along with about 200 percent more "Settings" I'd like to ask some questions about. I'm sure a few of these could be answered by doing a frantic and thorough search through weeks of posts but I'm a little short on time right now.
    First, what exactly is iMessage? Looking at the page for it, I can't see any difference between it and regular text messages. The info page says its to avoid charges, but between my data plan and not being charged for text I don't see where theres any other benefit. The one person I text with the most recently asked me why I had not installed iMessage yet, and didn't have an answer when I asked him why I should. I guess he just wanted to see text replies in blue instead of green.
    In a related bit, flipping through Settings>Messages>Send & Receive I find a "2 addresses" section, with my phone number in there as well as my email under "You can be reached by iMessage at:" and "Start new conversations from:". What good does it do iMessages to have my email address? Does the Mail app handle text as well as email addresses? That seems to be the only explanation, and also very odd to think I'd be trying to text through my Mail app.
    Second, looking through the Settings>Mail I see now that I have an icloud email address as well as the mac.com address I've been desperately hanging on to for the past 10 years, and the me.com address they've been trying to force me into since those came out. (I was happy to see I could delete the me.com address from the phone. I wish I could delete it from the universe.)
    I wasn't even aware there was a such thing as icloud.com addresses. When did this happen? What is it used for?
    Third, under that icloud Setting I see a long list of apps with buttons labeled "Off" under it. What are those for? Under the Mac.com settings I see switches for "Mail" and "Notes", with Mail on and Notes off. The Notes app (which I haven't used since my old iPhone 3) still opens, regardless of this setting.
    Fourth, I now have an item called "Facetime" under my Settings. It is off, but underneath it says "Your phone number and/or email address will be shared with people you call". I understand caller ID normally sends caller number info to the receiver, but why would someone need my email address if I call them?
    Fifth, I now have a "Music" setting, at the bottom of which I see a "Home Sharing" item, which when clicked brings up my AppleID and asks me if I want to Sign Out or Cancel. What is Home Sharing? Its also at the bottom of the "Video" settings.
    Sixth, now I have Twitter and Facebook settings? For what? I don't have accounts with either of those companies. So why have settings, especially since it asks me to create accounts and download apps for those companies right in the Settings?
    Seventh, there is a camera icon on the unlock screen. Touching it causes the screen to bounce up about a quarter inch, almost but not quite revealing something behind it. I should probably just quit asking about this stuff already, but I'll take the bait - what is this now?
    Finally, what is the Notification Center used for?
    If I got a text under iOS4, it would put an alert on the Unlock screen. Scrolling through this huge list of things under the Notification settings I'm really blown away by all the apps set up to yell at me. I can see having an alert for a text message but Game Center? What the heck is that, and why is it set up to hit me with a "Badge App Icon" (whatever that is) when I get alerts from "Everyone". Similarly, the phone is set to alert me to something called a "Photostream Alert"? What is this? Why is there a Phone section for the Notification Center? So they can put a Notice on my screen to tell me the phone is ringing? Holy cow! The phone is set to send me alerts from the "Weather Widget". So if I miss the fact its raining there will be a message on my screen to let me know? Whats next - a buzzer to tell me I'm listening to music?
    There's a lot more, like what would I need Passbook for when I have the actual movie tickets, gate boarding passes, coupons, etc in my hands, but we'll leave that for another time. Many thanks to all who can offer some answers to my questions above.

    Hey Taantumus!
    Here is an article that will provide some guidance on this question:
    Apple ID: Changing your password
    http://support.apple.com/kb/ht5624
    The next time you use an Apple feature or service that uses Apple ID, you'll be asked to sign in with your new Apple ID password.
    Thanks for coming to the Apple Support Communities!
    Regards,
    Braden

  • Questions about Rooting...

    Hi everyone, I’ve some questions about rooting my Xperia Arc S. Hopefully I’ll get helpful answers from you.
    If I root my phone, shall I get regular software official updates from Sony?
    Currently Sony is rolling out the ICS update. After rooting the phone am I able to upgrade my phone to ICS?
    While rooting the phone if any damage is done, can that be recoverable by installing a fresh OS or something?
    Does the rooting process delete all the existing contacts, messages, apps etc?
    Finally can anyone please provide a full proof guide/tutorial for rooting the Xperia Arc S?
    Thanks in advance.
    Solved!
    Go to Solution.

    Do you have an app named Super USer ?
    Were you on 4.0.4 and then rooted your mobile using this method ?
    If yes then your mobile is not rooted for sure
    See how to root 4.0.4 here
    Discussion guidelines.
    Message me or any other moderator to seek help regarding moderation.

  • Questions about editing with io HD or Kona 3 cards

    My production company is switching from Avid to Final Cut Pro. I have a few editing system questions (not ingesting and outputting, just questions about systems for the actual editors - we will have mac pros with either kona 3 or io HD for ingest and outputs)
    1) Our editors work from home so they most likely will be using MacBook Pros - Intel Core 2 Duo 2.6GHz 4GB computers with eSata drives to work on uncompressed HD, will they be able to work more quickly in FCP if they are using the new Mac Pro 8-Core (2 Quad-Core 2.8GHz Intel Xeon) or will the mac book pro's be able to hold their own with editing hour long documentaries, uncompressed HD
    2) Will having an AJA Kona 3 (if we get the editors mac pros) or io HD (for the mac book pros) connected be a significant help to the editor's and their process, will it speed up their work, will it allow them to edit sequences without having to render clips of different formats? Or will they be just as well off without editing with the io HD?
    I'm just trying to get a better understanding of the necessity of the AJA hardware in terms of working with the editors to help them do what they have to do with projects that have been shot on many formats- DVCPro tapes, Aiptek cameras that create QTs and P2 footage.
    Thanks

    1. with the IoHD, laptops become OK working with ProRes and simply eSata setups. Without the Io, they can't view externally on a video monitor (a must in my book). It will not speed up rendering a ton, nor will it save renders of mixed formats. The idea is to get all source footage to ProRes with the Io, and then the Io also lifts the CPU from having to convert ProRes to something you can monitor externally on a video monitor, and record back to any tape format you want... all in real time.
    2. Kona 3's on Towers would run circles around render times on a Laptop... no matter what the codec, but the Kona does not really speed renders up. That's a function of the CPU and just how fast is it. (lots of CPU's at faster speeds will speed up render times).
    I'd recommend you capture to ProRes with Io's or the Kona 3 and don't work in uncompressed HD. You gain nothing doing it quality wise at all. And you only use up a ton of disk space (6 times the size in fact) capturing and working in uncompressed HD, which from your post, you're not shooting anyway. The lovely thing about ProRes is that it's visually lossless, efficient, and speeds up the editing process. Mixing formats can be done, but it's better to go to ProRes for all source footage, and edit that way.
    With either the Kona or the Io, you then can output to uncompressed HD tape... that's what they do for you no matter what codec you've edited in. ProRes is designed to be the codec of choice for all HD projects when you're shooting different formats especially... Get them all singing the same tune in your editing stations, and you'll be a much happier camper. Only reason to buy laptops is portability... otherwise you're much better off with towers and the Kona 3 speed wise.
    Jerry
    Message was edited by: Jerry Hofmann

Maybe you are looking for