Simon, why do I get an OrdImage.setProperties() exception ORA-22288

Hi Simon;
I've debugged a problem with the ImageExample to the point where I'm convinced one cannot call setProperties indirectly as the example code shows. SetProperties can only be called during a load - for example imgObj.LoadFromFile
The example from OTN sample code shows a sample method:
public void setPropertiesExample(OracleConnection con)
try
int index = 0;
Statement s = con.createStatement();
OracleResultSet rs =
(OracleResultSet)s.executeQuery("select * from ordimagetab where id = 5 for update");
while(rs.next())
index = rs.getInt(1);
OrdImage imgObj = (OrdImage) rs.getCustomDatum(2, OrdImage.getFactory());
imgObj.setProperties();
System.out.println("set Properties called");
if(imgObj.checkProperties())
System.out.println("checkProperties called");
System.out.println("setProperties successful");
System.out.println("checkProperties successful");
System.out.println("successful");
else
System.out.println("checkProperties called");
System.out.println("setProperties not successful");
System.out.println("checkProperties successful");
OraclePreparedStatement stmt1 =
(OraclePreparedStatement) con.prepareCall("update ordimagetab set image = ? where id = " + index);
stmt1.setCustomDatum(1,imgObj);
stmt1.execute();
stmt1.close() ;
rs.close();
s.close();
catch(Exception e)
System.out.println("exception raised " + e);
}No matter how many times I set this example or create something similar I get this error when I do something like:
ImageExample ie = new ImageExample();
con = ie.connect();
ie.setPropertiesExample(con);
exception raised java.sql.SQLException: ORA-22288: file or LOB operation FILEOPEN failed
No such file or directory
ORA-06512: at "ORDSYS.ORDIMG_PKG", line 418
ORA-06512: at "ORDSYS.ORDIMAGE", line 25
ORA-06512: at line 2
I noticed the only way to avoid this problem is to load the image immediately prior to the setproperties call...like:
OrdImage imgObj = (OrdImage) rs.getCustomDatum(2, OrdImage.getFactory());
imgObj.loadDataFromFile("imgdemo.dat");
imgObj.setProperties();
imgObj.getDataInFile("fileexample.dat");Here I get setproperties to work, but I need to change a lot of code to load images in this form...
I am using the constructors provided and the functions you provided some time back - so I do not believe initialization is the issue here. Any ideas what might be wrong here??

