Retrieve image and display

Hello frenz..
can someone figure up this problem..? huhu I`m newbie in JAVA programiing try to polish my programming skill...
character a to character z have their own picture.TGA
if i put t picture1.tga - picture36.tga inside a folder?
how to retrieve it ?
example :
character a = picture1.tga (this is a cat image)
character b = picture2.tga (this is a dog image)
when i enter a message : ababa
the image display : cat dog cat dog cat ( those cat and dof is an image)

import java.awt.*;
import java.awt.event.*;
import java.awt.image.BufferedImage;
import java.io.*;
import java.util.Random;
import javax.imageio.ImageIO;
import javax.swing.*;
public class KeepingTrack extends JPanel implements ActionListener {
    BufferedImage[] images;
    String[] letters;
    String[] glyphs = new String[0];
    Random rand = new Random();
    JLabel label;
    KeepingTrack(BufferedImage[] images) {
        this.images = images;
        letters = "abcdefghijklmnop".split("(?<=[\\w])");
    public void actionPerformed(ActionEvent e) {
        int n = 5 + rand.nextInt(letters.length-4);
        glyphs = new String[n];
        String s = "";
        for(int j = 0; j < glyphs.length; j++) {
            glyphs[j] = letters[rand.nextInt(letters.length)];
            s += glyphs[j];
        // The glyphs array has been filled with the randomly
        // selected letters, ie, the "message has been entered".
        // Now, set the text in the label and draw the images
        // associated with the "message", viz, elements of the
        // glyphs array.
        label.setText(s);
        repaint();
    protected void paintComponent(Graphics g) {
        super.paintComponent(g);
        int w = getWidth();
        int pad = 20;
        int n = glyphs.length;
        int cols = (w - 2*pad)/(images[0].getWidth() + pad);
        int rows = n/cols + ((n % cols > 0) ? 1 : 0);
        int x0 = pad;
        int y = pad;
        int x = x0;
        for(int j = 0; j < rows; j++) {
            for(int k = 0; k < cols; k++) {
                int m = j*cols + k;
                if(m > n-1) break;
                int index = getIndexFor(glyphs[m]);
                g.drawImage(images[index], x, y, this);
                x += pad + images[index].getWidth();
            x = x0;
            y += images[0].getHeight() + pad;
    private int getIndexFor(String s) {
        for(int j = 0; j < letters.length; j++) {
            if(s.equals(letters[j]))
                return j;
        return -1;
    private JPanel getTestPanel() {
        JButton button = new JButton("test");
        button.addActionListener(this);
        label = new JLabel();
        label.setHorizontalAlignment(JLabel.CENTER);
        JPanel panel = new JPanel(new GridBagLayout());
        GridBagConstraints gbc = new GridBagConstraints();
        gbc.insets = new Insets(2,15,2,10);
        panel.add(button, gbc);
        gbc.weightx = 1.0;
        gbc.fill = GridBagConstraints.HORIZONTAL;
        panel.add(label, gbc);
        return panel;
    public static void main(String[] args) throws IOException {
        String prefix = "images/geek/geek";
        String[] ids = {
            "-----", "-c---", "-cg--", "-cgh-", "-cght", "-cg-t",
            "-c-h-", "-c-ht", "-c--t", "--g--", "--gh-", "--ght",
            "--g-t", "---h-", "---ht", "----t"
        BufferedImage[] images = new BufferedImage[ids.length];
        for(int j = 0; j < images.length; j++) {
            String path = prefix + ids[j] + ".gif";
            images[j] = ImageIO.read(new File(path));
        KeepingTrack test = new KeepingTrack(images);
        JFrame f = new JFrame();
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.getContentPane().add(test);
        f.getContentPane().add(test.getTestPanel(), "Last");
        f.setSize(600,500);
        f.setLocation(200,50);
        f.setVisible(true);
}images found here:
http://java.sun.com/docs/books/tutorial/uiswing/examples/components/index.html

Similar Messages

  • How to compare two images and display the difference on Front Panel

    HI..
    I have attached two images.
    I want to compare these two images and subtract the differenc from these two images and display the difference(the mouse) on the front panel
    Anyone can help me?
    Really thanks
    Attachments:
    IMG_2117.JPG ‏1677 KB
    IMG_2118.JPG ‏1650 KB

    The missing thing. You have to keep in mind that what you see is not the same as the camera sees.
    So when using IMAQ Substract it gives you the difference of the value of every single pixel!
    In order to find the mouse as only difference you have to manage that every other pixel value stays the same, e.g. with a proper lightening.
    At the other hand you can combine different filters or alogorithms to get the object, e.g. if the object is darker or brighter then everything else in the image you could use a threshold and then use morphologic operations to get the objects size and position.
    Christian

  • How to retrieve data and display in JSP page

    hi,
    i am trying to retrieve data from SQL server 2000 and display in JSP Page. I have already place the codes of the retrieve in the bean file. I wanna ask is that how to display in the JSP page. If possible, can provide example codings for mi to reference?
    Thanks
    Regards,
    shixuan

    HI Tan ,
    I pressume that you wanted to make use of PDK, the code can go like this .
    <b><u>1) JAVA file</u></b>
    import com.sapportals.htmlb.DropdownListBox;
         import com.sapportals.htmlb.InputField;
         import com.sapportals.htmlb.event.Event;
         import com.sapportals.htmlb.page.DynPage;
         import com.sapportals.htmlb.page.PageException;
         import com.sapportals.portal.htmlb.page.JSPDynPage;
         import com.sapportals.portal.htmlb.page.PageProcessorComponent;
         import com.sapportals.portal.prt.component.IPortalComponentRequest;
         import com.sapportals.portal.prt.component.IPortalComponentSession;
         import com.sapportals.portal.prt.component.IPortalComponentContext;
         import java.sql.*;
         public class P_SAP_B_User extends PageProcessorComponent
         * Method          :           getPage()
         * Description      :                         
         * Input Parameters     :     None
         * Returns          :          Object of Class DynPage     
              public DynPage getPage()
                  return new P_SAP_B_UserDynPage();
                }     // end of dynPage()
                public static class P_SAP_B_UserDynPage extends JSPDynPage
                  /* Variable Declaration     */
                   /* Object of bean class P_SAP_B_CreateUser initialised to null */
                       private P_SAP_B_CreateUser createUserBean = null;
                  /* Flags for checking the occurance of Event & Error. */
                  private int iFlag=0;
                  private int iErrFlag=0;
                  /* Variables for storing the information
                          entered by user in each text field */
                  private String sFname;
                  private String sSname;
                  private String sAge;
                  private String sExp;
                  private String sSkill;
                  private String sUnit;
         * Method          :           doInitialization()
         * Description      :                         
         * Input Parameters     :     None
         * Returns          :          None
                  public void doInitialization()
                         IPortalComponentSession componentSession = ((IPortalComponentRequest)getRequest()).getComponentSession();
                         Object o = componentSession.getValue("createUserBean");
                         if(o==null || !(o instanceof P_SAP_B_CreateUser))
                           createUserBean = new P_SAP_B_CreateUser();
                           componentSession.putValue("createUserBean",createUserBean);
                        }     // end of if
                         else
                             createUserBean = (P_SAP_B_CreateUser) o;
                         }     // end of else
                   }//end of doInitialisation()
         * Method          :           onUpdate()
         * Description      :                         
         * Input Parameters     :     object of Event class
         * Returns          :          None
                   public void onUpdate(Event e)throws PageException
                        /*     sets flag to 1 when update button is clicked. */
                        iFlag=1;
         * Method          :           doProcessAfterInput()
         * Description      :                         
         * Input Parameters     :     None
         * Returns          :          None
                  public void doProcessAfterInput() throws PageException
                             InputField ifFirstName = (InputField) getComponentByName("FirstName");
                             InputField ifSecondName = (InputField) getComponentByName("SecondName");
                             InputField ifAge = (InputField) getComponentByName("Age");
                             InputField ifExp = (InputField) getComponentByName("Exp");
                             InputField ifSkill = (InputField) getComponentByName("Skill");
                             DropdownListBox dlbUnit = (DropdownListBox) getComponentByName("Unit");
                             int iAge,iExp;
                             IPortalComponentRequest request = (IPortalComponentRequest) this.getRequest();
                            IPortalComponentContext myContext = request.getComponentContext();
                             P_SAP_B_CreateUser myNameContainer = (P_SAP_B_CreateUser) myContext.getValue("createUserBean");
                             if(ifFirstName != null)
                                  this.sFname = ifFirstName.getValueAsDataType().toString() ;
                             }     // end of if
                             if(ifSecondName!= null)
                                  this.sSname = ifSecondName.getValueAsDataType().toString() ;
                             }      // end of if
                             if(ifAge!= null)
                                  this.sAge = ifAge.getValueAsDataType().toString() ;
                             }     // end of if
                             if(ifExp!= null)
                                  this.sExp = ifExp.getValueAsDataType().toString() ; 
                             }     // end of if                         
                             if(ifSkill != null)
                                  this.sSkill = ifSkill.getValueAsDataType().toString() ;          
                             }     // end of if
                             if(dlbUnit != null)
                                  this.sUnit = dlbUnit.getSelection().toString() ;     ;
                             }      // end of if
                          /* Data Validation */
                             /* try block for numeric Exception */
                             try
                                 /* checking for any field left blank by the user */
                                  if(sFname.equals("") || sSname.equals("") ||  sAge.equals("")|| sExp.equals("") || sSkill.equals(""))
                                        /* set error flag to 1 in case of any field left blank */
                                        iErrFlag=1;
                                  } // end of if
                                  else
                                        /* converting Age and Experience fields (String) to integer */
                                         iAge= Integer.parseInt(sAge);
                                         iExp= Integer.parseInt(sExp);
                                       /* setting the boundaries on the value in Age Field */
                                         if(iAge<0)
                                             /* set error flag to 2 in case of age below 0 */
                                             iErrFlag=2;
                                         }// end of if
                                       /* setting the boundaries on the value in Experience field */
                                          else if(iExp<0 ||(iExp/12)>=iAge)
                                              /* set error flag to 3 in case of experience below 0 or exceeding the age in years */
                                              iErrFlag=3;
                                          }// end of else if
                                          /* In case of no error */
                                          else
                                             /* setting the bean variables */
                                             try
                                                 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
                                                 Connection con = DriverManager.getConnection("jdbc:odbc:Test");
                                                 String query="insert into UserData values(?,?,?,?,?,?)";
                                                 PreparedStatement prestat=con.prepareStatement(query);
                                                 /* setting the values to be inserted into the user table */
                                                 prestat.setString(1,sFname);
                                                 prestat.setString(2,sSname);
                                                 prestat.setString(3,sAge);
                                                 prestat.setString(4,sExp);
                                                 prestat.setString(5,sSkill );
                                                 prestat.setString(6,sUnit);
                                                 prestat.executeUpdate() ;
                                                 prestat.close();
                                                 con.close();
                                                 myNameContainer.setSFname(sFname);
                                                 myNameContainer.setSLname(sSname);
                                                 myNameContainer.setSAge(sAge);
                                                 myNameContainer.setSExp(sExp);
                                                myNameContainer.setSSkill(sSkill);
                                                myNameContainer.setSUnit(sUnit);
                                             } // end of inner try block
                                              catch(Exception sqle)
                                                 myNameContainer.setErrMessage("Update failed ! Please try again." );
                                              } // end of catch corresponding to inner try
                                                           } // end of inner else
                                                      } //end of outer else
                                   } //end of outer try block
                                   catch(Exception e)
                                     /* setting flag to 4 in case of non-numeric age/experience values */
                                     iErrFlag = 4;
                                     /* Displaying error message corresponding to the value of error flag */
                                  switch(iErrFlag)
                                    /* Empty Field */
                                    case 1:myNameContainer.setErrMessage( "Please Fill all the fields");
                                    break;
                                    /* Invalid Value in the age field */
                                    case 2:myNameContainer.setErrMessage( "Enter a valid value in Age field.(Hint : Have you entered Age<0 ?");
                                    break;
                                    /* Invalid Value in the experience field */
                                    case 3:myNameContainer.setErrMessage( "Enter a valid value in Experience field.(Hint : Experince should not be negative or greater than your age in months)");
                                    break;
                                    /* Non-numeric value in the Age/ experience fields */
                                    case 4:myNameContainer.setErrMessage( "Please Enter Numeric Value for Age and Experience");
                                    break;
                                 } // end of switch-case block
              } //end of doProcessAfterInput()
         * Method          :           doProcessBeforeOutput()
         * Description      :                         
         * Input Parameters     :     None
         * Returns          :          None
                  public void doProcessBeforeOutput() throws PageException
                       /* Displays Form for new user creation by default */
                       this.setJspName("P_SAP_B_UserCreationForm.jsp");
                         /* In case of an error display an error message page */
                         if(iErrFlag!=0)
                              setJspName("ErrorPage.jsp");
                         } //end of if
                         /* Displays the user's information as entered in the SQL
                            database after its been uploaded by the user */
                         else if(iFlag==1)
                             setJspName("hello.jsp");      
                          } // end of else if
                  } // end of doProcessBeforeOutput()
              } // end of P_SAP_B_UserDynPage Class
         } // end of P_SAP_B_User class
    * End of File P_SAP_B_User.java
    2) Bean
    package com.sap.usercreation;
    import java.io.Serializable;
    public class P_SAP_B_CreateUser implements Serializable
         private String sFname;
         private String sLname;
         private String sUnit;
         private String sSkill;
         private String sExp;
         private String sAge;
         private String errMessage;
         * @return
         public String getSFname() {
              return sFname;
    * @return
    public String getSLname() {
         return sLname;
    * @param i
    * @param string
    public void setSFname(String string) {
         sFname = string;
    * @param string
    public void setSLname(String string) {
         sLname = string;
    * @return
    public String getSUnit() {
         return sUnit;
    * @param string
    public void setSUnit(String string) {
         sUnit = string;
    * @return
    public String getSSkill() {
         return sSkill;
    public void setSSkill(String string) {
         sSkill = string;
    * @return
    public String getSAge() {
         return sAge;
    * @return
    public String getSExp() {
         return sExp;
    * @param string
    public void setSAge(String string) {
         sAge = string;
    * @param string
    public void setSExp(String string) {
         sExp = string;
    * @return
    public String getErrMessage() {
         return errMessage;
    * @param string
    public void setErrMessage(String string) {
         errMessage = string;
    3) The Jsp file i have already posted.
    See if you copy this code and paste it wont work as i have not given you full code ,But yes this gives you an overview of how things can be done .
    Thanx
    Pankaj

  • Resizing an image and displaying

    hi all,
    i am new to graphics,
    i want to resize the image (say w=300,h=300) before displaying to panel,
    i tried in the following code but no help? is this current way?
    in imagepanel class i am calling *"resize(image,300,300)"*. i don't know is that current way of doing, please help me to solve this problem or give any suggestion.
    import java.awt.Dimension;
    import java.awt.Graphics;
    import java.awt.Graphics2D;
    import java.awt.RenderingHints;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import javax.imageio.ImageIO;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    public class drawImage extends JFrame {
        BufferedImage orignalImage = null;
        public drawImage() {
            try {
                orignalImage = ImageIO.read(new File("C:\\Documents and Settings\\Shafi\\Desktop\\daya\\ballot\\01000361FU-0003V01.jpg"));
            } catch (Exception e) {
                e.printStackTrace();
            imagepanel imp = new imagepanel(orignalImage, 5, 5);
            //imp.resize(imp, 200,200);
            getContentPane().add(imp);
            pack();
            setVisible(true);
            setDefaultCloseOperation(EXIT_ON_CLOSE);
        public static void main(String[] arg) {
            new drawImage();
    class imagepanel extends JPanel {
        private BufferedImage image;
        int x;
        int y;
        public imagepanel(BufferedImage image, int x, int y) {
            super();
            this.image = image;
            this.x = x;
            this.y = y;
            image = resize(image,300,300);
            setPreferredSize(new Dimension(image.getWidth(), image.getHeight()));
       public BufferedImage resize(BufferedImage img, int newW, int newH) { 
            int w = img.getWidth(); 
                int h = img.getHeight(); 
                BufferedImage  dimg = new BufferedImage(newW, newH, img.getType()); 
                Graphics2D g = dimg.createGraphics(); 
                g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); 
                g.drawImage(img, 0, 0, newW, newH, 0, 0, w, h, null); 
                g.dispose(); 
                return dimg; 
        @Override
        protected void paintComponent(Graphics g) {
            super.paintComponent(g);
            g.drawImage(image, x, y, null);
    }thanks
    dayananda b v

    Hey friend try this out.
    public static boolean createThumbnail(String selectedCategoryName, String imagePath, String imageName){
    //imagePath=full image path
    //imageName=name of the image(Eg:input.jpg)
    try {
    int thumbHeight=100;
    int thumbWidth =100;
    Image image = Toolkit.getDefaultToolkit().getImage(imagePath+"/"+imageName);
    MediaTracker mediaTracker = new MediaTracker(new Container());
    mediaTracker.addImage(image, 0);
    mediaTracker.waitForID(0);
    double thumbRatio = (double)thumbWidth / (double)thumbHeight;
    if(thumbRatio < 1){
    thumbRatio = (double)thumbHeight / (double)thumbWidth;
    int imageWidth = image.getWidth(null);
    int imageHeight = image.getHeight(null);
    int temp=0;
    if(thumbHeight <= imageHeight || thumbWidth <= imageWidth){
    double imageRatio = (double)imageWidth / (double)imageHeight;
    if (thumbRatio < imageRatio) {
    thumbHeight = (int)(thumbWidth / imageRatio);
    } else {
    thumbWidth = (int)(thumbHeight * imageRatio);
    }else if(thumbHeight > imageHeight && thumbWidth > imageWidth){
    thumbWidth = imageWidth + 5;
    thumbHeight = imageHeight + 5;
    // draw original image to thumbnail image object and
    // scale it to the new size on-the-fly
    BufferedImage thumbImage = new BufferedImage(thumbWidth,
    thumbHeight, BufferedImage.TYPE_INT_RGB);
    Graphics2D graphics2D = thumbImage.createGraphics();
    graphics2D.setRenderingHint(RenderingHints.KEY_INTERPOLATION,
    RenderingHints.VALUE_INTERPOLATION_BILINEAR);
    graphics2D.drawImage(image, 0, 0, thumbWidth, thumbHeight, null);
    // save thumbnail image to OUTFILE
    BufferedOutputStream out = null;
    out = new BufferedOutputStream(new
    FileOutputStream(imagePath+"/preview_"+ imageName));
    JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
    JPEGEncodeParam param = encoder.
    getDefaultJPEGEncodeParam(thumbImage);
    int quality = 100;//Integer.parseInt(args[4]);
    quality = Math.max(0, Math.min(quality, 100));
    param.setQuality((float)quality / 100.0f, false);
    encoder.setJPEGEncodeParam(param);
    encoder.encode(thumbImage);
    image.flush();
    thumbImage.flush();
    out.flush();
    out.close();
    mediaTracker.removeImage(image);
    mediaTracker = null;
    thumbImage = null;
    image = null;
    encoder = null;
    graphics2D = null;
    System.out.println("Successfully Created Thumbnail.");
    return true;
    } catch (IOException ioe){
    System.out.println("IO Error in writing the thumbnail:"+ ioe.getMessage());
    return false;
    } catch (Exception e){
    System.out.println("Error in writing the thumbnail:"+ e.getMessage());
    return false;
    Regards..

  • How to save a value in a byte array, retrieve it and display it?

    Hi,
    I am doing a project for my data structures class that involves saving a value (given in String format) in a byte array (our 'memory'). Initially I just tried casting character by character into the byte array and casting back to char[] for retrieval (using .toString() to return what's supposed to be the original string), but this did not work. I tried the .getBytes() method, applying it to the string and then trying to recover it by placing the contents of the 'memory' in a byte array and applying toString(), but that didn't work either. I looked a bit and found this class, CharsetEncoder and CharsetDecoder. I tried to use these but when I try the compiler tells me I cannot instantiate CharsetDecoder because it is an abstract class. At this point I'm at a loss as to what I can do. Is there any way to place a string in a byte array and then recover the string in it's original format? For example, I might save a value in my particular class of "456". But when I try to recover the value from my 'memory' i.e. the byte array, it comes out like [gnue@hnju.... or something similar. I need it to output the original string ("456").
    Below is my code as it is right now, for the methods setValue and getValue.
    Thanks!
    public void setValue(String value) throws InvalidValueException {
         //… stores the given value in the memory area assigned to the variable
              if(this.type.isValidValue(value)){
                   bytes = value.getBytes();
                   int i,j,k;
                   int l=0;//might be wrong?
                   int ad=address-(address%4);
                   mem.readWord(ad);
                   reg=mem.getDataRegister();
                   if((address%4)+bytes.length-1<4){
                        for(i=address%4;i<address%4+bytes.length;i++)
                             reg.setByte(i, bytes[i]);
                        mem.setDataRegister(reg);
                        mem.writeWord(ad);
                   else if((address%4)+bytes.length-1>=4){
                        if(address%4!=0){
                             for(i=address%4;i<4;i++){
                                  reg.setByte(i, bytes);
                                  l++;
                             mem.setDataRegister(reg);
                             mem.writeWord(ad);
                             ad+=mem.WORDSIZE;
                        while(ad<address+bytes.length-(address+bytes.length)%4){
                             for(j=0;j<4;j++){
                                  reg.setByte(j, bytes[j+l]);
                                  l++;
                             mem.setDataRegister(reg);
                             mem.writeWord(ad);
                             ad+=mem.WORDSIZE;
                        if((address+bytes.length)%4!=0){
                             mem.readWord(ad);
                             reg=mem.getDataRegister();
                             for(k=0;k<(address+bytes.length)%4;k++){
                                  reg.setByte(k, bytes[k+l]);
                                  l++;
                             mem.setDataRegister(reg);
                             mem.writeWord(ad);
                   else
                        throw new InvalidValueException("The value passed is not valid.");
         /** Gets the current value of the variable.
         @return current value converted to String
         public String getValue() {
              //… returns the current value stored in the corresponding memory area
              //… value is converted to String
              bytes=new byte[this.getType().getSize()];
              int i,j,k;
              int l=0;//might be wrong?
              int ad=address-(address%4);
              mem.readWord(ad);
              reg=mem.getDataRegister();
              if((address%4)+bytes.length-1<4){
                   for(i=address%4;i<address%4+bytes.length;i++)
                        bytes[i] = reg.readByte(i);
              else if((address%4)+bytes.length-1>=4){
                   if(address%4!=0){
                        for(i=address%4;i<4;i++){
                             bytes[i] = reg.readByte(i);
                             l++;
                        ad+=mem.WORDSIZE;
                   mem.readWord(ad);
                   reg=mem.getDataRegister();
                   while(ad<address+bytes.length-(address+bytes.length)%4){
                        for(j=0;j<4;j++){
                             bytes[j+l] = reg.readByte(j);
                             l++;
                        ad+=mem.WORDSIZE;
                   if((address+bytes.length)%4!=0){
                        mem.readWord(ad);
                        reg=mem.getDataRegister();
                        for(k=0;k<(address+bytes.length)%4;k++){
                             bytes[k+l] = reg.readByte(k);
                             l++;
              return bytes.toString();

    You can certainly put it into a byte array and then construct a new String from that byte array. Just calling toString doesn't mean you'll automatically get a meaningful string out of it. Arrays do not override the toString method, so the use the one inherited from object.
    Look at String's constructors.

  • Retrieve RowSet and Display in Output Text Component

    To retrieve a row object, took more effort than I expected with this tool. I wanted to populate a simple output text component with a db object pulled from a row, and I binded it to the rowset column. It worked great, but it kept retrieving the first row, since in the JSP it was calling this:
    #{questionsetup.questionRowSet.currentRow['question']}
    To get it to increment rows per output text component I did this:
    questionRowSet.setDataSourceName("java:comp/env/jdbc/SelfService");
            questionRowSet.setCommand("SELECT ALL dbo.Question.quesId, dbo.Question.question, dbo.Question.lastChangeDate  FROM dbo.Question");
            questionRowSet.execute();
            questionRowSet.next();
            outputText3.setValue(questionRowSet.getString("question"));
            questionRowSet.next();
            outputText4.setValue(questionRowSet.getString("question"));
            questionRowSet.next();
            outputText5.setValue(questionRowSet.getString("question"));Is there another way to do this automatically? The Studio Creator way? Or is this correct? The Studio Creator help file explains how to bind a simple component, and using the binding, but it even says it will retrieve the data in the first row. Incremenet rows or specifying a specific one would really help!
    Thank you very much!

    Maybe take control of the Select statement myself...
    So I decided to get the MIN value of my ID
    like this
    "select MIN(T21id) AS ttt from persons"
    now this is valid in SQLyog
    BUT Creator says
    Description: An unhandled exception ...
    Exception Details: javax.faces.el.PropertyNotFoundException
    Invalid column name: BaseRemuneration
    nb why is this "unhandled" since it is inside a try block?
    why does it mention BaseRemuneration which is a completely different but valid column??
    So Sun Creator will accept an unknown subset of valid SQL commands, and give bizarre irrelevant exception error messages on the set of valid SQL statements that it doesnt like.
    The documents appear to state that MIN is not handled by the IDE but can be entered manually.
    In fact it can NOT be enmtered manually.
    So is there an accurate list of valid SQL that is accepted?

  • To retrieve data and display using tcode

    Respected Gurus,
    Can anybody guide me for the scenario:
    1) to develop the ztable  ,the entries/fields in ztable are some user built and some taken frm SAP standard tables(Mseg,Makt,Lfa1 or more).
    2) i have to fill the table using tcode.
    3) also to display the data on single click of Ok_code on the screen .
    4) kindly guide me for the all code for the same scenario.
    regards,

    Hi,
    It is very much possible.
    1. You can create a new table in SE11/SE12 and u can create this table as a maintainable table( able to maintain entries). An ABAPer can help you to enable this table as maintainable one.
    2. If you know the name of the maintainable table, you can maintain entries directly in SM30. If you need a tcode for this, you can also do this by creating a tcode in SE91 for the table.
    3. If you know the tcode, you can directly view and download the entries using the tcode itself.

  • Retrieving images and numbers from broken iphone that was not backed up

    My Iphone 4 will only go to the part where the white apple appears, and not roll over to the main menu.  I can however make phone calls with it still using my bluetooth in my car only.  I have never backed up my Iphone before (yes I know that was dumb)  BUT is there anyway to retrieve information from the phone at all?

    Thanks!

  • Retrieve data and display using struts

    hello..
    pls help...
    i know how to insert data into the data base using struts. but i don't know how to retrieve it. i have been trying to retrieve it using resultset .. but not sure how to display it using struts properly..
    pls help...

    hi :-)
    1. put your resultset in a list.
    2. put that list in a request.
    3. show the contents of list using jstl.
    regards,

  • Storing and displaying LOB - pdf, images

    Hi,
    I am using Oracel 10g on Linux.
    I need to store pdfs and images and display them using HTMLDB reports and Discoverer reports. the LOBs size vary from 30KB to 1700KB.
    Which will be the best way to store these objects. since the sizes are not that big, i was thinking of storing them directly in the database tables instead of storing them externally.
    and storing internally in the database, will it be better for a quick retrieval and display of the LOB in the reports.
    Can somone guide me and maybe link me to some documents for storing LOB and displaying using HTMLDB and Discoverer.
    Thanks,
    Philip.

    Whether you store the documents in the database or not is totally dependent on your requirements (backup, security, etc). As for performance, you may need to test that for yourself once you have it configured.
    You may want to walk through this How to Upload and Download Files in an Application. It provides detailed instructions for facilitating what you are looking for in Application Express (formerly HTMLDB).

  • Loading an image in the background and displaying it as it is loaded

    Hi,
    I'm writing an "image viewer" swing component, which should load an image in the background, and display it as it is loaded (for example each time a line of the image is loaded, display it)
    Is there a way to do this using JAI or any other api ?
    I guess i would need a way to check the loading progress from the EDT, get the loaded part of the image and display it. Am I right ? Is that possible ?
    Thanks,
    Nicolas

    In the video inspector set the Spatial Conform to "none". This will give tou the actual size of the image in the viewer. You can then use the transform controls to adjust the image to what you want to see.

  • Loading and displaying an image

    I have been able to do this with an applet quite easily
    import java.applet.Applet;
    import java.awt.Graphics;
    import java.awt.Image;
    // This is a simple example applet that loads an image and
    // displays it.
    public class DrawImage extends Applet
         Image image;
         public void init()
              image = getImage(getDocumentBase(), "cow1.jpg");
         public void paint(Graphics g)
              g.drawImage(image, 10, 10, this);
    }I haven't been able to find a good source that explains how to do it just using swing and awt. The ones I have found are complicated or don't work. I am trying to program a tester program that will load an jpg image and redraw the panel then load another jpg image so it looks like its moving. I know you can do this just using the graphic in java but I would like to do it with a jpg image files. Can anyone help with simple code for this?

    After lots of trial and error with certain classes and not knowing how to use certain methods correctly, I have this below code:
    public class image_load extends Frame
         Image img;
         public static void main (String args[])
              Toolkit toolkit = Toolkit.getDefaultToolkit();
              img = toolkit.createImage("cow1.jpg");
              img = ImageIO.read();
              ImageIcon icon = new ImageIcon("cow1.jpg",
                                     "cow pic");
              JLabel label1 = new JLabel("Image and Text", icon, JLabel.CENTER);
              JFrame frame = new JFrame();
              //set frame to exit when closed
              frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              frame.add(label1);     //add panel to frame
              frame.setSize(25,25);     //set size of frame to 300pix x300pix
              frame.setVisible(true);     //make frame visable
         public void paint(Graphics graphics) {
              graphics.drawImage(img, 0, 0, null);
    }I get these errors from the code:
    image_load.java:21: non-static variable img cannot be referenced from a static c
    ontext
                    img = toolkit.createImage("cow1.jpg");
                    ^
    image_load.java:23: non-static variable img cannot be referenced from a static c
    ontext
                    img = ImageIO.read();
                    ^
    image_load.java:23: cannot find symbol
    symbol  : method read()
    location: class javax.imageio.ImageIO
                    img = ImageIO.read();
                                 ^
    3 errorsI have tried a contructor and other things. As for the imageIO.read error that only accepts in Buffered Images. For this I have this odd bit of code that needs changing to be able to work. Any more suggestions?
    BufferedImage bufferedImage = new BufferedImage ( imageWidth,
                                                      imageHeight,
                                                      BufferedImage.TYPE_INT_BGR  );
              bufferedImage.createGraphics().drawImage( image, 0, 0, this);

  • How to use the Rectangle class to draw an image and center it in a JPanel

    I sent an earlier post on how to center an image in a JPanel using the Rectangle class. I was asked to send an executable code which will show the malfunction. The code below is an executable code and a small part of a very big project. To simplifiy things, it is just a JFrame and a JPanel with an open dialog. Once executed the JFrame and the FileDialog will open. You can then navigate to a .gif or a .jpg picture and open it. What I want is for the picture to be centered in the middle of the JPanel and not the upper left corner. It is also important to stress that, I am usinig the Rectangle class to draw the Image. The region of interest is where the rectangle is created. In the constructor of the CenterRect class, I initialize the Rectangle class. Then I use paintComponent in the CenterRect class to draw the Image. The other classes are just support classes. The MyImage class is an extended image class which also has a draw() method. Any assistance in getting the Rectangle to show at the center of the JPanel without affecting the size and shape of the image will be greatly appreciated.
    I have divided the code into three parts. They are all supposed to be on one file in order to execute.
    import java.awt.*;
    import java.awt.image.*;
    import javax.swing.*;
    public class CenterRect extends JPanel {
        public static Rectangle srcRect;
        Insets insets = null;
        Image image;
        MyImage imp;
        private double magnification;
        private int dstWidth, dstHeight;
        public CenterRect(MyImage imp){
            insets = getInsets();
            this.imp = imp;
            int width = imp.getWidth();
            int height = imp.getHeight();
            ImagePanel.init();
            srcRect = new Rectangle(0,0, width, height);
            srcRect.setLocation(0,0);
            setDrawingSize(width, height);
            magnification = 1.0;
        public void setDrawingSize(int width, int height) {
            dstWidth = width;
            dstHeight = height;
            setSize(dstWidth, dstHeight);
        public void paintComponent(Graphics g) {
            Image img = imp.getImage();
         try {
                if (img!=null)
                    g.drawImage(img,0,0, (int)(srcRect.width*magnification), (int)(srcRect.height*magnification),
              srcRect.x, srcRect.y, srcRect.x+srcRect.width, srcRect.y+srcRect.height, null);
            catch(OutOfMemoryError e) {e.printStackTrace();}
        public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    new Opener().openImage();
    class Opener{
        private String dir;
        private String name;
        private static String defaultDirectory;
        JFrame parent;
        public Opener() {
            initComponents();
         public void initComponents(){
            parent = new JFrame();
            parent.setContentPane(ImagePanel.panel);
            parent.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
            parent.setExtendedState(JFrame.MAXIMIZED_BOTH);
            parent.setVisible(true);
        public void openDialog(String title, String path){
            if (path==null || path.equals("")) {
                FileDialog fd = new FileDialog(parent, title);
                defaultDirectory = "dir.image";
                if (defaultDirectory!=null)
                    fd.setDirectory(defaultDirectory);
                fd.setVisible(true);
                name = fd.getFile();
                if (name!=null) {
                    dir = fd.getDirectory();
                    defaultDirectory = dir;
                fd.dispose();
                if (parent==null)
                    return;
            } else {
                int i = path.lastIndexOf('/');
                if (i==-1)
                    i = path.lastIndexOf('\\');
                if (i>0) {
                    dir = path.substring(0, i+1);
                    name = path.substring(i+1);
                } else {
                    dir = "";
                    name = path;
        public MyImage openImage(String directory, String name) {
            MyImage imp = openJpegOrGif(dir, name);
            return imp;
        public void openImage() {
            openDialog("Open...", "");
            String directory = dir;
            String name = this.name;
            if (name==null)
                return;
            MyImage imp = openImage(directory, name);
            if (imp!=null) imp.show();
        MyImage openJpegOrGif(String dir, String name) {
                MyImage imp = null;
                Image img = Toolkit.getDefaultToolkit().getImage(dir+name);
                if (img!=null) {
                    imp = new MyImage(name, img);
                    FileInfo fi = new FileInfo();
                    fi.fileFormat = fi.GIF_OR_JPG;
                    fi.fileName = name;
                    fi.directory = dir;
                    imp.setFileInfo(fi);
                return imp;
    }

    This is the second part. It is a continuation of the first part. They are all supposed to be on one file.
    class MyImage implements ImageObserver{
        private int imageUpdateY, imageUpdateW,width,height;
        private boolean imageLoaded;
        private static int currentID = -1;
        private int ID;
        private static Component comp;
        protected ImageProcessor ip;
        private String title;
        protected Image img;
        private static int xbase = -1;
        private static int ybase,xloc,yloc;
        private static int count = 0;
        private static final int XINC = 8;
        private static final int YINC = 12;
        private int originalScale = 1;
        private FileInfo fileInfo;
        ImagePanel win;
        /** Constructs an ImagePlus from an AWT Image. The first argument
         * will be used as the title of the window that displays the image. */
        public MyImage(String title, Image img) {
            this.title = title;
             ID = --currentID;
            if (img!=null)
                setImage(img);
        public boolean imageUpdate(Image img, int flags, int x, int y, int w, int h) {
             imageUpdateY = y;
             imageUpdateW = w;
             imageLoaded = (flags & (ALLBITS|FRAMEBITS|ABORT)) != 0;
         return !imageLoaded;
        public int getWidth() {
             return width;
        public int getHeight() {
             return height;
        /** Replaces the ImageProcessor, if any, with the one specified.
         * Set 'title' to null to leave the image title unchanged. */
        public void setProcessor(String title, ImageProcessor ip) {
            if (title!=null) this.title = title;
            this.ip = ip;
            img = ip.createImage();
            boolean newSize = width!=ip.getWidth() || height!=ip.getHeight();
         width = ip.getWidth();
         height = ip.getHeight();
         if (win!=null && newSize) {
                win = new ImagePanel(this);
        public void draw(){
            CenterRect ic = null;
            win = new ImagePanel(this);
            if (win!=null){
                win.addIC(this);
                win.getCanvas().repaint();
                ic = win .getCanvas();
                win.panel.add(ic);
                int width = win.imp.getWidth();
                int height = win.imp.getHeight();
                Point ijLoc = new Point(10,32);
                if (xbase==-1) {
                    xbase = 5;
                    ybase = ijLoc.y;
                    xloc = xbase;
                    yloc = ybase;
                if ((xloc+width)>ijLoc.x && yloc<(ybase+20))
                    yloc = ybase+20;
                    int x = xloc;
                    int y = yloc;
                    xloc += XINC;
                    yloc += YINC;
                    Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
                    count++;
                    if (count%6==0) {
                        xloc = xbase;
                        yloc = ybase;
                    int scale = 1;
                    while (xbase+XINC*4+width/scale>screen.width || ybase+YINC*4+height/scale>screen.height)
                        if (scale>1) {
                   originalScale = scale;
                   ic.setDrawingSize(width/scale, height/scale);
        /** Returns the current AWT image. */
        public Image getImage() {
            if (img==null && ip!=null)
                img = ip.createImage();
            return img;
        /** Replaces the AWT image, if any, with the one specified. */
        public void setImage(Image img) {
            waitForImage(img);
            this.img = img;
            JPanel panel = ImagePanel.panel;
            width = img.getWidth(panel);
            height = img.getHeight(panel);
            ip = null;
        /** Opens a window to display this image and clears the status bar. */
        public void show() {
            show("");
        /** Opens a window to display this image and displays
         * 'statusMessage' in the status bar. */
        public void show(String statusMessage) {
            if (img==null && ip!=null){
                img = ip.createImage();
            if ((img!=null) && (width>=0) && (height>=0)) {
                win = new ImagePanel(this);
                draw();
        private void waitForImage(Image img) {
        if (comp==null) {
            comp = ImagePanel.panel;
            if (comp==null)
                comp = new JPanel();
        imageLoaded = false;
        if (!comp.prepareImage(img, this)) {
            double progress;
            while (!imageLoaded) {
                if (imageUpdateW>1) {
                    progress = (double)imageUpdateY/imageUpdateW;
                    if (!(progress<1.0)) {
                        progress = 1.0 - (progress-1.0);
                        if (progress<0.0) progress = 0.9;
    public void setFileInfo(FileInfo fi) {
        fi.pixels = null;
        fileInfo = fi;
    }

  • Problem in showing progress image and status message.

    Hi, friends,
    I have file upload program in which when user uploads the file
    i want to show animated progress file
    i.e. ( circle.gif )
    when upload finishes it should display message :
    File < file name > uploaded successfully.
    How do i achieve it ?
    since when i am uploading file , image is displayed but
    due to upload process image is hanged up and did not showing
    animation.
    Kindly solve the above problem.
    i post my some code here.
    ============================
    javascript part is here
    function showProgress()
            document.getElementById('imgprogress').style.display = "";
         document.getElementById('imgprogress').style.visibility="";
        function completedupload()
         document.getElementById('progress').style.display = "";
         document.getElementById('progress').style.visibility="";
    <div id="imgprogress" style="display:none; visibility:hidden;"><img src="images/circle.gif"></div>
                                                      <div id="progress" style="display:none; visibility:hidden;"><%= status %></div>
                                                      <div id="" style="display:none; visibility:hidden; "><img src="images/circle.gif" width="21" height="21"></div>since it is not working good.
    please provide me good solution for this.
    i need exactly following :
    when user gives big file to upload it shows progress as animated image
    and upload process finished up, it should remove image and display status message like " File Upload completed. "

    I know this is an old topic, but I found the solution and thought I'd share it! By default, a JList only has 1 visible row. To allow the number of rows to expand dynamically, throw this in.
    this.imageList.setVisibleRowCount(-1);My code looks like this. It centers each image and centers the text under the image and wraps images horizontally.
        ListCellRenderer renderer = new ImageListCellRenderer();
        this.imageList.setCellRenderer(renderer);
        DefaultListModel listModel = new DefaultListModel();
        this.imageList.setVisibleRowCount(-1);
        this.imageList.setLayoutOrientation(JList.HORIZONTAL_WRAP);
        this.imageList.setModel(listModel);and the renderer
    public class ImageListCellRenderer extends DefaultListCellRenderer { 
      public Component getListCellRendererComponent(JList list, Object value, int
          index, boolean isSelected, boolean hasFocus) {
        JLabel label = (JLabel)super.getListCellRendererComponent(list, value,
            index, isSelected, hasFocus);
        if (value instanceof File) {
          File imageFile = (File)value;
          String path = imageFile.getAbsolutePath();
          Image image = Toolkit.getDefaultToolkit().getImage(path);
          image = image.getScaledInstance(100, 100, Image.SCALE_DEFAULT);
          ImageIcon imageIcon = new ImageIcon(image);
          label.setIcon(imageIcon);
          label.setText(path.substring(path.lastIndexOf(File.separatorChar) + 1));
          label.setVerticalTextPosition(SwingConstants.BOTTOM);
          label.setHorizontalAlignment(SwingConstants.CENTER);
          label.setHorizontalTextPosition(SwingConstants.CENTER);
        else {
          label.setIcon(null);
        return label;
    }I need to work on this to improve performance, but it works!

  • Connecting to datasource and retrieve, insert and update data

    hi,
    i am doing a JSP page that need to retrieve data and display on textView, insert data and update data. I have already create a datasource in Visual Composer. Does anyone have a sample codes for mi to use it as reference. So that i can connect to the datasource tat i created in Visual composer and retrieve, insert and update data. thanz
    Regards,
    shixuan

    Hi,
    After creating a data source in Visual composer .
    you have to create a BI system that Visual Composer can use in
    the SAP NetWeaver Portal.
    refer this pdf file for further Info
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/6209b52e-0401-0010-6a9f-d40ec3a09424
    Regards,
    Beevin

Maybe you are looking for

  • Is there any way to move songs from one account to another?

    I accidentally bought an album on iTunes on the wrong account. In order to download it onto my iPod, I think that all of the songs from the other account would be deleted. Is there any way to just move the album to the other account (which is on the

  • Please provide feedback on BPM

    Hi, I currently have an SR open dealing with deployment issues in JDeveloper. The feedback we've received has been that there are bugs within the OPSS security layer, which is preventing the ability to deploy processes from JDeveloper (11.1.1.7). The

  • Thread Pool "Null Pointer" exception

    Hello, I have an embarrassingly parallel algorithm. The parallel part is solved by 2 objects called shifters which implement the Runnable interface. However, for reasons I can't figure out, sometimes my code will randomly output this error. Exception

  • Rmi almost there

    rmi almost there I did a version 1.1 javac -tareget 1.1 ct277/*.class rmic -v1.1 rImp put everything in a jar compiled OK (so the class is seen in the build process) but on execution I got: Exception Details: javax.faces.el.EvaluationException java.l

  • Regular Expresions In Java?

    Does Java support regular expressions? Unfortunately PL/SQL does not. I use them in Perl and they are very useful and powerful. I am sure this is a big question with lots of different answers. I would like to build Java procedures, passing them strin