Why do we need to be in certian state while doing restore , recovery

This is just for my understanding
To restore control file - Nomount
Control file should not be in use while u restore .. is it all .. there is more to it.
Same with restoring database
Why in mounted state ... any specific reason .
Same with tablespace... what is state you should be in ? and Why ?

Handle:      Sunny-ORACLE
Status Level:      Newbie
Registered:      Feb 15, 2009
Total Posts:      21
Total Questions:      11 (7 unresolved)
Your answers are just a few clicks beyond the URL below.
http://tahiti.oracle.com
Let us know when you have found your answer.

Similar Messages

  • Why do I need parenthises around the print statement

    I have the following code
    class statictest
    System.out.println("at top of class");
    If I have this as is I get a compiler error. But If I put parethises around it as below it works just fine. Why is this. What is it doing ?
    class statictest
    {System.out.println("at top of class");}
    thanks

    By the way, the set of braces you put around your
    print statement define what is call an initialization
    block. This block is executed first when a class is
    load. It is rarely used.
    Be careful! The non-static initializer block is not executed when the class is loaded. It is executed immediately after the constructor call when an object is instantiated.
    Conversely, the static initializer block does exhibit the behavior you describe, however, of executing as soon as the class is loaded.

  • Why do we need 2 JNDI while congifuring DB or OA Adapters

    Hi,
    i have a question why do we need to have 2 JNDI's while configuring DB or OA adapters. I mean first we create a JDBC connection and specify a JNDI , and again in Deployments -> DBadapter/OAadapter-> we go and configure a JNDI with JDBC name .
    Why is it so ?
    - Thanks
    Shirish

    the first one you mentioned is used when creating the jdbc datasource, the jndi is at that moment the identifier which you can use for a lookup of the datasource.
    this jndi identifier you then use in the database adapter so it can lookup the datasource information based on the jndi value
    so the first one physically creates it and in all the other steps you 'use' the jndi lookup for retrieving it's information
    see : http://en.wikipedia.org/wiki/Java_Naming_and_Directory_Interface

  • Why do we need to declare CATALINA_HOME environment variable in Tomacat?

    {color:#ff0000}*Why do we need to set CATALINA_HOME
    environment variable while using TomCat and what happens if we do not
    {color}
    {color:#008000}If anybody has the solution .. please do reply
    {color}
    Thanks &
    Regards, Akshay_L

    SoulTech2012 wrote:
    it makes zero sense because if CATALINA_HOME is not set, then CATALINA_HOME/bin won't resolve at all (unless some form of magic is used)
    # Get standard environment variables
    PRGDIR=`dirname "$PRG"`
    # Only set CATALINA_HOME if not already set
    [ -z "$CATALINA_HOME" ] && CATALINA_HOME=`cd "$PRGDIR/.." ; pwd`rightBy "right", are you being sarcastic or are you saying that code is correct?
    It's a pretty standard technique for setting default variables under *nix, no magic involved. And this particular example was taken from the Tomcat 5.5.25 startup script.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Archiving cds and why do i need id3 tags

    here comes another one of those questions looking at which codec to use to store music.....i also have tag questions.....
    i'm about to (re-)rip my cd collection and looking at some info re codecs and id3 tags
    now.....i believe i understand the benefits of alac (lower file sizes, keeping id3 tags, lossless compression) v wav(no compression)
    however (and for some out there) if we just entertain the fact that wav may have some minute benefit for me depending on my questions and answers given.....and yes i know wav and alac will sound the same to the human ear - i accept that as a given of lossless compression ......
    points i'd like to outline:
    i am looking to rip my cds, firstly and mostly, for an archiving purpose!! purpose numero uno!!
    i could well want to re-create cds with these archived records in the future
    size of files is of no concern to me at all
    i'm using a mac nowadays
    i will convert most of these files, where needed, to use with a portable music player (i'm not bothered with having, say a wav file and then also converting and having an alac file, as crazy as that sounds)
    this is where i ask for info re the benefits of embedded tags that are found in alac:
    are these tags that important?
    where do they come into play in ripping and later converting music?
    are these uses just bells and whistles that have no benefit to my needs?
    if i rip cds to wav (or aiff), say, using itunes, will cd info and track listings be available on the downloading database (eg itunes) to name these wav files?
    if i then ensure these song files are kept under the album's folder, have i just done what tags do? surely not. that is all i have needed in the past.
    this is where i feel i may be really missing what id tags (can) do
    are tags more than just managing song files and where they belong and where they have come from?
    is it just a convenience of not personally managing your song files (as per previous paragraph)?
    (in the past i had ripped cds to mp3 codec. i think i used "cd rip" or something like that on my pc.
    my mp3 files were individually named and sorted and kept under album folders under artist name folders.
    apart form the very odd occasion all track and album info i needed was found on a database that was attached to the ripping software.
    i never had a problem managing/maintaining these files and folders.)
    i welcome some enlightenment on some of my questions above and other info that may be relevant
    and yes, i understand that music will sound the same as a wav file or alac file - but humour me re using wav and tell me why i need id3 tags
    i guess the crux of it is:
    why do i need id3 tags?
    does my managing of my song file in the album folder do what tags do?
    what problems/shortcomings/headaches may i encounter by not having those tags if i use wav as opposed to alac?
    what do i not know about these little buggers?
    what codec is best for my purpose of archiving and re creating of cds (for playing in cd players)
    thanks in advance for your input and any clarity that i may experience through this
    peter t
    excuse my long windedness (i have spent some time editing this entry)

    Crows2012 wrote:
    as mentioned earlier if i just have songs (wav) in album folders, when i import these albums into itunes, do you know if these will come up under AN album with their file names purely using my filename setup (but with no artwork)?
    Yes, iTunes will read the filename, such as "Track 1" or something else and display it. But nothing else. No Album or Artist.
    so the tracks will remain grouped as an album based on their initial folder and the albums and tracks as per file name?
    Crows2012 wrote:
    also, does aiff have limitations (apart from the full size of the file)?
    I'm not sure I understand what you mean. For all practical purposes AIFF and WAV are exactly the same thing. They're just file containers.
    i thought that i had read somewhere that aiff tags could run into some issues with its tags - ie may not always be transferred 100% accurately with certain players (or hardware maybe)
    Crows2012 wrote:
    and how do these codecs work re-creating an album for the purposes of playing in a cd player? - this is a crucial question for the purpose of my archiving/backup of CDs THEMSELVES
    That's actually going to depend on what burning software you use. Once you rip the tracks to whatever file container you choose (WAV/AIFF/ALAC) you'll never really exactly re-create the album. But for archiving purposes all three file containers will do what you want, which is to create a lossless archive. AIFF has the advantage of supporting embedded ID3, which ALAC has the additional advantage of the files also being about half the size of AIFF/WAV files.
    i was thinking that maybe wav was able to recreate an album (in effect duplicate one) if my cd was lost or damaged in the future. i was thinking this IF when ripping to wav everything is unchanged (unless there is other data on the original cd). and maybe only possible with wav. the purpose for this would be to play recreated cds on my cd player
    any idea on this one?
    (i havent looked too thoroughly on this angle but i'll keep googling on this one)
    much appreciate all info thus far
    peter t

  • I want to know that if i want to download facebook on my iphone 4 or any other apps then it ask me put my card details for payment. why is that. if they are free then why do i need to give my card details?please help me anyone.

    I want to know that if i want to download facebook on my iphone 4 or any other apps then it ask me put my card details for payment. why is that. if they are free then why do i need to give my card details?please help me anyone.

    Just select no credit card as outlined here:
    http://support.apple.com/kb/ht2534

  • Why do I need to connect my Ipad mini with my Mac Book Pro via iCloud?

    Why do I need to connect my Ipad mini with my Mac Book Pro via iCloud? I don't have iCloud on my MacBook Pro and only intend to use the mini to check e-mail and use Garage Band and Photo Booth for song writing when traveling . . .

    Thanks Community! I solved the problem. In fact it was not a problem but lack of understanding. These guys at Apple are way ahead in thir thinking. I will try to explain as short as I can.
    In Lion, ihe Prefferences/Display show only two choices: 6-7 steps of resolution and some color tab. No two screens, no two display to overlap, nothing for us to do. "That was the problem"! Everything is automatic.
    When I connected the HDMI cable to the Miniport into a T-bolt slot, the TV screen showed the "spiral galaxy" how Zyriab is calling it. In fact he gave me the best clue. That shows the connection is good. But where is the Mac Book image?
    You have to drag it to the right out of the Mac Book display area, and "voila!" it will continue on the TV screen. The same with the mouse pointer, push it out ofthe Mac Book display area and you see it on the TV sreen. Good image, you can keep the max resolution, etc. The sound is still on the Book's speakers. I have to figure that out.
    Thank everybody, especialy Zyriab, ne was the closest.
    High regards to everybody

  • Keynote and pages are now free, but why do i need to pay for them still when there now free?!?

    keynote and pages are now free, but why do i need to pay for them still when there now free?!?

    Users can obtain the iWorks and iLife applications free, if they purchased a Mac after the beginning of October 2013.
    Older Mac purchases require a paid purchase of these applications.

  • Why do I need to start up Screen Sharing twice to get it to work ?

    I have an Intel Mac Mini connected to my TV, so I started using Screen Sharing from my MacBook Pro to be able to work on it when others were watching TV.
    Both Macs used to have OSX 10.5 Leopard, and everything worked fine.
    Now they both have OSX 10.6 Snow Leopard, and whenever I startup Screen Sharing, the connection-windows asking for my Name & Password comes up properly, but then it hangs... it stays in "Connecting..." for ever (litteraly).
    I'm not able to quit or force-quit the connection-window by then, so it stays in view...
    (Screen Sharing isn't even listed in the force-quit list as a running app)
    but...
    when I just try Screen Sharing again, I get connection immediately and it seems to work flawlessly...
    ...it's just that the connection-window is impossible to quit...
    it stays in view an is really annoying...
    this looks really crappy...
    can anyone tell me why I do need to startup Screen Sharing twice to get it to work ?
    Is this a bug ?
    (If so : please apple fix this a.s.a.p.)
    ...or am I doing something wrong ?
    (if so : what am I doing wrong ? and how can I get rid of this annoying screen ?)
    Thank you for your kind reply.
    Toon.B

    it's October and this really annoying problem still exists !
    the unnamed screensharing-loginwindow keeps "Connecting...", and I'm unable to shut it down...
    ...even after my screen sharing session is over
    ...even force-quitting is impossible (this 'app' just isn't showing up in the force-quit-window...)
    please Apple - fix this ; under 10.5 it was working great !
    Does anyone have any idea how to fix this ?
    (besides restarting my Mac)
    Thanks !
    Toon.B

  • Why do I need to catch this exception?

    Hello all
    This is a question about exception handling. I have to build a diary application that lets you save reminders on particular dates using xml. Just to make it a little tougher, I was not allowed to use the Calendar class. This is the code I wrote:
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    import java.util.*;
    import java.text.*; 
    import javax.xml.parsers.*;
    import org.xml.sax.*;
    import java.io.*;     
    import org.w3c.dom.*;
    import javax.xml.transform.*;
    import javax.xml.transform.dom.*;
    import javax.xml.transform.stream.*;                                                                                                                                                                                                                         
    import static java.lang.Math.*;
    public class CalendarAssignment extends JFrame implements ActionListener
         int MonthLength [] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
         public JButton [] days = new JButton[43];
         private JLabel lbl, reminderlbl;
         private JPanel top, grid, remindercenter, reminderbottom;
         private JFrame reminderframe;
         private JTextField year1, reminderinput, dayno;
         private JComboBox months;
         private Container container;
         private JButton fetch, save, cancel;
         private Document doc;
         private File file;
         private Node node;
         private String year, month, day;
              public static void main( String[] args ) {
                   CalendarAssignment c = new CalendarAssignment( );
                   c.setSize( 400, 300 );
                   c.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
                   c.show( );
              public CalendarAssignment( ) {
                   int CurrentYear, CurrentMonth;
                   String YearString, MonthString, Now;
                   Date today;
                   container = getContentPane( );
                   container.setLayout( new BorderLayout( ) );
                   SimpleDateFormat DateFormatter;
                   DateFormatter = new SimpleDateFormat( "MM.yyyy" );
                   today = new Date( );
                   Now = DateFormatter.format( today );
                   MonthString = Now.substring( 0,2 );
                   YearString = Now.substring( 3,7 );
                   CurrentMonth = Integer.valueOf( MonthString );
                   CurrentYear = Integer.valueOf( YearString );
                   top = new JPanel( );
                        String [] items = { "January", "February", "March", "April", "May", "June",
                                      "July", "August", "September", "October", "November",
                                      "December" };
                        months = new JComboBox( items );
                        months.setEditable( false );
                        months.setSelectedIndex( CurrentMonth - 1 );          
                        year1 = new JTextField( );
                        year1.setText( YearString );
                        year1.setEditable( true );
                        year1.setHorizontalAlignment( year1.CENTER );
                        fetch = new JButton( "Fetch Month" );
                        fetch.addActionListener( this );
                        top.setLayout( new GridLayout( 1, 3, 20, 0 ) );
                        top.add( months );
                        top.add( year1 );
                        top.add( fetch );
                   grid = new JPanel( );
                        grid.setLayout( new GridLayout( 7, 7, 0, 0 ) );
                        String [] week = { "Mon", "Tue", "Wed", "Thur", "Fri", "Sat", "Sun" };
                        for ( int a = 0; a < 7; a ++ ) {
                                  JLabel lbl = new JLabel( week[a], JLabel.CENTER );
                                  grid.add( lbl );
                        for ( int i = 0; i < 42; i ++ ) {
                                  days[i] = new JButton( );
                                  grid.add( days[i] );
                                  days.addActionListener( this );
                        DrawCalendar( CurrentMonth, CurrentYear );
                        container.add( top, BorderLayout.NORTH );
                        container.add( grid, BorderLayout.CENTER );
              private void DrawCalendar( int SelectMonth, int SelectYear ) {
                        int DisplayMonthLength, Buttons;
                        String ButtonID = "";
                        int OffSet = MonthStart( SelectMonth, SelectYear );
                        DisplayMonthLength = MonthLength [SelectMonth - 1];
                        if ( SelectMonth == 2 )
                             DisplayMonthLength += LeapYear( SelectYear );
                        for ( Buttons = 1; Buttons < 43; Buttons ++ ) {
                             if ( ( Buttons <= OffSet ) || ( Buttons > ( DisplayMonthLength + OffSet ) ) ) {
                                  ButtonID = "";
                                  days[Buttons-1].setEnabled( false );
                             else {
                                  ButtonID = Integer.toString( Buttons - OffSet );
                                  days[Buttons-1].setEnabled( true );
                        days[Buttons-1].setLabel( ButtonID );
                        grid.add( days[Buttons-1] );
              private int LeapYear( int year ) {
                        int FourHundred, OneHundred, Fourth;
                        FourHundred = year % 400;
                        OneHundred = year % 100;
                        Fourth = year % 4;
                        if( ( ( FourHundred == 0 ) ) || ( ( OneHundred != 0 ) && ( Fourth == 0 ) ) )
                             return ( 1 );
                        else
                             return ( 0 );
              private int MonthStart( int Month, int Year ) {
                        int OffSet, LastMonths, BeforeOrAfter, Years;
                        int AllDays = 0;
                        int YearDays = 365;
                        int YearMonths = 12;
                        BeforeOrAfter = Year - 2006;
                        Years = abs( BeforeOrAfter );
                        if( BeforeOrAfter != 0 )
                             BeforeOrAfter = BeforeOrAfter / Years;
                        switch( BeforeOrAfter ) {
                             case 1:
                                  for( int a = 2006; a < Year; a ++ ) {
                                       AllDays += YearDays + LeapYear( a );
                                  AllDays += LastMonthsCalc( Month, Year );
                             break;
                             case -1:
                                  for( int a = 2005; a > Year; a -- ) {
                                       AllDays += YearDays + LeapYear( a );
                                  for( LastMonths = YearMonths; LastMonths >= Month; LastMonths -- ) {
                                       AllDays += MonthLength[LastMonths - 1];
                                       if( LastMonths == 2 )
                                            AllDays += LeapYear( Year );
                             break;
                             default:
                                  if( Month > 1 )
                                       AllDays += ( LastMonthsCalc( Month, Year ) );
                        OffSet = AllDays % 7;
                        if( BeforeOrAfter ==( -1 ) )
                             return( 6 - OffSet );
                        else if( OffSet > 0 )
                             return( OffSet - 1 );
                        else
                             return( 6 );
              private int LastMonthsCalc( int Month, int Year ) {
                        int Counter;
                        int days = 0;
                        for( Counter = 1; Counter < Month; Counter ++ ) {
                             days += MonthLength[Counter - 1];
                             if( Counter == 2 )
                                  days += LeapYear( Year );
                        return( days );
              public void CreateReminder( String buttonID, String yearID, String monthID ) {
                        reminderframe = new JFrame( );
                        reminderlbl = new JLabel( );
                        reminderframe.setLayout( new GridLayout( 2, 1, 0, 0 ) );
                        remindercenter = new JPanel( );
                             reminderlbl = new JLabel( "Please type in reminder to be saved for " + buttonID + " " + monthID + " " + yearID + ":", JLabel.CENTER );
                             reminderinput = new JTextField( 30 );
                             reminderinput.setHorizontalAlignment( reminderinput.CENTER );
                             reminderinput.setEditable( true );
                             remindercenter.setLayout( new GridLayout( 2, 1, 0, 0 ) );
                             remindercenter.add( reminderlbl );
                             remindercenter.add( reminderinput );
                        reminderbottom = new JPanel( );
                             save = new JButton( "Save" );
                             save.addActionListener( this );
                             cancel = new JButton( "Cancel" );
                             cancel.addActionListener( this );
                             dayno = new JTextField( buttonID );
                             dayno.setEditable( false );
                             dayno.setEnabled( false );
                             dayno.show( false );
                             reminderbottom.setLayout( new FlowLayout( ) );
                             reminderbottom.add( save );
                             reminderbottom.add( cancel );
                             reminderbottom.add( dayno );
                        reminderframe.setSize( 500, 75 );
                        reminderframe.add( remindercenter );
                        reminderframe.add( reminderbottom );
                        reminderframe.pack( );
                        reminderframe.show( );
              public void SaveReminder( String dayID, String yearID, String monthID ) throws Exception {
                        file = new File( "Diary.xml" );
                        doc = DocumentBuilderFactory.newInstance( ).newDocumentBuilder( ).parse( file.toURL( ).toString( ) );
                        String year = yearID;
                        String month = monthID;
                        String day = dayID;
                        //System.out.println( year );
                        //System.out.println( month );
                        //System.out.println( day );
                        CreateEntry( doc.getDocumentElement( ) );
                        writeXmlFile( );
              public boolean CreateEntry( Node node ) {
                        Node searchNode;
                        searchNode = getYear( node );
                        if( searchNode == null ) {
                             Element newNode = doc.createElement( "Year" );
                             searchNode = node.appendChild( newNode );
                             newNode.setAttribute( "Id", year );
                        node = searchNode;
                        searchNode = getMonth( node );
                        if( searchNode == null ) {
                             Element newNode = doc.createElement( "Month" );
                             searchNode = node.appendChild( newNode );
                             newNode.setAttribute( "Id", month );
                        node = searchNode;
                        searchNode = getDay( node );
                        if( searchNode == null ) {
                             Element newNode = doc.createElement( "Day" );
                             searchNode = node.appendChild( newNode );
                             newNode.setAttribute( "Id", day );
                        node = searchNode;
                        String entry = reminderinput.getText( );
                        Node textNode = doc.createTextNode( entry );
                        node.appendChild( textNode );
                        return true;
              private Node getYear( Node node ) {
                        node = node.getFirstChild( );
                        while( node != null ) {
                             if(node.getNodeName( ).equals( "Year" ) && String.valueOf( node.getAttributes( ).item( 0 ).getNodeValue( ) ) == year )
                                  return node;
                                  node = node.getNextSibling( );                    
                        return null;
              private Node getMonth( Node node ) {
                        node = node.getFirstChild( );
                        while( node != null ) {
                             if( node.getNodeName( ).equals( "Month" ) && String.valueOf( node.getAttributes( ).item( 0 ).getNodeValue( ) ) == month )
                                  return node;
                                  node = node.getNextSibling( );                    
                        return null;
              private Node getDay( Node node ) {
                        node = node.getFirstChild( );
                        while( node != null ) {
                             if( node.getNodeName( ).equals( "Day" ) && String.valueOf( node.getAttributes( ).item( 0 ).getNodeValue( ) ) == day )
                                  return node;
                                  node = node.getNextSibling( );                    
                        return null;
              private void writeXmlFile( ) throws Exception {
                   Source source = new DOMSource( doc );
                        Result result = new StreamResult( file );
                   Transformer xformer = TransformerFactory.newInstance( ).newTransformer( );
                   xformer.setOutputProperty( OutputKeys.INDENT,"yes" );
                   xformer.setOutputProperty( OutputKeys.DOCTYPE_SYSTEM,"Diary.dtd" );
                   xformer.transform( source, result );
              public void actionPerformed( ActionEvent e ) {
                        String IDButton = e.getActionCommand( );
                        String IDYear = year1.getText( );
                        Object IDMonthObj = months.getSelectedItem( );
                        if( e.getSource( ) == fetch ) {
                             String YearText = year1.getText( );
                             int YearNumber = Integer.valueOf( YearText );
                             int MonthsIndex = months.getSelectedIndex( ) + 1;
                             DrawCalendar( MonthsIndex, YearNumber );
                        else if( e.getSource( ) == cancel ) {
                             reminderframe.hide( );
                        else if( e.getSource( ) == save ) {
                             String IDDay = dayno.getText( );
                             String IDMonth = String.valueOf( IDMonthObj );
                             SaveReminder( IDDay, IDYear, IDMonth );
                        else {
                             String IDMonth = String.valueOf( IDMonthObj );
                             Toolkit.getDefaultToolkit( ).beep( );
                             int n = JOptionPane.showConfirmDialog( null, "Set reminder on this date?", "Question", JOptionPane.YES_NO_OPTION );
                             if( n == JOptionPane.YES_OPTION ) {
                                  CreateReminder( IDButton, IDYear, IDMonth );
    If you compile it, you will realise that I get an error about exception handling. My lecturer gave me an example code of how to do the same thing without using a GUI:
    import javax.xml.parsers.*;
    import org.xml.sax.*;
    import java.io.*;
    import java.util.*;
    import org.w3c.dom.*;
    import javax.xml.transform.*;
    import javax.xml.transform.dom.*;
    import javax.xml.transform.stream.*;
    public class CallDOM
         Document doc;
         File file;
         Scanner input;
         int year, month, day;
         String currentYear, currentMonth;
         public static void main(String args[]) throws Exception
              CallDOM cd=new CallDOM();          
         CallDOM() throws Exception
              file=new File("Diary.xml");
              //create DOM from file
              doc = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(file.toURL().toString());
              input=new Scanner(System.in);
              System.out.println("1) Create entry");
              System.out.println("2) Read entry");
              System.out.println("3) Show Diary");
              System.out.println("4) Quit");
              int choice=input.nextInt();
              while(choice!=4)
                   switch(choice)
                        case 1: GetDate();CreateEntry(doc.getDocumentElement());break;
                        case 2: GetDate();ReadEntry(doc.getDocumentElement());break;
                        case 3: ShowDiary(doc.getDocumentElement());
                   System.out.println("1) Create entry");
                   System.out.println("2) Read entry");
                   System.out.println("3) Show Diary");
                   System.out.println("4) Quit");
                   choice=input.nextInt();
              writeXmlFile();
         public void GetDate()
              System.out.println("Enter date (dd mm yyyy)");
              day=input.nextInt();
              month=input.nextInt();
              year=input.nextInt();
         public boolean ReadEntry(Node node)
              node = getYear(node);
              if(node==null) return false;
              node = getMonth(node);
              if(node==null) return false;
              node = getDay(node);
              if(node==null) return false;
              node = node.getFirstChild();
              while(node!=null)
                   System.out.println(node.getNodeValue().trim());     
                   node=node.getNextSibling();
              return true;               
         public boolean CreateEntry(Node node)
              Node searchNode;
              searchNode = getYear(node);
              if(searchNode==null)
                   Element newNode = doc.createElement("Year");
                   searchNode = node.appendChild(newNode);
                   newNode.setAttribute("Id",Integer.toString(year));
              node = searchNode;
              searchNode = getMonth(node);
              if(searchNode==null)
                   Element newNode = doc.createElement("Month");
                   searchNode = node.appendChild(newNode);
                   newNode.setAttribute("Id",Integer.toString(month));
              node = searchNode;
              searchNode = getDay(node);
              if(searchNode==null)
                   Element newNode = doc.createElement("Day");
                   searchNode = node.appendChild(newNode);
                   newNode.setAttribute("Id",Integer.toString(day));
              node = searchNode;
              System.out.println("Enter Text");
              String entry=input.next();
              entry+=input.nextLine();
              Node textNode = doc.createTextNode(entry);
              node.appendChild(textNode);
              return true;               
         public void ShowDiary(Node node)
              Stack<Node> stack=new Stack<Node>();
              Node child;
              stack.push(node);
              while(!stack.empty())
                   node = stack.pop();
                   if(ProcessNode(node))
                        child = node.getLastChild();
                        while(child!=null)
                             stack.push(child);
                             child = child.getPreviousSibling();
         private boolean ProcessNode(Node node)
              if(node.getNodeName().equals("Year"))
                   currentYear=node.getAttributes().item(0).getNodeValue();
              if(node.getNodeName().equals("Month"))
                   currentMonth=node.getAttributes().item(0).getNodeValue();
              if(node.getNodeName().equals("Day"))
                   System.out.print(node.getAttributes().item(0).getNodeValue()+"/"+
                                            currentMonth+"/"+currentYear+": ");
                   node=node.getFirstChild();
                   while(node!=null)
                        System.out.println(node.getNodeValue().trim());
                        node=node.getNextSibling();
                   return false;
              return true;               
         private Node getYear(Node node)
              node=node.getFirstChild();
              while(node!=null)
                   if(node.getNodeName().equals("Year")
                        && Integer.valueOf(node.getAttributes().item(0).getNodeValue())==year)
                             return node;
                   node = node.getNextSibling();                    
              return null;
         private Node getMonth(Node node)
              node=node.getFirstChild();
              while(node!=null)
                   if(node.getNodeName().equals("Month")
                        && Integer.valueOf(node.getAttributes().item(0).getNodeValue())==month)
                        return node;
                   node = node.getNextSibling();                    
              return null;
         private Node getDay(Node node)
              node=node.getFirstChild();
              while(node!=null)
                   if(node.getNodeName().equals("Day")
                        && Integer.valueOf(node.getAttributes().item(0).getNodeValue())==day)
                        return node;
                   node = node.getNextSibling();                    
              return null;
         private void writeXmlFile() throws Exception
            Source source = new DOMSource(doc);
            Result result = new StreamResult(file);
            Transformer xformer = TransformerFactory.newInstance().newTransformer();
            xformer.setOutputProperty(OutputKeys.INDENT,"yes");
            xformer.setOutputProperty(OutputKeys.DOCTYPE_SYSTEM,"Diary.dtd");
            xformer.transform(source, result);
    }My question is, why does the exceptions in the example code not need to be caught? And why do I have to catch the exceptions in my code? Several exceptions are thrown in the example code, but there is no catch statement.
    Thanks for any advice!!

    Since your question didn't come with any relevant details, and since you have huge steaming piles of irrelevant code, all I can give is a general answer to "Why do I need to catch this exception?"
    [url http://java.sun.com/docs/books/tutorial/essential/exceptions/index.html]Exception tutorial at http://java.sun.com/docs/books/tutorial/essential/exceptions/index.html
    Here's a quick overview of exceptions:
    The base class for all exceptions is Throwable. Java provides Exception and Error that extend Throwable. RuntimeException (and many others) extend Exception.
    RuntimeException and its descendants, and Error and its descendants, are called unchecked exceptions. Everything else is a checked exception.
    If your method, or any method it calls, can throw a checked exception, then your method must either catch that exception, or declare that your method throws that exception. This way, when I call your method, I know at compile time what can possibly go wrong and I can decide whether to handle it or just bubble it up to my caller. Catching a given exception also catches all that exception's descendants. Declaring that you throw a given exception means that you might throw that exception or any of its descendants.
    Unchecked exceptions (RuntimeException, Error, and their descendants) are not subject to those restrictions. Any method can throw any unchecked exception at any time without declaring it. This is because unchecked exceptions are either the sign of a coding error (RuntimeException), which is totally preventable and should be fixed rather than handled by the code that encounters it, or a problem in the VM, which in general can not be predicted or handled.

  • Why do I need to use MOLGA?

    I know that this is a very basic question, but I have been asked why do we need to have a new MOLGA for every country; what I know of is:
    1.     Is the standard method of supporting multi-country (Global) HCM.  MOLGA is central to the SAP HCM solution.
    2.     The correct screens are shown in PA30 to maintain the personnel data in the correct formats for social security or equivalent number, form of address, addresses, bank details and so on.
    3.     The correct infotypes can be made available by MOLGA, where there are particular pieces of information required on a country by country basis u2013 therefore reducing the risk of non compliance
    4.     Correct ESS screens are available
    5.     Payroll available by country.  For example the payroll program is run per country using the MOLGA PC00_Mxx_calc, where xx is the country code, therefore for GB it is PC00_M08_calc.
    But apparently this is not a compelling enough reason - can anyone help with more good reasons?

    Hi Marina
    hope you are doing good.
    Globalized firms need Integrated systems with Independent County Legal, Labor, Taxation ,Currency , Language requirements.
    So a Global ERP System will help to achieve this without compromising the local requirements.
    I shared my experience , hope it sound sane.
    Regards
    Rohit.S

  • What am I doing wrong with the isNew() method?  and why do I need the other methods?

    I have coded an include jsp like this.
              <%@page language="Java"%>
              <%@page import="javax.servlet.http.HttpSession"%>
              <%!
              String iContextPath;
              String iCommonPath;
              String iImagesPath;
              %>
              <%
              iContextPath = request.getContextPath();
              iCommonPath = iContextPath + "/common";
              iImagesPath = iCommonPath + "/images";
              System.err.println(" here ");
              HttpSession thisSession = request.getSession( false );
              if( thisSession.isNew() ){
              System.err.println("isnew");
              response.sendRedirect( iContextPath + "/common/login.jsp" );
              %>
              Now I also have a redirect.jsp in the root of an application that contains
              this.
              <html>
              <body>
              <%
              System.err.println("Redirecting at this time from the root");
              response.sendRedirect( request.getContextPath() + "/secureArea/");
              %>
              </body>
              </html>
              And I have a logout.java servlet that looks like this.
              package com.pch.epics;
              import java.io.IOException;
              import javax.servlet.ServletException;
              import javax.servlet.http.HttpServlet;
              import javax.servlet.http.HttpServletRequest;
              import javax.servlet.http.HttpServletResponse;
              import weblogic.servlet.security.ServletAuthentication;
              public class Logout extends HttpServlet{
              private static final String CONTENT_TYPE = "text/html";
              //Initialize global variables
              public void init() throws ServletException{
              //Process the HTTP Get request
              public void doGet( HttpServletRequest request, HttpServletResponse
              response ) throws ServletException, IOException{
              String username = "";
              if( request.getUserPrincipal() == null ){
              username = "Unknown";
              } else {
              username = request.getUserPrincipal().getName();
              System.err.println( "ePics logging out '" + username + "'" );
              request.getSession( false ).invalidate();
              ServletAuthentication.logout( request );
              ServletAuthentication.invalidateAll( request );
              ServletAuthentication.killCookie( request );
              response.sendRedirect( request.getContextPath() );
              //Process the HTTP Post request
              public void doPost( HttpServletRequest request, HttpServletResponse
              response ) throws ServletException, IOException{
              doGet( request, response );
              //Clean up resources
              public void destroy(){
              First of all, why won't the isNew() report a new session in the server log?
              EVERY request coming in says it's an old request (ie it's not new). The
              J2EE Applications and BEA WebLogic Server book from BEA says this should
              work.
              My second question is why do I need to do those three lines from
              ServletAuthentication to logout a user? Ok, maybe I'm from the MS world,
              but that seems excessive, especially since I've already done a
              session.invalidate() right before it, but the bea docs say I'm required to
              do all four!
              

    When you invalidate a session. You invalidate the session of the web
              application that your jsp/servlet is part of. It is possible to have more
              than one web application on WLS and have them share a authentication info.
              While these applications share authentication they do not share their
              sessions so because of that calling session invalidate does not kill all the
              sessions. ServletAuthentication is needed to kill all the sessions and do a
              complete logout from WLS.
              "Flip" <[remove][email protected]> wrote in message
              news:[email protected]...
              > I have coded an include jsp like this.
              >
              > <%@page language="Java"%>
              > <%@page import="javax.servlet.http.HttpSession"%>
              > <%!
              > String iContextPath;
              > String iCommonPath;
              > String iImagesPath;
              > %>
              > <%
              > iContextPath = request.getContextPath();
              > iCommonPath = iContextPath + "/common";
              > iImagesPath = iCommonPath + "/images";
              >
              > System.err.println(" here ");
              > HttpSession thisSession = request.getSession( false );
              > if( thisSession.isNew() ){
              > System.err.println("isnew");
              > response.sendRedirect( iContextPath + "/common/login.jsp" );
              > }
              >
              > %>
              >
              > Now I also have a redirect.jsp in the root of an application that contains
              > this.
              > <html>
              > <body>
              > <%
              > System.err.println("Redirecting at this time from the root");
              > response.sendRedirect( request.getContextPath() + "/secureArea/");
              > %>
              > </body>
              > </html>
              >
              > And I have a logout.java servlet that looks like this.
              > package com.pch.epics;
              >
              > import java.io.IOException;
              > import javax.servlet.ServletException;
              > import javax.servlet.http.HttpServlet;
              > import javax.servlet.http.HttpServletRequest;
              > import javax.servlet.http.HttpServletResponse;
              > import weblogic.servlet.security.ServletAuthentication;
              >
              > public class Logout extends HttpServlet{
              > private static final String CONTENT_TYPE = "text/html";
              > //Initialize global variables
              > public void init() throws ServletException{
              > }
              >
              > //Process the HTTP Get request
              > public void doGet( HttpServletRequest request, HttpServletResponse
              > response ) throws ServletException, IOException{
              > String username = "";
              > if( request.getUserPrincipal() == null ){
              > username = "Unknown";
              > } else {
              > username = request.getUserPrincipal().getName();
              > }
              > System.err.println( "ePics logging out '" + username + "'" );
              > request.getSession( false ).invalidate();
              > ServletAuthentication.logout( request );
              > ServletAuthentication.invalidateAll( request );
              > ServletAuthentication.killCookie( request );
              > response.sendRedirect( request.getContextPath() );
              > }
              >
              > //Process the HTTP Post request
              > public void doPost( HttpServletRequest request, HttpServletResponse
              > response ) throws ServletException, IOException{
              > doGet( request, response );
              > }
              >
              > //Clean up resources
              > public void destroy(){
              > }
              > }
              >
              > First of all, why won't the isNew() report a new session in the server
              log?
              > EVERY request coming in says it's an old request (ie it's not new). The
              > J2EE Applications and BEA WebLogic Server book from BEA says this should
              > work.
              >
              > My second question is why do I need to do those three lines from
              > ServletAuthentication to logout a user? Ok, maybe I'm from the MS world,
              > but that seems excessive, especially since I've already done a
              > session.invalidate() right before it, but the bea docs say I'm required to
              > do all four!
              >
              >
              >
              

  • HT201250 What is Airport Utility and why do I need to access this in order to backup my iMac using Time Machine...PLEASE??

    What is Airport Utility and why do I need to access Airport witeless devices in order to backup my iMac using Time Machine...HELP!!! PLEASE??

    AirPort Utility is required to configure an Apple AirPort Base Station or Time Capsule.
    Time Machine can use a Time Capsule or a locally connected volume. You only need to use AirPort Utility if you are using a Time Capsule.

  • What are smart mailboxes and why do i need both smart and "normal" ones?

    What are smart mailboxes and why do I need both smart and "normal" mailboxes?

    Hi Kingoftypos,
    Thanks for that clarification. So, now it appears that the ultimate purpose of a Smart Mailbox is to point to all emails that meet the criteria in a single place, so if they are spread among several mailboxes, you will be able to see them all together. Here is an article from Apple that describes it:
    A Smart Mailbox displays in one location messages that are stored in other mailboxes, so you don’t have to move messages between mailboxes. The messages displayed by a Smart Mailbox are based on criteria you define, and are automatically updated to include new messages that match your criteria. For example, you might create a Smart Mailbox that displays all messages found in all mailboxes from a specific sender.
    If you change a message in a Smart Mailbox, such as marking the message as read or unread, or moving or deleting the message, the change is reflected in the mailbox where the message is actually stored.
    So, adam, I would think that, if you had mail going to a lot of different places, and wanted to be able to see a particular set of those in a single place, you would use a smart mailbox. Maybe use the rules to direct your mail to different places to start with, but a smart mailbox to bring a set of common ones all together into a single smart mailbox?
    Maybe you have Rules move your Amazon mail to an Amazon folder and your Apple mail to an Apple folder, but then you have a Smart Mailbox that contains any mail that has the word "Receipt" in the Subject line?
    Just a thought....
    Cheers,
    GB

  • What is 'Growl' and why do I need it?

    My system keeps telling me to install GROWL.
    What is it and why do I need it?
    Harold

    Growl is a third party utiltiy for manipulating parts of the OS and displaying "notifications". It sounds like you once had it installed. To remove go here...
    http://growl.info/documentation/growl-package-removal.php
    EDIT: It's not your system telling you, it's a Growl notification.
    -mj
    Message was edited by: macjack

Maybe you are looking for

  • IDVD will not burn disc after QT update

    IDVd used to work just fine. I did software update and updated Quicktime to version 7. I found that my Quicktime Pro key for QT 6 would not work with QT 7. I called Apple support and they told me how to revert back to QT 6. I followed their steps and

  • Can't decrypt binary file with PBE

    Hi, I'm writing an simple file transfer application using UDP that encrypts the data before sending it with PBEWithMD5AndDES. Text files are encrypted and decrypted fine, but binary files such as a JPG/EXE/DOC... are messed up and an application can'

  • Connecting to a database in JSP but using connection in bean

    I have a bean which connects to a database which is as follows: package MyPackage; import java.sql.*; public class DataSourceBean{         public DataSourceBean(){      public void setDriver(String driver) throws ClassNotFoundException {           Cl

  • I have AI CS6 but do not see the option to Package a file. I do not see under File the option for Package

    I have AI CS6 but do not see the option to Package a file. I do not see under File the option for Package

  • Event handle in a subvi

    Hello I have a Problem. I want to stop a while-loop by pushing a boolean button in the front panel of a VI that is "above" the other. Here are two very simple VI´s. the VI Schleife is the Subvi of the other one. Can anybody complete the two vi´s so t