Problem updating JTree via RMI

I'm programming an Instant Messenger application in Java using RMI extensively. Much like most IM applications, my IM clients display a "buddy list" window upon successful authentication with the server. I have reached a huge stumbling block at this point. My Buddylist JFrame contains a JTree that is used to display the status of the user's buddies (i.e. online, offline). I am able to populate the JTree without any problems BEFORE the JFrame is displayed by using the DefaultTreeModel's insertNodeInto() method. But the problem I'm having is that, once the Buddylist is displayed to the user, I can't successfully update the JTree to reflect changing user status. For example, let's say a user with the screename "qwerty" logs in to the server. Now "qwerty" sees his Buddylist pop up on screen. His Buddylist contains 1 user (for simplicity's sake) with screename "foo". "foo" is currently not logged into the system so "foo" is shown in the Buddylist as a child of node Offline. But right now, let's say that "foo" logs into the system. "qwerty's" Buddylist should be updated to reflect the fact that "foo" just signed in by removing "foo" as a child node of Offline and adding a new node to Online called "foo".
I currently have this functionality implemented as an RMI callback method on the server side. When "foo" logs in, the server calls the method fireBuddyLoggedOnEvent() with "foo" as the argument. Because "qwerty" is already logged in, and both users are each other's buddy, the statement
     c.getCallback().buddySignedOn(screenname);
will be executed on the client side. Unfortunately, even though this code is successfully executed remotely, "qwerty's" Buddylist's JTree does not update to show that "foo" is now online. My only suspicion is that this is due to the fact that the Buddylist is already visible and this somehow affects its ability to be updated (remember that I have no problem populating the tree BEFORE it's visible). However, I've weeded out this possibility by creating a test frame in which its JTree is successfully updated, but in response to an ActionEvent in response to a button click. Of course, this test case was not an RMI application and does not come with the complexities of RMI. Please help me resolve this issue as it's preventing me from proceeding with my project.
~BTW, sorry for the poor code formatting. I added all the code in wordpad and pasted it in here, which stripped the formatting.
* Frame that allows the user to enter information to
* be used to login to the server.
public class LoginFrame extends JFrame {
     signonButton.addActionListener(new java.awt.event.ActionListener() {
          public void actionPerformed(java.awt.event.ActionEvent e) {
               if (!screenameTextField.getText().equals("") &&
               !passwordTextField.getPassword().equals("")) {
                    try {
                         serverInter = (ServerInter) Naming.lookup(serverName);
                         String username = screenameTextField.getText();
                         String password = String.valueOf(passwordTextField.getPassword());
                         int connectionID = serverInter.connect(username, password);
                         System.out.println("authenticate successful");
                         dispose();
                         Buddylist buddyList = new Buddylist(username, connectionID);
                         // Registers the buddylist with the server so that
                         // the server can remotely call methods on the
                         // Buddylist.
                         serverInter.registerCallback(buddyList, connectionID);
                         return;
                         } catch (Exception e1) {
                              JOptionPane.showMessageDialog(LoginFrame.this, e1.getMessage(),
                                        "Connection Error", JOptionPane.ERROR_MESSAGE);
                              passwordTextField.setText("");
                              signonButton.setEnabled(false);
                              e1.printStackTrace();
     public static void main(String[] args) {
          new LoginFrame();
public class Buddylist extends JFrame implements BuddylistInter {
     public Buddylist(String username, int connectionID) {
          try {
               serverInter = (ServerInter) Naming.lookup(serverName);
               this.username = username;
               this.connectionID = connectionID;
               this.setTitle(username + "'s BuddyList");
               initialize();
               } catch (Exception e) {
                    e.printStackTrace();
     * Method of interest. Note that this method uses a DynamicTree
     * object as included in the Sun tutorial on JTree's
     * (located at http://www.iam.ubc.ca/guides/javatut99/uiswing/components/tree.html#dynamic).
     * Don't worry too much about where the node is getting added
     * but rather, that i wish to verify that an arbitrary node
     * can successfully be inserted into the tree during this
     * remote method call
     public void buddySignedOn(String screenname) throws RemoteException {
          // should add screename at some location in the tree
          // but doesn't!
          treePanel.addObject(screename);
* Oversimplified interface for the Buddylist that is intended
* to be used to allow callbacks to the clientside.
public interface BuddylistInter extends Remote {
     public void buddySignedOn(String screenname) throws RemoteException;
* Another oversimplified interface that is to be
* implemented by the server so that the client can
* call remote server methods.
public interface ServerInter extends java.rmi.Remote {
     // "Registers" the given Buddylist with this server to allow
     // remote callbacks on the Buddylist.
     public void registerCallback(Buddylist buddylist, int connectionID)
                         throws RemoteException;
public class Server extends UnicastRemoteObject implements ServerInter {
     private Vector loggedInUsers = new Vector();
     // Note that this method assumes that a Connection object
     // representing the Buddylist with connectionID was added
     // to the loggedInUsers list during authentication.
     public void registerCallback(Buddylist buddylist, int connectionID) throws RemoteException {          
          int index = loggedInUsers.indexOf(new Connection(connectionID));
          Connection c = (Connection) loggedInUsers.get(index);
          c.setCallback(buddylist);
     // Method that's called whenever a client successfully
     // connects to this server object.
     // screename is the name of the user that successfully
     // logged in.
     private void fireBuddyLoggedOnEvent(String screenname) {
          // Examines each logged in client to determine whether
          // or not that client should be notified of screename's
          // newly logged in status.
          for (int i = 0; i < loggedInUsers.size(); i++) {
               Connection c = (Connection) loggedInUsers.get(i);
               if (database1.areBuddies(screenname, c.getUsername())) {
                    try {
                         // getCallback() returns a reference to
                         // the Buddylist that was registered
                         // with this server. At this point,
                         // the server attempts to notify the
                         // client that one of his "buddies" has
                         // just logged into the server.
                         c.getCallback().buddySignedOn(screenname);
                    } catch (RemoteException e) {
                         e.printStackTrace();
}

Ok, I deleted all .class files, recomplied, and rmic'd, and I still get the IllegalArgumentException. So I've decided to just post all the code here because I don't want to make an assumption that all the code is correct. Thanks for helping me out with this very stressful problem.
* Created on Nov 13, 2006
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.net.MalformedURLException;
import java.rmi.Naming;
import java.rmi.NotBoundException;
import java.rmi.RemoteException;
import java.rmi.server.UnicastRemoteObject;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JPanel;
import javax.swing.JSeparator;
import javax.swing.SwingUtilities;
import javax.swing.tree.DefaultMutableTreeNode;
public class Buddylist extends JFrame implements BuddylistInter {
     private String serverName = "//Broom:" + "5001" + "/IMServer";
     private DynamicTree treePanel = null;
     private String onlineString = "Online";
     private String offlineString = "Offline";
     private DefaultMutableTreeNode onlineNode = null;
     private DefaultMutableTreeNode offlineNode = null;
     private ImageUpdater imageUpdater = null;
     private javax.swing.JPanel jContentPane = null;
     private ServerInter serverInter = null;
     private String username = null;
     // A connectionID of -1 indicates that this Buddylist
     // has not yet received a valid id from the server.
     private int connectionID = -1;
     private JMenuBar jJMenuBar = null;
     private JMenu jMenu = null;
     private JMenu jMenu1 = null;
     private JMenu jMenu2 = null;
     private JPanel imagePanel = null;
     private JSeparator jSeparator1 = null;
     public Buddylist(String username, int connectionID) {
         try {
               serverInter = (ServerInter) Naming.lookup(serverName);
               this.username = username;
               this.connectionID = connectionID;
               this.setTitle(username + "'s BuddyList");
               imageUpdater = new ImageChooser(this);
               initialize();
                * This statement is causing an IllegalArgumentException
                * to be thrown! I've tried inserting it at the beginning
                * of the constructor and that doesn't help.
               UnicastRemoteObject.exportObject(this);
          } catch (MalformedURLException e) {
               e.printStackTrace();
          } catch (RemoteException e) {
               e.printStackTrace();
          } catch (NotBoundException e) {
               e.printStackTrace();
      * This method initializes this
      * @return void
     private void initialize() {
          this.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
          this.setJMenuBar(getJJMenuBar());
          this.setPreferredSize(new java.awt.Dimension(196,466));
          this.setMinimumSize(new java.awt.Dimension(150,439));
          this.setSize(196, 466);
          this.setContentPane(getJContentPane());
          this.setLocationRelativeTo(null);
          this.setVisible(true);
      * This method initializes jContentPane
      * @return javax.swing.JPanel
     private javax.swing.JPanel getJContentPane() {
          if(jContentPane == null) {
               jContentPane = new javax.swing.JPanel();
               jContentPane.setLayout(null);
               jContentPane.add(getImagePanel(), null);
               jContentPane.add(getJSeparator1(), null);
               jContentPane.add(getTreePanel(), null);
          return jContentPane;
     private DynamicTree getTreePanel() {
          if (treePanel == null) {
               treePanel = new DynamicTree();
               onlineNode = treePanel.addObject(null, onlineString);
               offlineNode = treePanel.addObject(null, offlineString);
               treePanel.setBounds(6, 138, 177, 196);
               populateTree();
               return treePanel;
          return null;
     private void populateTree() {
          try {
               String [] buddies = serverInter.getBuddyList(this.username);
               for (int i = 0; i < buddies.length; i++) {
                    try {
                         if (serverInter.isBuddyOnline(buddies)) {
                              treePanel.addObject(onlineNode, buddies[i]);
                         else {
                              treePanel.addObject(offlineNode, buddies[i]);
                    } catch (RemoteException e1) {
                         e1.printStackTrace();
          } catch (RemoteException e) {
               e.printStackTrace();
     * This method initializes jJMenuBar     
     * @return javax.swing.JMenuBar     
     private JMenuBar getJJMenuBar() {
          if (jJMenuBar == null) {
               jJMenuBar = new JMenuBar();
               jJMenuBar.add(getJMenu());
               jJMenuBar.add(getJMenu1());
               jJMenuBar.add(getJMenu2());
          return jJMenuBar;
     * This method initializes jMenu     
     * @return javax.swing.JMenu     
     private JMenu getJMenu() {
          if (jMenu == null) {
               jMenu = new JMenu();
               jMenu.setText("My IM");
          return jMenu;
     * This method initializes jMenu1     
     * @return javax.swing.JMenu     
     private JMenu getJMenu1() {
          if (jMenu1 == null) {
               jMenu1 = new JMenu();
               jMenu1.setText("People");
          return jMenu1;
     * This method initializes jMenu2     
     * @return javax.swing.JMenu     
     private JMenu getJMenu2() {
          if (jMenu2 == null) {
               jMenu2 = new JMenu();
               jMenu2.setText("Help");
          return jMenu2;
     * This method initializes imagePanel     
     * @return javax.swing.JPanel     
     private JPanel getImagePanel() {
          if (imagePanel == null) {
               imagePanel = new JPanel();
               imagePanel.setBounds(6, 2, 176, 125);
               try {
                    BufferedImage bi =
                         ImageIO.read(
                                   getClass().getClassLoader().getResourceAsStream("images/cute_dog.jpg"));
                    Image scaled = bi.getScaledInstance(
                              imagePanel.getWidth(), imagePanel.getHeight(), BufferedImage.SCALE_FAST);
                    final JLabel imageLabel = new JLabel(new ImageIcon(scaled));
                    imageLabel.setToolTipText("Double click to change image");
                    imagePanel.add(imageLabel, imageLabel.getName());
                    imageLabel.addMouseListener(new java.awt.event.MouseAdapter() {
                         public void mouseClicked(java.awt.event.MouseEvent e) {
                              if (e.getClickCount() == 2) {
                                   Image selected = imageUpdater.getSelectedImage();
                                   if (selected != null) {
                                        BufferedImage bi = (BufferedImage) selected;
                                        Image scaled = bi.getScaledInstance(
                                                  imageLabel.getWidth(), imageLabel.getHeight(), BufferedImage.SCALE_DEFAULT);
                                        imageLabel.setIcon(new ImageIcon(scaled));
               } catch (IOException e) {
                    e.printStackTrace();
          return imagePanel;
     * This method initializes jSeparator1     
     * @return javax.swing.JSeparator     
     private JSeparator getJSeparator1() {
          if (jSeparator1 == null) {
               jSeparator1 = new JSeparator();
               jSeparator1.setBounds(6, 132, 176, 1);
          return jSeparator1;
     public void buddySignedOn(String screenname) throws RemoteException {
          final String temp = screenname;
          Runnable addBuddy = new Runnable() {
               public void run() {
                    treePanel.addObject(onlineNode, temp);
          SwingUtilities.invokeLater(addBuddy);
     public void buddySignedOff(String screenname) throws RemoteException {
          // TODO Auto-generated method stub
     public boolean equals(Object o) {
          Buddylist buddylist = (Buddylist) o;
          return connectionID == buddylist.connectionID;
     public int hashCode() {
          return connectionID;
} // @jve:decl-index=0:visual-constraint="10,11"
* Created on Nov 4, 2006
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface BuddylistInter extends Remote {
     public void buddySignedOn(String screenname) throws RemoteException;
     public void buddySignedOff(String screenname) throws RemoteException;
* Created on Oct 14, 2006
* Models a single endpoint of a connection between machines.
* @author Josh Feldman
public class Connection {
     private String username;
     private final int connectionID;
     private Buddylist callback = null;
     public Connection(String username, int connectionID) {
          this.username = username;
          this.connectionID = connectionID;
     public Connection(int connectionID) {
          this.connectionID = connectionID;
     public String getUsername() {
          return username;
     public int getConnectionID() {
          return connectionID;
     public void setCallback(Buddylist buddylist) {
          this.callback = buddylist;
     public Buddylist getCallback() {
          return callback;
     public boolean equals(Object o) {     
          Connection otherConnection = (Connection) o;
          if (otherConnection.getConnectionID() == this.connectionID) {
               return true;
          else {
               return false;
     public int hashCode() {
          return connectionID;
* Created on Nov 4, 2006
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.Serializable;
import java.util.Properties;
public class Database implements Serializable{
     private final String regex = ";";
     private Properties db = null;
     private String dbPath = "buddies.txt";
     public Database() throws IOException {
          db = new Properties();
          File buddiesFile = new File(dbPath);
          if (!buddiesFile.canRead()) {
               throw new IOException("Can't read database!");
          try {
               FileInputStream fis = new FileInputStream(buddiesFile);
               db.load(fis);
               System.out.println("database loaded from file");
          } catch (IOException e) {
               e.printStackTrace();
               System.err.println("Can't load the database! Exiting program...");
               System.exit(0);
      * called when a user adds/deletes a user from the buddylist
     public void changeBuddyList() {
          //TODO
     public boolean doesUserExist(String username) {
          System.out.println(db.getProperty(username));
          return db.getProperty(username) != null;
     public String getPassword(String username) {
          String temp = db.getProperty(username);
          String [] split = temp.split(regex);
          if (split.length == 2)
               return split[0];
          else {
               return null;
     public String getBuddies(String username) {
          String temp = db.getProperty(username);
          if (temp == null)
               return null;
          String [] split = temp.split(regex);
          if (split.length != 2)
               return null;
          else {
               return split[1];
      * Determines whether screename1 is a buddy of screename2
      * @return
     public boolean areBuddies(String screename1, String screename2) {
          String [] buddies = getUserBuddies(screename2);
          if (buddies == null) {
               return false;
          else {
               for (int i = 0; i < buddies.length; i++) {
                    if (buddies.equals(screename1)) {
                         return true;
          return false;
     public String [] getUserBuddies(String username) {
          System.out.println("in db getUserBuddies: username = " + username);
          String temp = db.getProperty(username);
          if (temp == null)
               return null;
          String [] split = temp.split(regex);
          if (split.length != 2)
               return null;
          else {
               return split[1].split(",");
import java.awt.GridLayout;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTree;
import javax.swing.event.TreeModelEvent;
import javax.swing.event.TreeModelListener;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.MutableTreeNode;
import javax.swing.tree.TreePath;
import javax.swing.tree.TreeSelectionModel;
// Note that this is not my code but rather code taken
// from java Sun tutorial
public class DynamicTree extends JPanel {
    protected DefaultMutableTreeNode rootNode;
    protected DefaultTreeModel treeModel;
    protected JTree tree;
    public DynamicTree() {
        rootNode = new DefaultMutableTreeNode("Root Node");
        treeModel = new DefaultTreeModel(rootNode);
        treeModel.addTreeModelListener(new MyTreeModelListener());
        tree = new JTree(treeModel);
        tree.setRootVisible(false);
        tree.setEditable(false);
        tree.getSelectionModel().setSelectionMode
                (TreeSelectionModel.SINGLE_TREE_SELECTION);
        tree.setShowsRootHandles(false);
        JScrollPane scrollPane = new JScrollPane(tree);
        setLayout(new GridLayout(1,0));
        add(scrollPane);
    /** Remove all nodes except the root node. */
    public void clear() {
        rootNode.removeAllChildren();
        treeModel.reload();
    /** Remove the currently selected node. */
    public void removeCurrentNode() {
        TreePath currentSelection = tree.getSelectionPath();
        if (currentSelection != null) {
            DefaultMutableTreeNode currentNode = (DefaultMutableTreeNode)
                         (currentSelection.getLastPathComponent());
            MutableTreeNode parent = (MutableTreeNode)(currentNode.getParent());
            if (parent != null) {
                treeModel.removeNodeFromParent(currentNode);
                return;
    public void removeObject(DefaultMutableTreeNode child) {
         treeModel.removeNodeFromParent(child);
//         treeModel.reload();
    /** Add child to the currently selected node. */
    public DefaultMutableTreeNode addObject(Object child) {
        DefaultMutableTreeNode parentNode = null;
        TreePath parentPath = tree.getSelectionPath();
        if (parentPath == null) {
            parentNode = rootNode;
        } else {
            parentNode = (DefaultMutableTreeNode)
                         (parentPath.getLastPathComponent());
        return addObject(parentNode, child, true);
    public DefaultMutableTreeNode addObject(DefaultMutableTreeNode parent,
                                            Object child) {
        return addObject(parent, child, false);
    public DefaultMutableTreeNode addObject(DefaultMutableTreeNode parent,
                                            Object child,
                                            boolean shouldBeVisible) {
        DefaultMutableTreeNode childNode =
                new DefaultMutableTreeNode(child);
        if (parent == null) {
            parent = rootNode;
        treeModel.insertNodeInto(childNode, parent,
                                 parent.getChildCount());
        // Make sure the user can see the lovely new node.
        if (shouldBeVisible) {
            tree.scrollPathToVisible(new TreePath(childNode.getPath()));
        return childNode;
    class MyTreeModelListener implements TreeModelListener {
        public void treeNodesChanged(TreeModelEvent e) {
            DefaultMutableTreeNode node;
            node = (DefaultMutableTreeNode)
                     (e.getTreePath().getLastPathComponent());
             * If the event lists children, then the changed
             * node is the child of the node we've already
             * gotten.  Otherwise, the changed node and the
             * specified node are the same.
            try {
                int index = e.getChildIndices()[0];
                node = (DefaultMutableTreeNode)
                       (node.getChildAt(index));
            } catch (NullPointerException exc) {}
            System.out.println("The user has finished editing the node.");
            System.out.println("New value: " + node.getUserObject());
        public void treeNodesInserted(TreeModelEvent e) {
        public void treeNodesRemoved(TreeModelEvent e) {
        public void treeStructureChanged(TreeModelEvent e) {
    public DefaultTreeModel getModel() {
         return treeModel;
* Created on Sep 24, 2006
import java.awt.Frame;
import java.awt.Image;
import javax.swing.JComponent;
* Generic Dialog for allowing a user to browse
* his filesystem for an image file. Dialog
* displays a preview of the image (if it is in fact
* displayable).
* @author Josh Feldman
public class ImageChooser extends JComponent implements ImageUpdater{
     private Frame parent = null;
     public ImageChooser(Frame parent) {
          super();
          this.parent = parent;
     public Image getSelectedImage() {
          ImageChooserDialog dialog = new ImageChooserDialog(parent);
          if (dialog.showDialog() == ImageChooserDialog.OK_OPTION) {
               return dialog.getSelectedImage();
          return null;
}  //  @jve:decl-index=0:visual-constraint="10,10"
* Created on Sep 24, 2006
import java.awt.Frame;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JDialog;
import javax.swing.ImageIcon;
import javax.swing.JFileChooser;
import javax.swing.JPanel;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JButton;
* Class that displays a dialog that allows a user
* to browse his/her filesystem for an image file
* for selection.
* @author Josh Feldman
public class ImageChooserDialog extends JDialog {
     private Frame parent = null;
     private JFileChooser fileChooser = new JFileChooser();
     private int option;
     public final static int OK_OPTION = 1;
     public final static int CANCEL_OPTION = 2;
     private Image selectedImage = null;
     private javax.swing.JPanel jContentPane = null;
     private JPanel previewPanel = null;
     private JLabel jLabel = null;
     private JTextField filenameTextField = null;
     private JButton browseButton = null;
     private JButton cancelButton = null;
     private JButton okButton = null;
     private JLabel previewLabel = null;
      * This is the default constructor
     public ImageChooserDialog(Frame parent) {
          super();
          this.parent = parent;
          this.setTitle("Select Image");
          initialize();
     public ImageChooserDialog(Frame parent, String title) {
          super();
          this.parent = parent;
          this.setTitle(title);
          initialize();
      * This method initializes this
      * @return void
     private void initialize() {
          this.setModal(true);
          this.setSize(377, 246);
          this.setContentPane(getJContentPane());
          this.setVisible(false);
          this.setLocationRelativeTo(parent);
          this.addWindowListener(new java.awt.event.WindowAdapter() {
               public void windowClosing(java.awt.event.WindowEvent e) {
                    selectedImage = null;
                    option = CANCEL_OPTION;
      * This method initializes jContentPane
      * @return javax.swing.JPanel
     private javax.swing.JPanel getJContentPane() {
          if(jContentPane == null) {
               jLabel = new JLabel();
               jContentPane = new javax.swing.JPanel();
               jContentPane.setLayout(null);
               jLabel.setBounds(87, 192, 58, 10);
               jLabel.setText("Preview");
               jContentPane.add(getPreviewPanel(), null);
               jContentPane.add(jLabel, null);
               jContentPane.add(getFilenameTextField(), null);
               jContentPane.add(getBrowseButton(), null);
               jContentPane.add(getCancelButton(), null);
               jContentPane.add(getOkButton(), null);
          return jContentPane;
      * This method initializes previewPanel     
      * @return javax.swing.JPanel     
     private JPanel getPreviewPanel() {
          if (previewPanel == null) {
               previewPanel = new JPanel();
               previewLabel = new JLabel();
               previewPanel.setLayout(null);
               previewPanel.setLocation(25, 62);
               previewPanel.setSize(172, 125);
               previewPanel.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.LOWERED));
               previewLabel.setText("");
               previewLabel.setLocation(2, 2);
               previewLabel.setSize(172, 125);
               previewPanel.add(previewLabel, null);
          return previewPanel;
      * This method initializes jTextField     
      * @return javax.swing.JTextField
     private JTextField getFilenameTextField() {
          if (filenameTextField == null) {
               filenameTextField = new JTextField();
               filenameTextField.setBounds(26, 17, 212, 23);
               filenameTextField.setEditable(false);
          return filenameTextField;
      * This method initializes jButton     
      * @return javax.swing.JButton     
     private JButton getBrowseButton() {
          if (browseButton == null) {
               browseButton = new JButton();
               browseButton.setBounds(254, 18, 102, 21);
               browseButton.setText("Browse");
               browseButton.addActionListener(new java.awt.event.ActionListener() {
                    public void actionPerformed(java.awt.event.ActionEvent e) { 
                         ImageFilter imageFilter = new ImageFilter();
                         fileChooser.setFileFilter(imageFilter);
                         int value = fileChooser.showOpenDialog(ImageChooserDialog.this);
                         if (value == JFileChooser.APPROVE_OPTION) {
                              File selected = fileChooser.getSelectedFile();
                              if (selected.canRead()) {
                                   try {
                                        BufferedImage bi = ImageIO.read(selected);
                                        selectedImage = bi;
                                        Image scaled = bi.getScaledInstance(
                                                  previewPanel.getWidth(), previewPanel.getHeight(), BufferedImage.SCALE_FAST);
                                        ImageIcon imageIcon = new ImageIcon(scaled);
                                        previewLabel.setIcon(imageIcon);
                                        filenameTextField.setText(selected.getAbsolutePath());
                                   } catch (IOException e1) {
                                        previewLabel.setText("Preview unavailable...");
                                        selectedImage = null;
                                        e1.printStackTrace();
          return browseButton;
      * This method initializes jButton1     
      * @return javax.swing.JButton     
     private JButton getCancelButton() {
          if (cancelButton == null) {
               cancelButton = new JButton();
               cancelButton.setBounds(254, 122, 100, 24);
               cancelButton.setText("Cancel");
               cancelButton.addActionListener(new java.awt.event.ActionListener() {
                    public void actionPerformed(java.awt.event.ActionEvent e) {
                         selectedImage = null;
                         option = CANCEL_OPTION;
                         ImageChooserDialog.this.dispose();
          return cancelButton;
      * This method initializes jButton2     
      * @return javax.swing.JButton     
     private JButton getOkButton() {
          if (okButton == null) {
               okButton = new JButton();
               okButton.setBounds(256, 159, 97, 24);
               okButton.setText("OK");
               okButton.addActionListener(new java.awt.event.ActionListener() {
                    public void actionPerformed(java.awt.event.ActionEvent e) {
                         option = OK_OPTION;
                         ImageChooserDialog.this.dispose();
          return okButton;
      * Displays this chooser dialog.
      * @return - The user selected option
      *                (i.e. OK_OPTION, CANCEL_OPTION)
     public int showDialog() {
          this.setVisible(true);
          return option;
      * Returns the image chosen by the user.
      * @return
     public Image getSelectedImage() {
          return selectedImage;
import java.io.File;
import javax.swing.filechooser.FileFilter;
public class ImageFilter extends FileFilter {
    //Accept all directories and all gif, jpg, tiff, or png files.
    public boolean accept(File f) {
        if (f.isDirectory()) {
            return true;
        String extension = Utils.getExtension(f);
        if (extension != null) {
            if (extension.equals(Utils.tiff) ||
                extension.equals(Utils.tif) ||
                extension.equals(Utils.gif) ||
                extension.equals(Utils.jpeg) ||
                extension.equals(Utils.jpg) ||
                extension.equals(Utils.png)) {
                    return true;
            } else {
                return false;
        return false;
    //The description of this filter
    public String getDescription() {
        return "Just Images";
* Created on Sep 24, 2006
import java.awt.Image;
* Contract that specifies how a class can update
* the view in its graphical display.
* @author Josh Feldman
public interface ImageUpdater {
     public Image getSelectedImage();
* Created on Nov 4, 2006
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.KeyEvent;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.rmi.Naming;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
public class LoginFrame extends JFrame {
     private String serverName = "//Broom:5001/IMServer";
     private ServerInter serverInter = null;
     // The icon to be used when this frame is minimized
     private Image icon;
     // The main image to be displayed on this frame
     private Image robotImage;
     private javax.swing.JPanel jContentPane = null;
     private JPanel imagePanel = null;
     private JLabel screenameLabel = null;
     private JTextField screenameTextField = null;
     private JPanel jPanel1 = null;
     private JLabel passwordLabel = null;
     private JPasswordField passwordTextField = null;
     private JButton signonButton = null;
     private JButton helpButton = null;
      * This is the default constructor
     public LoginFrame() {
          initialize();
      * This method initializes this
      * @return void
     private void initialize() {
          this.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
          this.setResizable(false);
          this.setSize(210, 368);
          this.setContentPane(getJContentPane());
          this.setTitle("Sign On");
          try {
               this.setIconImage(ImageIO.read(new File("images/robby3.jpg")));
          } catch (IOException e) {
               e.printStackTrace();
          this.setLocationRelativeTo(null);
          this.setVisible(true);
      * This method initializes jPanel     
      * @return javax.swing.JPanel     
     private JPanel getImagePanel() {
          if (imagePanel == null) {
               imagePanel = new JPanel();
               imagePanel.setBounds(7, 7, 190, 159);
               imagePanel.setBorder(javax.swing.BorderFactory.createLineBorder(java.awt.Color.gray,0));
               try {
                    BufferedImage bi =
                         ImageIO.read(
                                   getClass().getClassLoader().getResourceAsStream("images/robby_big.bmp"));
                    Image scaled = bi.getScaledInstance(190, 169, BufferedImage.SCALE_FAST);
                    JLabel robotLabel = new JLabel(
                              new ImageIcon(scaled));
                    imagePanel.add(robotLabel);
               } catch (IOException e) {
                    e.printStackTrace();
          return imagePanel;
      * This method initializes jTextField     
      * @return javax.swing.JTextField     
     private JTextField getScreenameTextField() {
          if (screenameTextField == null) {
               screenameTextField = new JTextField();
               screenameTextField.setBounds(22, 208, 168, 20);
               screenameTextField.addKeyListener(new java.awt.event.KeyAdapter() {  
                    public void keyTyped(java.awt.event.KeyEvent e) {
                         if (!isAllowedCharacter(e.getKeyChar())) {
                              e.consume();
                              Toolkit.getDefaultToolkit().beep();
                    public void keyPressed(java.awt.event.KeyEvent e) {
                         int keycode = e.getKeyCode();
                         if(keycode == KeyEvent.VK_ENTER && signonButton.isEnabled()) {
                              signonButton.doClick();
                              passwordTextField.setText("");
                         else if (keycode == KeyEvent.VK_ESCAPE) {
                              dispose();
                              System.exit(0);
                    public void keyReleased(java.awt.event.KeyEvent e) {
                         String screename = screenameTextField.getText();
                         char [] password = passwordTextField.getPassword();
                         if (screename.equals("") ||
                                   password.length <= 0) {
                              signonButton.setEnabled(false);
                         else if (!screename.equals("") &&
                                   password.length > 0) {
                              signonButton.setEnabled(true);
                         clearPasswordArray(password);
          return screenameTextField;
      * This method initializes jPanel1     
      * @return javax.swing.JPanel     
     private JPanel getJPanel1() {
          if (jPanel1 == null) {
               jPanel1 = new JPanel();
               jPanel1.setBounds(8, 173, 188, 1);
               jPanel1.setBorder(javax.swing.BorderFactory.createLineBorder(java.awt.Color.gray,5));
          return jPanel1;
      * This method initializes jPasswordField     
      * @return javax.swing.JPasswordField     
     private JPasswordField getPasswordTextField() {
          if (passwordTextField == null) {
               passwordTextField = new JPasswordField();
               passwordTextField.setBounds(20, 259, 170, 20);
               passwordTextField.addKeyListener(new java.awt.event.KeyAdapter() {
                    public void keyTyped(java.awt.event.KeyEvent e) {
                         if (!isAllowedCharacter(e.getKeyChar())) {
                              e.consume();
                              Toolkit.getDefaultToolkit().beep();
                    public void keyPressed(java.awt.event.KeyEvent e) {
                         int keycode = e.getKeyCode();
                         if(keycode == KeyEvent.VK_ENTER && signonButton.isEnabled()) {
                              signonButton.doClick();
                              passwordTextField.setText("");
                         else if (keycode == KeyEvent.VK_ESCAPE) {
                              dispose();
                              System.exit(0);
                    public void keyReleased(java.awt.event.KeyEvent e) {
                         String screename = screenameTextField.getText();
                         char [] password = passwordTextField.getPassword();
                         if (screename.equals("") ||
                                   password.length <= 0) {
                              signonButton.setEnabled(false);
                         else if (!screename.equals("") &&
                                   password.length > 0) {
                              signonButton.setEnabled(true);
                         clearPasswordArray(password);
          return passwordTextField;
      * This method initializes jContentPane
      * @return javax.swing.JPanel
     private javax.swing.JPanel getJContentPane() {
          if(jContentPane == null) {
               passwordLabel = new JLabel();
               screenameLabel = new JLabel();
               jContentPane = new javax.swing.JPanel();
               jContentPane.setLayout(null);
               screenameLabel.setBounds(22, 182, 132, 20);
               screenameLabel.setText("Screename");
               screenameLabel.setEnabled(true);
               screenameLabel.setFont(new java.awt.Font("Century Gothic", java.awt.Font.BOLD, 12));
               passwordLabel.setBounds(21, 238, 135, 17);
               passwordLabel.setText("Password");
               jContentPane.add(getImagePanel(), null);
               jContentPane.add(screenameLabel, null);
               jContentPane.add(getScreenameTextField(), null);
               jContentPane.add(getJPanel1(), null);
               jCon                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             

Similar Messages

  • Problem updating Photoshop via Creative Cloud

    I have a problem during the update of Photoshop via Creative Cloud. Error during the install of the uploaded files : U44M1P7
    Details of the log : http://we.tl/b8BhhPtuhZ

    Jmarc-user I reviewed your installation log file and found the following example of errors contained within the log:
    07/25/13 17:26:07:596 | [INFO] |  | OOBE | DE |  |  |  | 80295 | ERROR: DS015: Unable to read symlink target of source file "/Applications/Adobe Photoshop CS6/Adobe Photoshop CS6.app/Contents/Required/Plug-Ins/Extensions/FastCore.plugin/Contents/CodeResources"(Seq 2)
    07/25/13 17:26:07:596 | [INFO] |  | OOBE | DE |  |  |  | 80295 | ----------- Payload: Adobe Photoshop CS6 Support_13.1.2_AdobePhotoshop13-Support 13.1.2.0 {B65FABC3-FCF2-4BE6-B12A-600CA2EBFB9D} -----------
    07/25/13 17:26:07:596 | [INFO] |  | OOBE | DE |  |  |  | 80295 | ERROR: DF022: File corruption detected. Re-install the product & then apply the patch again. (Original file has invalid checksum "d20ab5b7597aa474bfff4968262b72ab")(Seq 3)
    Have you uninstalled your current installation of Photoshop CS6, by using the uninstaller located in Applications/Utilities/Adobe Installers, and then reinstalled and applied the update?

  • Problem updating textField via menuItem

    I am new to java and I am having a problem getting a menuItem to update a text field in my swing app. The following code is a striped down version but contains the necessary code to repeat my problem.
    I'm sure it is something fairly simple, but have had no luck finding a solution. All I want is for a menuItem to update the textfield once selected.
    How can I fix this?
    Please help.
    /*  this class test an implementation of JmenuItem and textfield
    where the menuItem is suppose to update the text in the textField*/
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    public class MenuItemTest
        private GridBagLayout layout;
        private GridBagConstraints constraints;
        private JTextField termField;
        private JLabel headerLabel;
        private JLabel termLabel;
        private JMenuBar menuBar;
        private JMenu menu;
        private JMenuItem menuItem;
        public MenuItemTest()
            // create GUI components
            headerLabel = new JLabel("ItemMenu TextField Test");
            termLabel = new JLabel("Field:");
            termField = new JTextField("choose MenuItem");
        public Container createContentPane()
            //Create the content-pane-to-be.
            JPanel contentPane = new JPanel(new BorderLayout());
            contentPane.setOpaque(true);
            layout = new GridBagLayout();// new gridbaglayout
            JPanel p = new JPanel(layout); // set frame layout
            constraints = new GridBagConstraints(); // instantiate constraints
            // add components to JPane     
            setConstraints( 1,0,6,1,1,10);
            p.add(headerLabel,constraints);
            setConstraints( 2,1,1,1,1,2);
            p.add(termLabel,constraints);
            setConstraints(2,2,2,1,1,2);
            p.add(termField,constraints);
            contentPane.add(p, BorderLayout.CENTER);
            return contentPane;
        }// end createContentPane()
        // method for simplifying grabBagConstraints
        private void setConstraints(int row, int column, int width, int height,
                                    int fill, int ipady)
             constraints.gridx = column; // set gridx
             constraints.gridy = row; // set gridy
             constraints.gridwidth = width; // set gridwidth
             constraints.gridheight = height; // set gridheight
            constraints.insets = new Insets(1,1,0,0);//set uniform vertical gap
            constraints.fill = fill;
            constraints.ipady = ipady;
        }// end method addComponent
        //class for build menu bar
         public class MCalMenu
            public JMenuBar createMenuBar()
                //implements menu handler
                MenuHandler handler = new MenuHandler();
                //Create the menu bar.
                menuBar = new JMenuBar();
                menu = new JMenu("Menu");
                menuBar.add(menu);
                //a group of JMenuItems
                menuItem  = new JMenuItem("Preset Field 1");
                menuItem.addActionListener(handler);
                menu.add(menuItem);
                menuItem = new JMenuItem("Preset Field 2");
                menuItem.addActionListener(handler);
                menu.add(menuItem);
                menuItem = new JMenuItem("Preset Field 3");
                menuItem.addActionListener(handler);
                menu.add(menuItem);
                return menuBar;
            }// end createMenuBar method
        }//end class MCalMenu
        // class for menu events
        public class MenuHandler extends JDialog implements ActionListener
            public void actionPerformed(ActionEvent e)
                if ( e.getActionCommand() == "Preset Field 1")
                    termField.setText("1");
                }//end if
                else if (e.getActionCommand() == "Preset Field 2")
                    termField.setText("2");
                }//end else if
                else if (e.getActionCommand() == "Preset Field 3")
                   termField.setText("3");
                }//end else if   
            }// end actionPerformed method
        }// end MenuHandler class
        public void createAndShowGUI()
            JFrame frame = new JFrame("MenuItem TextField Update Fail");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            MenuItemTest myMenuItemTest = new MenuItemTest();
            MCalMenu myMCalMenu = new MCalMenu();
            frame.setJMenuBar(myMCalMenu.createMenuBar());
            frame.setContentPane(myMenuItemTest.createContentPane());
            frame.setSize(200, 200);
            frame.setVisible(true);
        public static void main(  String args [] )
            MenuItemTest myMenuItemTest = new MenuItemTest();
         myMenuItemTest.createAndShowGUI();
    }

    I think that your problem is that your createAndShowGUI method is creating two separate and distinct objects when you run this program: a MenuItemTest object and a MCalMenu object. As distinct objects, they don't share instance variables which means that this program has two termField JTextFields, one which is visible and the other which is not visible and which you are trying to change. This won't work.
    The other problem is here:
    if ( e.getActionCommand() == "Preset Field 1")don't compare strings with ==. Better to use the String method equals(...)

  • Problem updating row via OLEDB Provider (v10.2.0.1)

    We have an application that either updates or inserts a row into an Oracle 10g table.
    We found that every so often the connection hangs when trying to update a row. We soon discovered that during our testing we were deleting individual rows from the table and then the update of other rows failed.
    After a long period of time the system seems to sort itself out and allow the updating of rows again.
    Does anyone have any ideas what the problem is?
    Is it worth updating to a later version of the ODAC software?
    Regards
    DAK

    When you say the update 'failed', you're referring to the hang right? No errors? And when it hangs, it pretty much hangs the whole app until it fixes itself? How long does the 'hang state' last?
    Since the hang 'fixes itself', its not likely a hung or orphaned critical section, so my guess would be either 1) some sort of thread bottleneck on the client (if this is some sort of "multi user under load" scenario, or 2) the database is doing something goofy and the client is simply waiting for a response before it can continue.
    The way I'd try to get more information is to enable sqlnet tracing at level 16, and make sure to enable timestamps as well. Then let the app do it's 'hang and fix itself' type of thing, note what time-ish the hang thing was happening, and check the traces timestamp gaps. What I suspect you may find is a gap between a NSPSEND and NSPRECV call in the Oracle client. I dont have a trace handy to give you the actual calls though so I may not have those names quite right. However, if you see something like the following,
    [10:20:01.1234] nspsend ...  
    [10:21:34.4567] nsprecv ...that would indicated that the client send a packet and was waiting for a minute and half before the database sent a packet back, so you'd want to drag your dba in to have a look at that part.
    If you see no timestamp gaps of appreciable size (more than a second or so), and this is a "multi user under load" type situation, then you may want to get a memory dump of the app while it's in it's hung state , and again a minute or two later, and look to see 1) if threads are bottlenecked waiting for a critical section, 2) if they've moved in the dump that was taken a minute later. If you see that the thread that everything is waiting on has WSARECV32 in the stack, that generally means its in socket receive state though, which leads back to the "waiting for the database to respond" situation.
    Use debugdiag to get and do a first pass analysis on memory dumps, and you get get info on [sqlnet tracing here|http://www.oraclefaq.net/2007/05/02/how-to-enable-sqlnet-client-side-tracing/].
    I don't have any compelling reason to believe that upgrading oledb will help, but if you're using 10201, and the 10201 client as well, I'd recommend going to 10204 purely on general principle, and you do that by applying the 10204 rdbms patch to the client machine, and that will patch both OraOledb as well as the underlying client librarires.
    Hope it helps, I know its a little vague on the details.
    If you need further help and have access to Oracle Support, we could certainly give you a hand sorting it out.
    Cheers,
    Greg

  • Updated Facebook via the Apps store.  Icon is "grayed" and will not open.  It also will not let me delete, to download again.  Anyone have this problem?

    Updated Facebook via the apps store.  Now, icon is "grayed" &amp; will not open, nor will it let me delete it, so I can re-download.  Has anyone had this problem?

    Do you have another disk or Mac connected that has Pages '09 from the Mac App Store installed? If so, the MAS will "see" it & will report it as installed. Unmount any & all drives, including Time Machine backups, that might have Pages '09 on them & then relaunch the MAS & see if you can download it.

  • Problem for update firmware via FOTA (N79)

    hi friends
    i have N79, firmware v31.002 , i have come to know that new firmware v31.101 is out for nokia n79,
    i tried to update firmware via FOTA, it shows "server not responding", i thought server might be busy at that time,
    but i tried for two days it shows the same reply, i dont know whether my phone has any problem with that,
    pls help me
    thanks/regards

    v31.002 is the latest version available till now in India for N79, I just checked, so no hurry at all.
    regarding server not responding you may check options -> settings after *#0000# & it should have nokia as selected profile.

  • Send a ResultSet object via RMI - won't work.

    Hi. I make a user interface to access MySQL database. The access to MySQL server is done from a remote location via RMI. The process to delete/update/create was succeed. The only problem is when I try to get(from the client computer) the ResultSet object, that come from invoking statementObject.executeQuery(myQuery) method, from the server Computer: it won't work. It said that the ResultSet object is not serialized(it is an interface). I need the ResultSet object for my client program since I will use it to set my AbstractTableModel class's object. Last goal is to put the AbstractTableModel object into the JTable constructor so I can see the result from a table.
    Is anyone can help me? I can not return the ResultSet object to the client since it is not serialized.

    I use the following solution using List. As List is Serlizable I can throw it across the network using RMI... it is also of course easy to access.......
    For users objects you need to throw across the network just simply make them implement Serializable
    In your ORM class accessing the DB:
    public List getSQLResults{
    Resultset SQLResults = statement.executeQuery(SQLQuery);
    Vector results = new Vector();
    while (SQLResults.next()){
    // create class object here if needed...
    results.add(SQLResults.getStrinf("COL_NAME");
    return results;In your GUI class..
    JTable theTable = new JTable();
    DefaultTableModel theModel = new DefaultTableModel();
    theModel.addColumn(SOME_COLUMN);
    try{
    List resultsData = ORMClass.getSQLResults();
    Iterator iterator = List.Iterator();
    while(iterator.hasNext()){
    iterator.next();
    theTableModel.addRow(SOME_OBJECT);
    theTable.setModel(theModel);
    catch(Exception ex){
    // exception rasied...... do something!!!
    }

  • There was a problem updating InDesign CC For more information see the specific error below.  Update Failed Download error.  Press Retry to try again or contact customer support.(49)

    Posted the entire text from the error window, when trying to update, using the normal NON-TECHIE way to update any and all Adobe CC products, via the Creative Cloud updater installed when Adobe Creative Cloud subscription was purchased when first offered.
    The following occurs, ad nauseam:
    There was a problem updating InDesign CC
    For more information see the specific error below.
    Update Failed
    Download error.  Press Retry to try again or contact customer support.(49)
    Here's the crux of my frustration:
    (1) Customer Service is NOT contact-able, to receive LIVE help.
    (2) There is NO way for me to mitigate this "Download error", being a student learning InDesign, and NOT in any way capable of tweaking folders/files here and there.
    Therefore, the real question:
    Given that a significant number of subscribers are having the above referenced issue with attempting to download the current update for InDesign, WHAT ARE WE SUPPOSED TO DO, in order to get our contractually paid-for updates to our legally and contractually paid-for Adobe software, specifically in my case, InDesgin's current update?
    Please, NO TECHNICAL mumbo-jumbo which most likely will cause the overwhelming majority of users, like me, to seriously corrupt their computer files, but rather an honest, straightforward "what to do" from real CS/Engineers working for Adobe, as to how to FIX this issue, period.
    ===========================================================
    UPDATE:
    Here is a way in which I think I was able to "update" my InDesign CC application:
    (1) Sign-In to your Adobe Account
    https://www.adobe.com/
    (2) Click on the MENU icon
    (3) Click on the product InDesign icon
    Your browser should display the page for Adobe InDesign CC
    https://www.adobe.com/products/indesign.html?promoid=KLXLU
    (4) Click on the Download icon,
    Your browser should now display the page to download InDesign,
    https://creative.adobe.com/products/download/indesign
    (5) a Pop-Up window should open, and display:
      Launch Application
      This link needs to be opened with an application.
    with the first option to select being the CreativeCloud(URIHandler)
    (5) Select this application and click OK.
    What happened when I followed steps (1) thorugh (5) is that:
    (a) InDesign CC(2014) was installed,
    (b) InDesign CC, updated, and then
    (c) InDesign CC(2014), also updated.
    Why this all worked, is a mystery to me.
    Looks like a separate, "new" version of InDesign, InDesign CC(2014), was installed, the existing "old" InDesign was updated, and then the newly installed Indesign CC(2014) was further updated.
    A BIT MORE, when I launched my InDesign CC app, and checked to see if there were Updates Available, there in fact was an Adobe InDesign CC 64 bit (9.2.2) update.
    I clicked on UPDATE and my "old" InDesign CC app was "successfully updated."
    FURTHER INFO:  I may have neglected to list some important info ... OS:  Windows 8.1 Pro with Media Center, 64-bit
    Confused, I am able to launch BOTH of these apps, and hopefully I may use one of these versions of the InDesign CC app, to do some InDesign work.
    Will keep y'all posted!
    Message was edited by: Richard Yapkowitz, about an hour after I first posted this issue.

    Jackdan error 49 indicates the installer was unable to access a critical file or directory.  You can find additional details at Error downloading Creative Cloud applications - http://helpx.adobe.com/creative-cloud/kb/error-downloading-cc-apps.html.

  • My ipod touch 4g doesn't show option for os update in setting-general page. Can i update it via itunes by connecting it to computer?

    My ipod touch 4g doesn't show option for ios update in setting-general page. Can i update it via itunes by connecting it to computer?

    Try:
    - iOS: Not responding or does not turn on
    When it says place the iPod in recovery mode ue one of these programs:
    For PC
    RecBoot: Easy Way to Put iPhone into Recovery Mode
    If necessary:
    Download QTMLClient.dll & iTunesMobileDevice.dll for RecBoot
    For MAC or PC
    The Firmware Umbrella - TinyUmbrella
    - If not successful and you can't fully turn the iOS device fully off, let the battery fully drain. After charging for an least an hour try the above again.
    - Try on another computer
    - If still not successful that usually indicates a hardware problem and an appointment at the Genius Bar of an Apple store is in order.
    Apple Retail Store - Genius Bar       

  • Problem updating Nokia N97 firmware over the arir ...

    OK here goes,
    I'm having some real problems updating the firmware on my white nokia N97
    I recently bought it of the web as a 12 month contract onto t-mobile (not there website though) in th uk
    After noticing some problems i googled and noticed a firmware update had been released on 1st july 2009
    I tried to get the firmwae over the air (OTA) via typing in *#0000# and selecting check for updates. I get no updates available for nokia and t-mobile (unsure what the difference is?)
    So i heard try using nokia software updater.
    i downloaded latest version 1.6.13 and installed it on a windows vista 32-bit home premium laptop ok
    i have also installed all of the stuff that came with the cd with the phone (ovistore etc )
    when i plug the phone into the laptop i get four options (PC, media, usb and something else) first time it ran it installed the necessary drivers and so therefore when i now plug it it just connects as expected.
    so the laptop is detecting the nokia n97 at this stage
    when i then load nokia software updater click next i put the phone into general mode on full charge with a sim card in it and click next again to detect the phone is pc suite mode
    after about 2 minutes it says it can detect the phone although i can go to my computer and traverse the folder view!
    i can even set it off looking for the phone pluggin it in and the autoplay options of vista will kick in in the background detecting the phone (ie outisde scope of nokia software updater)
    i have tried all different connections mode pc suite mode etc different profiles nothing. tried it onto different pcs with different windows version on it. tried reinstalling software updater
    my software version is 10.0.012 and my product code is 0587240
    interestingly when i goto the can i update on nokias website it says no i have the latest version when i supply this information. weird
    im kinda in catch 22 because there is a bug with pc usb detection of the phone in version 10 but i cant update to version 11 because of this bug
    its driving me nuts any help greatly appreciated
    thanks in advance
    Cheers
    kyle

    kyletindle wrote:
    i did a hard reset using *#7370# and locking code 12345 and the phone did reset but software updater does still not recognise the phone whilst ovi suite does and nokia sync etc
    to make matters worse it has broke my facebook app error: undefined
    mega
    just what i wanted cheers nokia
    It will break your facebook as you have re-formatted the C: drive of you phone. Was you facebook installed to the E: drive by any chance?
    Go to OVI Store and re-install it. 
    It may be work installing it from OVI Store then un-installing that one to clean off the mess you have been left with post formatt and then re-installing it fresh from OVI Store.
    As I always say. Before doing a re-format always  uninstall all apps/widgests before doing a hard reset or factory reset.
    I also do a this and a factory reset before firmware updates to clean my phone. Should really do a hard reset/format as this would be cleaner still, but tehn I would have to do a lot more set-up afterwards.
    N97 (Product Code: 0585262 (Voda UK)) FW 12.0.026
    95 8Gb (Product Code: 0558787 (UK)) FW 31.0.018
    If a post by a user has been helpful, please click on the Kudos! button.

  • Connection to CRX via RMI and getting WeakReference value..... with an exception!

    Hi there,
    I have the following problem.
    I opened a ticket in Day Care Support system, about CRX users/group membership that got lost while synchronization with our LDAP server.
    Although when the user and the group had been created (and therefore taken from that same LDAP server), the membership was good.... but after some time the membership got lost......
    So what i am trying to do now is a Java program that connects to CRX via RMI.
    And gets the list of all the users from a group (aka membership).
    The idea is to monitor the membership each seconds.
    But when trying to get the property "rep:members" of the group, I have the following exception :
    javax.jcr.ValueFormatException: Unknown value type 10
              at org.apache.jackrabbit.rmi.server.ServerObject.getRepositoryException(ServerObject.java:13 9)
              at org.apache.jackrabbit.rmi.server.ServerProperty.getValues(ServerProperty.java:71)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
              at java.lang.reflect.Method.invoke(Method.java:611)
              at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)"
    I searched a little bit and found that "10" is the number for type WeakReference.
    That's normal to me because memberships are stored in the group as a list reference to users linked to that group....
    Anyways, what's not normal to me is that when the type is "10" the API does not let me get the Value (cf. ServerProperty.getValues() method)
    Here is the program:
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.Map;
    import javax.imageio.spi.ServiceRegistry;
    import javax.jcr.Node;
    import javax.jcr.NodeIterator;
    import javax.jcr.Property;
    import javax.jcr.PropertyIterator;
    import javax.jcr.Repository;
    import javax.jcr.RepositoryException;
    import javax.jcr.RepositoryFactory;
    import javax.jcr.Session;
    import javax.jcr.SimpleCredentials;
    import javax.jcr.Value;
    public class Test {
              public static void main(String[] args) {
                        String uri = "rmi://sma11c02.............:1234/crx";
                        String username = "admin";
                        char[] password = {....................};
                        String workspace = "crx.default";
                        String nodePath = "/home/groups/a";
                        Repository repository = null;
                        Session session = null;
                        try {
                                  // Connection to repository via RMI
                                            Map<String, String> jcrParameters = new HashMap<String, String>();
                                            jcrParameters.put("org.apache.jackrabbit.repository.uri", uri);
                                            Iterator<RepositoryFactory> iterator = ServiceRegistry.lookupProviders(RepositoryFactory.class);
                                            while (null == repository && iterator.hasNext()) {
                                                      repository = iterator.next().getRepository(jcrParameters);
                                  if (repository == null) {
                                            throw new IllegalStateException("Problem with connection to the repository...");
                                  // Creation of a session to the workspace
                                  session = repository.login(new SimpleCredentials(username, password), workspace);
                                  if (session == null) {
                                            throw new IllegalStateException("Problem with creation of session to the workspace...");
                                  // Get the targetted node
                                  Node node = session.getNode(nodePath);
                                  System.out.println("Node : " + node.getName());
                                  System.out.println();
                                  PropertyIterator properties = node.getProperties();
                                  System.out.println("List of properties for this node :");
                                  while (properties.hasNext()) {
                                            Property property = properties.nextProperty();
                                            System.out.print("\t"+property.getName() + " : ");
                                            if (property.isMultiple()) {
                                                      Value[] values = property.getValues();
                                                      for (int i = 0; i < values.length; i++) {
                                                                System.out.print(values[i]);
                                                                if (i+1 != values.length) {
                                                                          System.out.print(", ");
                                                      System.out.println();
                                            } else {
                                                      Value value = property.getValue();
                                                      System.out.println(value);
                                  System.out.println();
                                  NodeIterator kids = node.getNodes();
                                  System.out.println("List of children nodes for this node :");
                                  while (kids.hasNext()) {
                                            Node kid = kids.nextNode();
                                            System.out.println("\tChild node : "+kid.getName());
                                            PropertyIterator kidProperties = kid.getProperties();
                                            System.out.println("List of properties for this child :");
                                            while (kidProperties.hasNext()) {
                                                      Property property = kidProperties.nextProperty();
                                                      System.out.print("\t"+property.getName() + " : ");
                                                      if (property.isMultiple()) {
                                                                Value[] values = property.getValues();
                                                                for (int i = 0; i < values.length; i++) {
                                                                          System.out.print(values[i]);
                                                                          if (i+1 != values.length) {
                                                                                    System.out.print(", ");
                                                                System.out.println();
                                                      } else {
                                                                Value value = property.getValue();
                                                                System.out.println(value);
                                            System.out.println();
                        } catch (RepositoryException e) {
                                  e.printStackTrace();
                        } finally {
                                  if (session != null) {
                                            session.logout();
    Here is the output of the below program:
    Node : a
    List of properties for this node :
              jcr:createdBy : admin
              jcr:mixinTypes : mix:lockable
              jcr:created : 2011-10-25T16:58:48.140+02:00
              jcr:primaryType : rep:AuthorizableFolder
    List of children nodes for this node :
              Child node : administrators
    List of properties for this child :
              jcr:createdBy : admin
              rep:principalName : administrators
              rep:members : javax.jcr.ValueFormatException: Unknown value type 10
              at org.apache.jackrabbit.rmi.server.ServerObject.getRepositoryException(ServerObject.java:13 9)
              at org.apache.jackrabbit.rmi.server.ServerProperty.getValues(ServerProperty.java:71)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
              at java.lang.reflect.Method.invoke(Method.java:611)
              at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
              at sun.rmi.transport.Transport$1.run(Transport.java:171)
              at java.security.AccessController.doPrivileged(AccessController.java:284)
              at sun.rmi.transport.Transport.serviceCall(Transport.java:167)
              at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:547)
              at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:802)
              at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:661)
              at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
              at java.lang.Thread.run(Thread.java:736)
              at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(Unknown Source)
              at sun.rmi.transport.StreamRemoteCall.executeCall(Unknown Source)
              at sun.rmi.server.UnicastRef.invoke(Unknown Source)
              at org.apache.jackrabbit.rmi.server.ServerProperty_Stub.getValues(Unknown Source)
              at org.apache.jackrabbit.rmi.client.ClientProperty.getValues(ClientProperty.java:173)
              at Test.main(Test.java:96)
    Here is the list of jar files i'm using with this program:
              2862818581          61388           crx-rmi-2.2.0.jar
              732434195           335603           jackrabbit-jcr-commons-2.4.0.jar
              1107929681           411330           jackrabbit-jcr-rmi-2.4.0.jar
              3096295771           69246           jcr-2.0.jar
              1206850944           367444           log4j-1.2.14.jar
              685167282           25962           slf4j-api-1.6.4.jar
              2025068856           9748           slf4j-log4j12-1.6.4.jar
    Finally, we are using CQ 5.4 (CRX 2.2) with the latest hotfix and under Websphere 7.0
    Best regards,
    Vincent FINET

    Je suis absent(e) du bureau jusqu'au 17/04/2012
    Je suis absent.
    Je répondrai à votre sollicitation à mon retour le 17 avril 2012.
    Cordialement,
    Vincent FINET
    Remarque : ceci est une réponse automatique à votre message  "[CQ5]
    Connection to CRX via RMI and getting WeakReference value..... with an
    exception!" envoyé le 13/4/12 0:32:14.
    C'est la seule notification que vous recevrez pendant l'absence de cette
    personne.
    Le papier est un bien precieux, ne le gaspillez pas. N'imprimez ce document que si vous en avez vraiment besoin !
    Ce message est confidentiel.
    Sous reserve de tout accord conclu par ecrit entre vous et La Banque Postale, son contenu ne represente en aucun cas un engagement de la part de La Banque Postale.
    Toute publication, utilisation ou diffusion, meme partielle, doit etre autorisee prealablement.
    Si vous n'etes pas destinataire de ce message, merci d'en avertir immediatement l'expediteur.

  • Problem Updating iPod software on iTunes

    I am having problems updating my iPod software through iTunes. As soon as it gets to the end of the download, an error message comes up (-48, I think) that states there was an error in downloading the update. It suggests to check my internet connection or try again later. It happens everytime. I have a very stable internet connection and my iTunes software is version 7.1.1.5
    Please help me! Thank you.

    See if placing the iPod in Recovery mode will allow a restore via iTunes
    Next try DFU mode
    How to put iPod touch / iPhone into DFU mode « Karthik's scribblings
    You can also try another computer to help determine if you have a computer or iPod problem.

  • Can't install/update Apps via App Store * ios 8.1 iPhone 5s

    Hi,
    since the ios update 8.1 i can't install or update apps via App Store. I can't even download free apps or do the free updates for installed apps. Have tried to soft reset my phone, tried to outlog and log in again in the app store, turned wlan off and on and tried to download without wlan. Nothing works.
    I got an 1 year old iPhone 5s with the new ios 8.1. Never got any problems with the phone before, since this update!
    Thanks for your help and greetings,
    Falcon2k10

    If i click for example on the update button in app store, there is just this ''downloading circle'' and shows loading.. and loading.. and loading and just nothing happens. Also the sympol of the updating app gets grey and there stands ''waiting''.
    If i try to download an App, there is the same on the install/download button and there shows up a grey symbol of the app and nothing else happens.
    No error message or something else. Just shows that it ''loads'' and nothing happens.

  • Problem updating Acrobat X

    I am having problems updating Acrobat X on Windows 7.  Everytime an update runs there is a 1310 or 1321 error.  Despite repeatedly changing UAC permissions for the files indicated in the errors the errors continue.  My first issue was printing problems, which I have worked around, now I can't update, which supposedly will solve the printing issues.  I am running the update as the administrator, have tried removing and reinstalling and am getting very frustrated.  Any suggestions?

    Failure to update via the online process is USUALLY caused by 1 of 2 things
    1-firewall or antivirus settings
    2-windows security settings
    The USUAL fix is to manually download the files and run the updates outside of the Internet
    All Adobe updates start here and select product, read to see if you need to install updates in number order, or if the updates are cumulative
    for the individual product http://www.adobe.com/downloads/updates/

  • I have problems updating my iphone 4 to ios 7.0.6. Everything seems ok, it is downloading, installing and restarting but it is still ios 7.0.4 on the phone. No error messages, everything seems ok. What is wrong?

    I have problems updating my iphone 4 to ios 7.0.6. Everything seems ok, it is downloading, installing and restarting but it is still ios 7.0.4 on the phone. No error messages, everything seems ok. What is wrong?

    I've never seen this.  Try updating via iTunes on your computer.  Plug it in and see if iTunes says it needs updating.
    It worked via iTunes
    Thank you

Maybe you are looking for