Hi Chris,
There are a number of configuration and/or setup problems that can
cause this error. But first, it might be worth describing at a higher
level what is going on here.
By default an interMedia object can store or 'reference' data in one
of 3 ways:
- local: the data is stored locally in the BLOB, the local flag is
set to 1 to indicate this.
- FILE: the source type is set to FILE, which indicates the data is
stored in a directory of which the server is aware and to
which the user/schema has been granted access. The source
location specifies the database server directory name, which
will be upper case unless you created a mixed-case name with
the CREATE DIRECTORY command. The source name specifies the
file name, which is case sensitive on Unix platforms.
- HTTP: the source type is set to HTTP, which indicates the data is
accessed via a web server. The source location is the domain,
port and path and the source name is the item name.
If you instantiate an ORDIMAGE object using something like:
CREATE OR REPLACE DIRECTORY MY_IMAGE_DIR AS 'c:\myphotos';
INSERT INTO MY_IMAGES VALUES
( 1, ORDSYS.ORDIMAGE.INIT( 'FILE', 'MY_IMAGE_DIR', 'photo1.jpg' );then the setProperties method is going to try to open photo1.jpg in
the directory known to the database as MY_IMAGE_DIR. This can fail
with "ORA-22288: file or LOB operation FILEOPEN failed; No such file
or directory" for a number of reasons:
[list]
[*]The directory MY_IMAGE_DIR was never created using CREATE DIRECTORY
[*]The user was not granted read access to MY_IMAGE_DIR
[*]The directory c:\myphotos doesn't exist
[*]The file photo1.jpg doesn't exist in c:\myphotos
[list]
Bear in mind that, essentially, everything is happening at the server,
all the client is doing is causing the setProperties method of the
ORDIMAGE type to be invoked at the server, which reads the image file,
which must be accessible to the server. Assuming everything to be OK,
then the properties will be read from the image and stored in the
object. Of course, since BFILEs are writable, you can't operate on
this image to scale, crop or convert it, for example.
However, in your case, you're hitting one of the problems listed above.
Bear in mind, there are others. For example, although you might be able
to access an image on a shared network drive of some sort, doesn't mean
to say that the database server can do so. This is a common problem on
NT. When logged in as you, you might be able to mount a network drive
and access an image file on that drive. However, that access is being
performed with your NT credentials and access rights. The database server
doesn't have the same credentials and access rights and in all likelyhood
will NOT be able to access the same file. Of course, the same situation
can occur in Unix land with NFS.
Contrast all that with what happens when a client application calls
loadDataFromFile. In this case, the client is reading image data from
a file that is local to the client (which could easily be on a
different machine than the server) and writing that image data
directly into the database as the contents of the BLOB. Therefore,
assuming the image format is recognized, setProperties is going to
succeed because the data is in the database, not external to it.
To sum up: setProperties can be called on an image when stored as a FILE.
However, the database server has to be able to access the file and the
directory in which it is stored. The reason it works when you call
loadDataFromFile is that the data is written to the BLOB in the database,
so the database has access.
Hope that makes sense,
Simon
null

Similar Messages

  • Why do i get a null pointer exception

    import javax.swing.*;
    class Rental
         public static void main (String [] args)
            int custCounter = 0;                              // counts the customers created so far
                Customer[] customers = new Customer[100];          // creates an array of 100 customers
            DomesticAssistant[] assistants = new DomesticAssistant[3];          // creates an array of [3] domestic assistants
            assistants[0] = new DomesticAssistant("Lazy", 20, 100, 90, 300);     // creates the domestic assistant and stores it in the array at position [0]
            assistants[0].setReservedFrom(0, 0, 0);          // sets the reserved from date to zero
            assistants[0].setReservedTo(0, 0, 0);          // sets the reserved to date to zero
            assistants[1] = new DomesticAssistant("Average", 30, 150, 135, 400);     // creates the domestic assistant and stores it in the array at position [1]
            assistants[1].setReservedFrom(0, 0, 0);          // sets the reserved from date to zero
            assistants[1].setReservedTo(0, 0, 0);          // sets the reserved to date to zero
            assistants[2] = new DomesticAssistant("Excellent", 50, 250, 220, 750);     // creates the domestic assistant and stores it in the array at position [2]
            assistants[2].setReservedFrom(0, 0, 0);          // sets the reserved from date to zero
            assistants[2].setReservedTo(0, 0, 0);          // sets the reserved to date to zero
              String firstChoice = JOptionPane.showInputDialog("MAIN MENU\n--------------------\n\nPlease enter a number based on the following: \n[1] Add New Customer\n[2] Login\n[3] Exit");     // the main menu
            if(firstChoice.equals("1"))          // if the user enteres "1" in the main menu (add a new customer)
                String custName = JOptionPane.showInputDialog(null, "NEW CUSTOMER MENU\n--------------------\n\nName: ");     // asks for name and stores in variable custName
                   String custAddress = JOptionPane.showInputDialog(null, "NEW CUSTOMER MENU\n--------------------\n\nAddress: ");     // asks for sddress and stores in variable custAddress
                String custPostCode = JOptionPane.showInputDialog(null, "NEW CUSTOMER MENU\n--------------------\n\nPost Code: ");          // asks for post code and stores in variable custPostCode
                String custPhoneNo = JOptionPane.showInputDialog(null, "NEW CUSTOMER MENU\n--------------------\n\nTelephone Number: ");     // asks for phone number and stores in variable custPhoneNo
                String custEmail = JOptionPane.showInputDialog(null, "NEW CUSTOMER MENU\n--------------------\n\nEmail: ");          // asks for email and stores in variable custEmail
                String startingBalance = JOptionPane.showInputDialog(null, "NEW CUSTOMER MENU\n--------------------\n\nStarting Credit: ");     // asks for credit to start account with and stores in variable startingBalance
                int sBalance = Integer.parseInt(startingBalance);          // converts startingBalance from a string into an integer
                customers[custCounter] = new Customer(custName, custAddress, custPostCode, custPhoneNo, custEmail, sBalance);     // creates a customer with the variables/details entered above
                JOptionPane.showMessageDialog(null, "NEW CUSTOMER MENU\n--------------------\n\nWelcome" + custName + ".\nYour details were sucessfully added to the system.\nYour ID number is: " + customers[custCounter].getIdNumber() + "\nYour password is: " + customers[custCounter].getPassword());     // greets the new customer as well as giving them their id number and password
                custCounter++;          // increments the customer sounter by 1
            else if(firstChoice.equals("2"))          // if the user enters "2" in the main menu (login)
                String checkIdNo = JOptionPane.showInputDialog(null, "LOGIN\n--------------------\n\nPlease enter your ID Number: ");
                int checkIdNum = Integer.parseInt(checkIdNo);// asks user to enter their id number
                int position = 0;          //variable to store where we are in the array of customers so we know which customer we are dealing with
                for(int i = 0; i < customers.length; i++)          // loops through the array of customers
    ----->      if(customers.getIdNumber() == checkIdNum)          // when the id number entered is found
                             position = i;                              // set the position variable to that customer (the position in the customers array)
    else                                             // if the id number is not found
    JOptionPane.showMessageDialog(null, "LOGIN\n--------------------\n\nThat ID Number does not exist. ");     // tell the user that the id number wasnt found
    System.exit(0);                                                                           // then exit the system
    [\code]
    Can anyone help. when i run the program i get a null pointer exception
    can you tell me why, and possibly tell me how i can search through the array of customers searching for an id number
    am i doing it a way that will work (not the best way) but just so it works
    thanks in advance
    D_H

    Nevertheless, when you get to the loop where your exception occurs, you may have created any number of customers, but probably not 100.
    The loop tries to go through all 100 spaces in the array, and as soon as it gets to a space you haven't assigned a Customer too, you'll get the exception.
    Either make sure the loop doesn't go higher than you cutomercounter - 1 (to compensate for 0-based index of array), or check if the customer[i] == null before you try to call a method on it.
    Does that make sense?
    /D

  • I can't figure out why I'm getting a Null Pointer Exception

    I'm writing a program that calls Bingo numbers. I got that part of the program to work but when I started adding Swing I kept getting a Null Pointer Exception and I don't know how to fix it. The Exception happens on line 15 of class Panel (g = image.getGraphics();). Here is the code for my classes. I'm still not finished with the program and I can't finish it until I know that this issue is resolved.
    package Graphics;
    import java.awt.Graphics;
    import javax.swing.JFrame;
    public class DrawFrame extends JFrame{
         public Panel panel;
         public DrawFrame(int x, int y, String s) {
              super(s);
              this.setBounds(0, 0, x, y);
              this.setResizable(false);
              this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              this.setPreferredSize(getSize());
              panel = this.getPanel();
              this.getContentPane().add(panel);
              panel.init();
              this.setVisible(true);
         public Graphics getGraphicsEnvironment(){
              return panel.getGraphicsEnvironment();
         Panel getPanel(){
              return new Panel();
    package Graphics;
    import javax.swing.JPanel;
    import java.awt.Color;
    import java.awt.Graphics;
    import java.awt.Image;
    public class Panel extends JPanel{
         Graphics g;
         Image image;
         public void init() {
              image = this.createImage(this.getWidth(), this.getHeight());
              g = image.getGraphics();
              g.setColor(Color.white);
              g.fillRect(0, 0, this.getWidth(), this.getHeight());
         Graphics getGraphicsEnvironment() {
              return g;
         public void paint(Graphics graph) {
              if (graph == null)
                   return;
              if (image == null) {
                   return;
              graph.drawImage(image, 0, 0, this);
    package Graphics;
    import java.awt.event.KeyAdapter;
    import java.awt.event.KeyEvent;
    public class Keys extends KeyAdapter{
    public int keyPressed; //creates a variable keyPressed that stores an integer
    public void keyPressed(KeyEvent e) { //creates a KeyEvent from a KeyListner
              keyPressed = e.getKeyCode(); //gets the key from the keyboard
    import java.awt.Color;
    import java.awt.Font;
    import java.awt.Graphics;
    import java.awt.event.KeyEvent;
    import Graphics.*;
    public class Bingo {
         static Ball balls[][] = new Ball[5][15]; //creates a 2D 5 by 15 array
         public static void main(String[] args) {
              DrawFrame frame = new DrawFrame(1500, 500, "Welcome to the automated Bingo Caller."); //creates instance of DrawFrame that is 1000 pixels wide and 500 pixels high
              Graphics g = frame.getGraphicsEnvironment(); //calls the getGraphicsEnvironment method in the DrawFrame class
              Keys key = new Keys(); //creates instance of the Key class
              frame.addKeyListener(key); //adds a KeyListener called Key
              for (int x = 0; x < 5; x++) { //fills rows
                   for (int y = 0; y < 15; y++) { //fills columns
                        balls[x][y] = new Ball(x, y+1); //fills array
              frame.pack(); //adjusts the size of the frame so everything fits
              g.setColor(Color.black); //sets the font color to black
              g.setFont(new Font("MonoSpace", Font.PLAIN, 20)); //creates new font
              for(int y=0;y<balls.length;y++){ //draws all possible balls
                   g.drawString(balls[y][0].s, 0, y*100); //draws numbers
                   for(int x=0;x<balls[y].length;x++){ //draws all possible balls
                        g.drawString(balls[y][x].toString(), (x+1)*100, y*100); //draws letters
              do {
                   frame.repaint(); //repaints the balls when one is called
                   int x, y; //sets variables x and y as integers
                   boolean exit; //sets a boolean to the exit variable
                   do {
                        exit = false; //exit is set to false
                        x = (int)(Math.random() * 5); //picks a random number between 0 and 4 and stores it as x
                        y = (int)(Math.random() * 15); //picks a random number between 0 and 14 stores it as y
                        if (!balls[x][y].called) { //checks to see if a value is called
                             exit = true; //changes exit to true if it wasn't called
                             balls[x][y].called = true; //sets called in the Ball class to true if it wasn't called
                             System.out.println(balls[x][y]); //prints value
                   } while (!exit); //if exit is false, returns to top of loop
                   int count = 0; //sets a count for the number of balls called
                   for(int z=0;z<balls.length;z++){ //looks at balls
                        g.setColor(Color.black); //displays in black
                        g.drawString(balls[z][0].s, 0, z*100); //draws balls as a string
                        for(int a=0;a<balls[z].length;a++){ //looks at all balls
                             if (balls[z][a].called){ //if a ball is called
                                  g.setColor(Color.red); //change color to red
                                  count++; //increments count
                             } else {
                                  g.setColor(Color.black); //if it isn't called stay black
                             g.drawString(balls[z][a].toString(), (a+1)*100, y*100); //draws balls as string
                   do {
                        if (key.keyPressed == KeyEvent.VK_R||count==5*15) { //if R is pressed or count = 5*15
                             count=5*15; //changes count to 5*15
                             for(int z=0;z<balls.length;z++){ //recreates rows
                                  g.setColor(Color.black); //sets color to black
                                  g.drawString(balls[z][0].s, 0, z*100); //redraws rows
                                  for(int a=0;a<balls[z].length;a++){ //recreates columns
                                       balls[z][a] = new Ball(z, a+1); //fills array
                                       g.drawString(balls[z][a].toString(), (a+1)*100, z*100); //redraws columns
                   } while (key.keyPressed!=KeyEvent.VK_ENTER || count == 5 * 15); //determines if the key was pressed or counter is 5*15s
              } while (key.keyPressed == KeyEvent.VK_ENTER);
    public class Ball {
         String s; //initiates s that can store data type String
         int i; //initiates i that can store data as type integer
         boolean called = false; //initiates called as a boolean value and sets it to false
         public Ball(int x, int y) {
              i = (x * 15) + y; //stores number as i to be passed to be printed
              switch (x) { //based on x value chooses letter
              case 0:
                   s = "B";
                   break;
              case 1:
                   s = "I";
                   break;
              case 2:
                   s = "N";
                   break;
              case 3:
                   s = "G";
                   break;
              case 4:
                   s = "O";
         public String toString() { //overrides toString method, converts answer to String
              return s + " " + i; //returns to class bingo s and i
    }

    The javadoc of createImage() states that "The return value may be null if the component is not displayable."
    Not sure, but it may be that you need to call init() after this.setVisible(true).

  • Why i'm getting out of memory exception when trying to comparing two Lists ?

    First this is a paint event.
    In the paint event i draw a rectangle and then adding the pixels coordinates inside the rectangle area to a List:
    private void pictureBox1_Paint(object sender, PaintEventArgs e)
    if (cloudPoints != null)
    if (DrawIt)
    e.Graphics.DrawRectangle(pen, rect);
    pointsAffected = cloudPoints.Where(pt => rect.Contains(pt));
    CloudEnteringAlert.pointtocolorinrectangle = pointsAffected.ToList();//cloudPoints;
    Bitmap bmp = new Bitmap(pictureBox1.Width, pictureBox1.Height, PixelFormat.Format32bppArgb);
    CloudEnteringAlert.Paint(e.Graphics, 1, 200, bmp);
    I'm drawing a rectangle thats the rect(Rectangle) variable and assigning to pointsAffected List only the pixels coordinates that are inside the rect area ! cloudPoints contain all the pixels coordinates all over the image !!! but pointsAffected contain only
    the coordinates of pixels inside the rectangle area.
    Then the mouse up event:
    private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
    StreamWriter w = new StreamWriter(@"c:\diff\diff.txt");
    pixelscoordinatesinrectangle = new List<Point>();
    pixelscoordinatesinrectangle = pointsAffected.ToList();
    DrawIt = false;
    for (int i = 0; i < trackBar1FileInfo.Length; i++)
    DrawIt = true;
    trackBar1.Value = i;
    LoadPictureAt(trackBar1.Value, sender);
    pictureBox1.Load(trackBar1FileInfo[i].FullName);
    ConvertedBmp = ConvertTo24(trackBar1FileInfo[trackBar1.Value].FullName);
    ConvertedBmp.Save(ConvertedBmpDir + "\\ConvertedBmp.bmp");
    mymem = ToStream(ConvertedBmp, ImageFormat.Bmp);
    backTexture = TextureLoader.FromStream(D3Ddev, mymem);
    scannedCloudsTexture = new Texture(D3Ddev, 512, 512, 1, Usage.Dynamic, Format.A8R8G8B8, Pool.Default);
    Button1Code();
    pictureBox1.Refresh();
    newpixelscoordinates = new List<Point>();
    newpixelscoordinates = pointsAffected.ToList();
    if (pixelscoordinatesinrectangle != null && newpixelscoordinates != null)
    IEnumerable<Point> differenceQuery =
    pixelscoordinatesinrectangle.Except(newpixelscoordinates);
    // Execute the query.
    foreach (Point s in differenceQuery)
    w.WriteLine("The following points are not the same" + s);
    else
    am1 = pixelscoordinatesinrectangle.Count;
    am2 = newpixelscoordinates.Count;
    //MessageBox.Show(pixelscoordinatesinrectangle.Count.ToString());
    w.Close();
    Once i draw the rectangle when finish drawing it i'm creating a new List instance and store the pixels in the rectangle area in the pixelscoordinatesinrectangle List.
    Then i loop over trackBar1FileInfo that contains for example 5000 images files names from the hard disk.
    This is the problem part:
    pictureBox1.Refresh();
    newpixelscoordinates = new List<Point>();
    newpixelscoordinates = pointsAffected.ToList();
    if (pixelscoordinatesinrectangle != null && newpixelscoordinates != null)
    IEnumerable<Point> differenceQuery =
    pixelscoordinatesinrectangle.Except(newpixelscoordinates);
    // Execute the query.
    foreach (Point s in differenceQuery)
    w.WriteLine("The following points are not the same" + s);
    else
    am1 = pixelscoordinatesinrectangle.Count;
    am2 = newpixelscoordinates.Count;
    I'm doing refresh for the pictureBox1 so it will go one each image to the paint event and will create a new List pointsAffected will have each time a different pixels coordinates.
    So newpixelscoordinates should be with new pixels coordinates each loop itertion.
    Then i'm comparing both Lists newpixelscoordinates and pixelscoordinatesinrectangle for a different items.
    And write those who are not the same to a text file.
    So i'm getting a very large text file with many pixels coordinates that are not the same in both Lists.
    The problems are:
    1. Does the comparison i'm doing is right ? I want to compare one list index against other listi ndex.
       For example in the List newpixelscoordinates in index 0 if i have x = 233 y = 23 and in the List pixelscoordinatesinrectangle in index 0 there is x = 1 y = 100 then write this as not the same to the text file.
      What i want to do is to check the whole List items against the other List items and if some of the items are not the same write this items to the text file.
    Next itertion new image new Lists with new pixels coordinates do the same comparison.
    The List pixelscoordinatesinrectangle is not changing it's storing the first pixels coordinates when i drawed the rectangle first time. Only the List newpixelscoordinates change each time, Should change each itertion.
    2. The exception i'm getting is on the line:
    newpixelscoordinates = new List<Point>();
    I added this line since i thought maybe i didn't clear it each time but it didn't help.
    Before adding this line the exception was on the line:
    newpixelscoordinates = pointsAffected.ToList();
    The exception is: OutOfMemoryException: Out of memory
    System.OutOfMemoryException was unhandled
    HResult=-2147024882
    Message=Out of memory.
    Source=System.Drawing
    StackTrace:
    at System.Drawing.Graphics.CheckErrorStatus(Int32 status)
    at System.Drawing.Graphics.DrawImage(Image image, Int32 x, Int32 y, Int32 width, Int32 height)
    at System.Drawing.Graphics.DrawImage(Image image, Rectangle rect)
    at System.Windows.Forms.PictureBox.OnPaint(PaintEventArgs pe)
    at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer)
    at System.Windows.Forms.Control.WmPaint(Message& m)
    at System.Windows.Forms.Control.WndProc(Message& m)
    at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
    at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
    at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
    InnerException:

    Hi Chocolade1972,
    >> Does the comparison i'm doing is right ? I want to compare one list index against other listi ndex.
    I think you could use “Object.Equals” and the link below might be useful to you:
    # Object.Equals Method (Object)
    https://msdn.microsoft.com/en-us/library/bsc2ak47(v=vs.110).aspx
    >> OutOfMemoryException: Out of memory
    This error is very common, and when there is not enough memory to continue the execution of a program, it would be thrown.
    It would be helpful if you could provide us a simple code to reproduce your issue.
    Best Regards,
    Edward
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

  • Why do I get an error message after syncing music

    After syncing music to my iPhone an error message appears that says ''Heatwave was not copied to the iPhone ''Simon's iPhone'' because it could not be found''
    in fact the file called Heatwave is copied to my iPhone and it does play on my phone, so why do I get this message ?
    Info
    Heatwave is an MP3 file

    cornman30
    What computer operating system?
    And, where is the music coming from, iTunes? If so, that is a known problem with Premiere Elements (just about any version).
    The answer has been to convert the iTunes music to the wav version in iTunes.
    The following is the iTunes' document how to.
    iTunes: How to convert a song to a different file format - Apple Support
    Any questions, please do not hesitate to ask.
    If other than above, please supply more details to help us help you.
    Thank you.
    ATR

  • Why do i get f4 on field in alv report  ?

    i done general (MM) alv report
    And i display "MATKL" (Material Group) in one of the column.
    I don't know why, but when i stand on the data  , i get f4 option
    , when i asking for f4 i get message, u201CNo input help is availableu201D.
    In the definition, I didnu2019t put the matkl original data element  ,
    I just put char9, i didnu2019t ask/build and double click or
    Event for it.
    so why do i get f4 option in this column  ?
    thanks  .

    Ajay said the correct answer...
    chech this sample code:
    CLEAR  wa_catalog.
      wa_catalog-fieldname = 'BANFN'.
      wa_catalog-ref_table = 'EBAN'.
      APPEND wa_catalog TO catalog.
    Edited by: Sebastian Bustamante on Oct 6, 2008 9:40 PM

  • Why do we get the data from a view to a report.

    hi
    why do we get the data from a view to a report. is it possible to get the data from a view in all the cases?

    hi Jyotssna,
      Suppose you are planning to get the data from multiple tables then you got to specify seveal condtions and make use of joins which results in poor performance in fetching the data . In order to improve the performance we make use of views where the conditions of different tables are defined and the data is fetched accordingly.
    Regards,
    Santosh

  • Why would I get ReferenceError #1065: "Variable title is not defined."

    Well of course it's not defined.  It's a dynamic class, and strict mode compilation is turned off so that I don't have to declare the property to compile it.
    I've created a library item named "Page" with a single TextField instance named "title".
    Page's class is defined in an ActionScript file, and it's assigned to the library item in export for ActionScript.
    Page's ActionScript file defines the class as a "dynamic" class, so I should not be getting this runtime error.  I turned off strict mode compiling, since it seems to be designed to check the presense of property definitions at compile time for dynamic classes like MovieClip.
    public dynamic class Page extends MovieClip
        public function Page()
            super();
            var text:String = title.text; //title can be moused over in the debugger here and shows the correct value, but the flash player throws a runtime error when it tries to access it, but it shouldn't because this is a dynamic class.
    So why am I getting a runtime error for the field "title".  It makes no sense, because if I step to that line in the FlashDevelop debugger and hold the mouse over "title", it shows that it is in fact the instance of the TextField that I'm trying to access.  Yet the player throws an error when I actually try to access it.
    Is it a problem or limitation with the access style (i.e. would it work fine if I accessed it as "this.title" or "this["title"]"?

    Nevermind.  This was apparently a browser caching issue.   The Page base class is defined in the main interface swf, and is externally referenced through its swc in an external "lesson" file that declare a subclass of Page.  It was this custom subclass of Page which was throwing the error (basically the same as the simplified example I wrote for my post, where it simply tried to access "title" as a dynamic property of the Page).  What happened is the browser was caching an old version of the lesson file with the old definition of the class that was not declared as dynamic.  I had received the error before, then updated the class, then I was surprised to see the error persist.  It suddenly dawned on me that the browser was probably caching the old version, so I cleared the cache and it seems to work fine now.
    Actually, it is a problem after all.  I forgot I had updated it to use "this.title" syntax on the page I tested after clearing the cache, but the other pages that try to access title directly as "title" still throw the error.  So it seems to be some sort of quirk in how flash accesses properties of a dynamic class.  If you try to access them direclty, it must do so in a way that requires the property to be defined, but if you access it via "this.title" or this["title"], the it seems to resolve the property value without throwing the error.
    This sucks.  I was really trying to not have to write "this." for every property.  The entire display list is dynamically generated from some custom XML that allows me to call constructors and set complex type-safe properties, and during construction it was copying each item into a Dictionary by name.  This Dictionary was then assigned to the page class as "items", so I was accessing each display object as "item.name".  Then I got the brilliant idea of just making Page and its subclasses "dynamic" so that I could just add the DIctionary values on the Page instance itself.  I thought I would be able to access the dyamic properties just by their name such as "title", but lo and behold, Flash strikes again, and I have to use dot notation anyway.  What do you all think?  Any solutions?

  • Why did I get an email from the fraud dept saying my order is on hold, told to call a number, and then told by dept it's not true?

    I placed an order to upgrade my phone yesterday, and the order went through, I was told the new phone would arrive Thursday. After I got home from work today I saw an email from Verizon that says "Dear Customer:
    Verizon Fraud Prevention Team is currently reviewing the following order on your wireless account. Please call the Verizon Fraud Prevention Team at 888-483-7200 option 3, press 1 to verify this Order."
    I called this number immediately, since I need this phone ASAP, assuming it would just be a recording and I would have to verify an account number or something. But instead, after following the instructions, I was put on hold because I needed to speak to someone in person. After several instances of my call being cut off after being on hold for at least half an hour, I finally got through after three hours and was able to speak to a fraud representative. I gave her my info and told her the problem and she told me I had called the wrong department. Instead of the fraud department, I needed the online order department. She transferred me, and I waited on hold again. When the representative from the online order dept picked up, she first told me if it was a fraud issue I'd need to speak with the fraud dept - who had JUST transferred me to her. After this, she said that my order is not on hold, because it hasn't even been processed yet or had the credit check done. When I asked if this meant I hadn't needed to call at all, she said yes. Is this actually true or is there a chance that there's an issue with my order I don't know about? If there is no issue, these emails really shouldn't be sent out, they're incredibly misleading, and I've wasted a whole lot of time and experienced an incredible amount of anxiety for no reason.

    Hi.  I checked on the order and it says the order is currently being processed and I should check back tomorrow. I'm mostly just concerned because I got an email saying the order was on hold, and I want to make sure it actually does go through and I'm not just waiting for a delivery that's not going to come. I'm still confused as to why I'd get an email saying I had to call the fraud department only to be told I shouldn't have called the fraud department.

  • My iMac locks up constantly in email. I click on one or two emails. Then when I click on another email, I get the spinning wheel and have to relaunch. Why does it get confused and lock up?

    My iMac locks up constantly in email. I click on one or two emails. Then when I click on another email, I get the spinning wheel and have to relaunch. Why does it get confused and lock up? Seems like it is stuck.

    10.6.8 here, MacBook Pro. Comcast. Mail  freeze ups. Occasional warnings to use "Log Out" under the Apple icon.
    Disk Repair run several times. Shows lots of Java  "remote" issues.
    I run Disk Repair several times, shows a lot of Java, "remote" issues.
    Restart don't know if it helps, I do it all the time. What's with quitting Mail but it doesn't quit, and why a separate maneuver to "Log Out".
    i

  • TS1702 "The feature you are trying to use is on a network resource that is unabailable" Why am I getting this message when I try to updaate itunes or quicktime?

    The feature you are trying to use is on a network resource that is unabailable" Why am I getting this message when I try to updaate itunes or quicktime?

    Before trying the update again, use Microsoft's Fix it solution at http://support.microsoft.com/mats/Program_Install_and_Uninstall. Use it to uninstall iTunes and Quicktime. It bypasses this not uncommon problem. When the solution finishes, the selected program will be uninstalled. It can take several minutes and I have seen as much as half an hour.
    After iTunes & Quicktime are uninstalled, try the update again.

  • Why do I get the "iwork discontinued" message when I click on the share feature in pages?

    Why do I get the "iwork discontinued" message when I click on the share feature in pages?

    If you are using an older version of iWorks, the sharing was, I understand discontinued in July 2012.
    New versions of the iWorks suite, Pages etc now have the sharing option, introduced earlier this year.

  • Why do I get a black screen when i click on a PDF in a web page?

    why do I get a black screen when i click on a PDF in a web page? Firefox works as is should.

    Hi,
    From your Safari menu bar click Safari / Preferences then select the Extensions tab. If you have any installed, turn that off, then relaunch Safari. Try a PDF file.
    If it's not Extensions, open a Finder window. Select MacintoshHD in the Sidebar on the left. Now open the Library folder then the Internet Plug-Ins folder. If you see any files such as this:
    AdobePDF Browser or Viewer Plug-in
    Move it to the Trash, relaunch Safari.
    Carolyn :-)

  • Why do I get a warning triangle error alert on my project in the time frame area. And how do I remove it

    Why do I get a yellow triangle looks like warning or alert symbol in my timeframe area. And what do I need to do to delete it?

    What is the "Timeframe" area?
    A clip in an Event, or a whole Event has lost track of it's originals.
    Did you delete anything in an Event that you were using in a Timeilne?

  • Why do I get shadows in the corners of pictures taken on my mini iPad?

    Why do I get shadows in the corners of pictures taken on my mini iPad.  It seems the conditions have to be perfect to get a decent picture.  Why?

    Sounds like vignetting, but you need to ask that on an iPad forum not the iPhoto for Mac one.

Maybe you are looking for

  • 7.3.1 killed wireless printing (Samsung ML-2510)

    OK. It looks like 7.3.1 has killed my wireless printing. If I attempt to print anything it takes several min for anything to print. When it finally does i get this page that says "Internal error - False" I have A Mac Pro, A Mac Book Air, and a mac mi

  • Display blob field  on pdf  with pl_fpdf

    Hi All, I wish I could use some method to output PDF from the PL/SQL. I already have a document (image stored as BLOB). Now, I need to output this image in PDF. I know doing this outside database is easy and advisable. When I use pl_fpdf with image f

  • BUPA_SEND cannot find the Bank Key in GTS

    Hi I have transferred bank master data using t-code /SAPSLL/BANMAS_DIRR3. I can see the bank in GTS. During the transfer the country ISO code was used as the prefix to the Bank Key (USXXXXXX) to make the External number. I then use BUPA_SEND to send

  • In refresh

    i'm trying to update records and when i edit a particular value and click update it gets updated in the database but the changes are not visible in the current screen.instead if i click the update button again i can see the change.can anybody help me

  • TS3899 Can't send emails out

    Hello, I have recently moved to qatar and though I can receive emails on my iPhone and iPad, I am not able to send any emails. Any suggestions?