Refreshing JTree with a customized TreeModel

Hello,
I'm newer to Swing, and I'm seeking for help for a JTree problem.
I hoped to display an XML document with JTree. So I customized a TreeModel and TreeNode to handle the XML data.
I used DOM to handle XML, and define TreeNode with the following class:
class DOMtoTreeNode {
org.w3c.dom.Node domNode;
public DOMtoTreeNode(org.w3c.dom.Node myNode){
this.domNode = myNOde; }
public String toString() {
//the displaying code
//and other necessary code to handle children of domNode
Then I defined an implementation of the TreeModel Interface.
public class DomTreeModel implements javax.swing.tree.TreeModel
Document document;
public DomTreeModel(Document aDomDoc){   
     this.document = aDomDoc;
// Basic TreeModel operations
I didn't define any personal TreeModelListener for this TreeModel
and then I created a JTree object to display the XML tree
treeModel = new DomTreeModel(someDOMDocument);
treeInputParameter = new JTree( treeModel );
and I defined JtreeListener.
What I hoped to do is to make modification for the XML document in the JTree.
I added the editing functions in the "valueChanged" function. I added a new DOM node as a child of an existing element node by directly append the child in the DOM node. The code is like the follows:
DOMToTreeNode treeNodeSelected =(DOMToTreeNode)
treeInputParameter.getLastSelectedPathComponent();
org.w3c.dom.Node domNode = treeNodeSelected.getNode();
//get the dom node from Jtree Node here
domNode.appendChild(someChildDomNode);
Up to now, it seems work fine. The TreeModel updates the DOM Document, and the modification being shown in JTree.
But when I tried to replace an existing node with a new node, something went wrong.
domNode.replace(newChild, oldChild);
I debugged the code, and found the underlying DOM Document in the TreeModel had been successfully changed, but the TreeModel didn't update the display in JTree.
I'm afraid this is quite a naive question, but would someone be kindly help me deal with this? It seems that the reason is that some code is missing to let the TreeModel refresh the frontend JTree display. But I realy don't know how to tackle this.
Thanks!
Haoxiang Xia

Thank you for your reply.
Are you adding nodes or just expanding the JTree?Adding nodes (I also want to delete nodes)
I don't know how to do this by just implementing
TreeModel. This is using DefaultTreeModel.Yeah, I really don't want to use DefaultTreeModel because I would have to wrap my data objects as TreeNodes. Since my data objects are already in a tree structure, implementing TreeModel is much cleaner.
It looks like I have to implement fireTreeNodesInserted() in my TreeModel, but I guess what I need to understand is how to register the JTree as a listener to my custom TreeModel. JTree doesn't directly implement TreeModelListener. I read somewhere that JTree automatically registers itself with the TreeModel, but that is not what I am observing.
So..., I am still in need of more info.

Similar Messages

  • Updating JTree Using a Custom TreeModel

    Hello,
    I have created a custom TreeModel that implements the TreeModel interface. The underlying data objects are stored in an existing tree structure similiar to a file/directory filesystem. When I add a new "file" object to the data model, I want to see it in the tree immediately. To make a long question short: what are the necessary steps to communicate with the JTree? Any info or references would be much appreciated.
    Thank You

    Thank you for your reply.
    Are you adding nodes or just expanding the JTree?Adding nodes (I also want to delete nodes)
    I don't know how to do this by just implementing
    TreeModel. This is using DefaultTreeModel.Yeah, I really don't want to use DefaultTreeModel because I would have to wrap my data objects as TreeNodes. Since my data objects are already in a tree structure, implementing TreeModel is much cleaner.
    It looks like I have to implement fireTreeNodesInserted() in my TreeModel, but I guess what I need to understand is how to register the JTree as a listener to my custom TreeModel. JTree doesn't directly implement TreeModelListener. I read somewhere that JTree automatically registers itself with the TreeModel, but that is not what I am observing.
    So..., I am still in need of more info.

  • Insert node into JTree with own TreeModel

    Hi,
    I use JTree in combination with my own TreeModel. When a node is removed I use this to inform all listeners:
    actListener.treeStructureChanged(new TreeModelEvent(this, pathToRoot));The above works fine. Now if I insert a node and its' parent is already expanded nothing happens at all! I tried to call actListener.treeStructureChanged(new TreeModelEvent(this, pathToRoot)); and actListener.insertTreeNodes(new TreeModelEvent(this, pathToRoot)); without success!
    As long as the parent is collapsed and a new node is inserted my getChildCount() method in my TreeModel gets called and the freshly added node will be display correctly but whan the node is already expanded nothing happens.
    I've also checked the listeners of my model: one of them is JTree, so it is informed about the insertions but why won't it update its' view? It's especially funny since everything is fine when deleting a node.
    Many thanks for any hints.
    Regards,
    Ren�

    I am struggling with the same problem, and have yet to find a solution, maybe some more suggestions can be made? Here is the situation... I've got a JTree and a custom TreeModel. Now, if I do not expand a node, I can insert and delete from it at will using treeStructureChanged(new TreeModelEvent(this,path))and when I expand the node it will have the correct children. However, once I have expanded the node, all attempts to add or remove children are futile. Even if I un-expand the node, changes will not register in the JTree. I've tried out both suggestions already provided in this thread, but to no avail. Additionally, if I reset the root node, all my changes will appear correctly, however the trees "expanded" state is lost and this is not desireable.
    Anybody have any advice?

  • JTREE: Custom TreeModel does not update non-root nodes

    I have a JTree that uses a custom TreeModel that wraps over (delegates to) a data class X which keeps track of all its children. The class X maintains its own data structure internally (references to other data objects). It also implements 'equals' and 'hashcode' methods. When the data changes in X, it invokes fireTreeStructureChanged on the TreeModel. (There is a TreeModelListener registered with the TreeModel). This works very well for the root node but not for the other non-root nodes. The JTree correctly calls 'equals' and I can see that equals returns 'false' but for non-root nodes the JTree does not refresh though I can see the underlying data structure has changed.
    I am wondering if I may not have fully & correctly implemented fireTreeStructureChanged as it doesn't seem to do much. Or I may be looking at the wrong place. Any pointers would be appreciated.
    BTW, this question is very similar to one asked years earlier http://forums.sun.com/thread.jspa?threadID=153854 but it didn't help me :(
    Thanks.
    ps: working with jdk1.6.0_06 on WinXP.

    I have a same problem. I got an error "Cannot Update Libray".

  • JTree with XML content expand/collapse problem

    Hello all,
    I'm having this very weird problem with a JTree I use to display the contents of an XML file. I use the DOM parser (and not JDOM since I want the application to run as an applet as well, and don't want to have any external libraries for the user to download) and have a custom TreeModel and TreeNode implementations to wrap the DOM nodes so that they are displayed by the JTree.
    I have also added a popup menu in the tree, for the user to be able to expand/collapse all nodes under the selected one (i.e. a recursive method).
    When expandAll is run, everything works fine and the children of the selected node are expanded (and their children and so on).
    However, after the expansion when I run the collapseAll function, even though the selected node collapses, when I re-expand it (manually not by expandAll) all of it's children are still fully open! Even if I collapse sub-elements of the node manually and then collapse this node and re-expand it, it "forgets" the state of it's children and shows them fully expanded.
    In other words once I use expandAll no matter what I do, the children of this node will be expanded (once I close it and re-open it).
    Also after running expandAll the behaviour(!) of the expanded nodes change: i have tree.setToggleClickCount(1); but on the expanded nodes I need to double-click to collapse them.
    I believe the problem is related to my implementations of TreeModel and TreeNode but after many-many hours of trying to figure out what's happening I'm desperate... Please help!
    Here's my code:
    public class XMLTreeNode implements TreeNode 
         //This class wraps a DOM node
        org.w3c.dom.Node domNode;
        protected boolean allowChildren;
        protected Vector children;
        //compressed view (#text).
         private static boolean compress = true;   
        // An array of names for DOM node-types
        // (Array indexes = nodeType() values.)
        static final String[] typeName = {
            "none",
            "Element",
            "Attr",
            "Text",
            "CDATA",
            "EntityRef",
            "Entity",
            "ProcInstr",
            "Comment",
            "Document",
            "DocType",
            "DocFragment",
            "Notation",
        static final int ELEMENT_TYPE =   1;
        static final int ATTR_TYPE =      2;
        static final int TEXT_TYPE =      3;
        static final int CDATA_TYPE =     4;
        static final int ENTITYREF_TYPE = 5;
        static final int ENTITY_TYPE =    6;
        static final int PROCINSTR_TYPE = 7;
        static final int COMMENT_TYPE =   8;
        static final int DOCUMENT_TYPE =  9;
        static final int DOCTYPE_TYPE =  10;
        static final int DOCFRAG_TYPE =  11;
        static final int NOTATION_TYPE = 12;
        // The list of elements to display in the tree
       static String[] treeElementNames = {
            "node",
      // Construct an Adapter node from a DOM node
      public XMLTreeNode(org.w3c.dom.Node node) {
        domNode = node;
      public String toString(){
           if (domNode.hasAttributes()){
                return domNode.getAttributes().getNamedItem("label").getNodeValue();
           }else return domNode.getNodeName();      
      public boolean isLeaf(){ 
           return (this.getChildCount()==0);
      boolean treeElement(String elementName) {
          for (int i=0; i<treeElementNames.length; i++) {
            if ( elementName.equals(treeElementNames)) return true;
    return false;
    public int getChildCount() {
         if (!compress) {   
    return domNode.getChildNodes().getLength();
    int count = 0;
    for (int i=0; i<domNode.getChildNodes().getLength(); i++) {
    org.w3c.dom.Node node = domNode.getChildNodes().item(i);
    if (node.getNodeType() == ELEMENT_TYPE
    && treeElement( node.getNodeName() ))
    // Note:
    // Have to check for proper type.
    // The DOCTYPE element also has the right name
    ++count;
    return count;
    public boolean getAllowsChildren() {
         // TODO Auto-generated method stub
         return true;
    public Enumeration children() {
         // TODO Auto-generated method stub
         return null;
    public TreeNode getParent() {
         // TODO Auto-generated method stub
         return null;
    public TreeNode getChildAt(int searchIndex) {
    org.w3c.dom.Node node =
    domNode.getChildNodes().item(searchIndex);
    if (compress) {
    // Return Nth displayable node
    int elementNodeIndex = 0;
    for (int i=0; i<domNode.getChildNodes().getLength(); i++) {
    node = domNode.getChildNodes().item(i);
    if (node.getNodeType() == ELEMENT_TYPE
    && treeElement( node.getNodeName() )
    && elementNodeIndex++ == searchIndex) {
    break;
    return new XMLTreeNode(node);
    public int getIndex(TreeNode tnode) {
         if (tnode== null) {
              throw new IllegalArgumentException("argument is null");
         XMLTreeNode child=(XMLTreeNode)tnode;
         int count = getChildCount();
         for (int i=0; i<count; i++) {
              XMLTreeNode n = (XMLTreeNode)this.getChildAt(i);
              if (child.domNode == n.domNode) return i;
         return -1; // Should never get here.
    public class XMLTreeModel2 extends DefaultTreeModel
         private Vector listenerList = new Vector();
         * This adapter converts the current Document (a DOM) into
         * a JTree model.
         private Document document;
         public XMLTreeModel2 (Document doc){
              super(new XMLTreeNode(doc));
              this.document=doc;
         public Object getRoot() {
              //System.err.println("Returning root: " +document);
              return new XMLTreeNode(document);
         public boolean isLeaf(Object aNode) {
              return ((XMLTreeNode)aNode).isLeaf();
         public int getChildCount(Object parent) {
              XMLTreeNode node = (XMLTreeNode) parent;
    return node.getChildCount();
         public Object getChild(Object parent, int index) {
    XMLTreeNode node = (XMLTreeNode) parent;
    return node.getChildAt(index);
         public int getIndexOfChild(Object parent, Object child) {
    if (parent==null || child==null )
         return -1;
              XMLTreeNode node = (XMLTreeNode) parent;
    return node.getIndex((XMLTreeNode) child);
         public void valueForPathChanged(TreePath path, Object newValue) {
    // Null. no changes
         public void addTreeModelListener(TreeModelListener listener) {
              if ( listener != null
    && ! listenerList.contains( listener ) ) {
    listenerList.addElement( listener );
         public void removeTreeModelListener(TreeModelListener listener) {
              if ( listener != null ) {
    listenerList.removeElement( listener );
         public void fireTreeNodesChanged( TreeModelEvent e ) {
    Enumeration listeners = listenerList.elements();
    while ( listeners.hasMoreElements() ) {
    TreeModelListener listener =
    (TreeModelListener) listeners.nextElement();
    listener.treeNodesChanged( e );
         public void fireTreeNodesInserted( TreeModelEvent e ) {
    Enumeration listeners = listenerList.elements();
    while ( listeners.hasMoreElements() ) {
    TreeModelListener listener =
    (TreeModelListener) listeners.nextElement();
    listener.treeNodesInserted( e );
         public void fireTreeNodesRemoved( TreeModelEvent e ) {
    Enumeration listeners = listenerList.elements();
    while ( listeners.hasMoreElements() ) {
    TreeModelListener listener =
    (TreeModelListener) listeners.nextElement();
    listener.treeNodesRemoved( e );
         public void fireTreeStructureChanged( TreeModelEvent e ) {
    Enumeration listeners = listenerList.elements();
    while ( listeners.hasMoreElements() ) {
    TreeModelListener listener =
    (TreeModelListener) listeners.nextElement();
    listener.treeStructureChanged( e );
    The collapseAll, expandAll code (even though I m pretty sure that's not the problem since they work fine on a normal JTree):
        private void collapseAll(TreePath tp){
             if (tp==null) return;
             Object node=tp.getLastPathComponent();
             TreeModel model=tree.getModel();
             if (!model.isLeaf(node)){
                  tree.collapsePath(tp);
                  for (int i=0;i<model.getChildCount(node);i++){
                  //for (int i = node.childCount()-4;i>=0;i--){
                       collapseAll(tp.pathByAddingChild(model.getChild(node,i)));
                  tree.collapsePath(tp);
        private void expandAll(TreePath tp){
             if (tp==null) return;
             Object node=tp.getLastPathComponent();
             TreeModel model=tree.getModel();
             if (!model.isLeaf(node)){
                  tree.expandPath(tp);
                  for (int i=0;i<model.getChildCount(node);i++){
                  //for (int i = node.childCount()-4;i>=0;i--){
                       expandAll(tp.pathByAddingChild(model.getChild(node,i)));

    Hi,
    Iam not facing this problem. To CollapseAll, I do a tree.getModel().reload() which causes all nodes to get collapsed and remain so even if I reopen them manually.
    Hope this helps.
    cheers,
    vidyut

  • Could anyone show me how to file a complaint with Verizon Customer Service?

    I would first like to state that this is my first time having an issue with Verizon Customer Service.In all my years of using their service, I had never run into someone that truly had no idea what they were talking about. I would like to file a complaint to save everyone from experiencing the frustration I am feeling and from wasting your time.
    Here is the story, so that you can understand the reason why I would like to file a complaint;
    My phone has always had an SD Card in addition to the phone memory because my phone memory is already tiny, less than 1 GB.I put things that cannot be put on my SD Card (my text messages, contacts, etc.).
    This past week I kept on receiving air messages that my phone memory was full. I deleted most of my text messages but I still received air messages that my phone memory was "full".  I therefore decided to call Verizon Wireless to see if they could help me solve my problem or at least educate me on what was taking space in my phone memory.
    Well, I unfortunately had the luck of being connected with a representative named "Naima" and I told her about my phone memory problem. She said she knew how to fix my problem and instructed me to click on the "Format SD Card" button. Following her instructions blindly, I never once stopped to consider that clicking on that button would erase everything. And so  ALL my pictures, ringtones, and videos were erased.
    Trying to fix her mistake she dug herself into a deeper hole. Instead of admitting that she had made a mistake she claimed that my pictures, ringtones, and videos could be recovered, She had me access Backup Assistant, but my stuff was NOT saved there. I later learned that my phone's Backup Assistant can only save contacts, NOT pictures. She knew what phone I had (representatives have all the phone's info and history) yet she led me in circles and wasted my time and could not own up to her mistake.
    What upsets me is the fact that she did not even KNOW that the phone memory and SD Card are 2 COMPLETELY DIFFERENT things.And also she could not own up to her mistake, but instead wasted at least an hour of my time trying to get Backup Assistant to do something it could not.
    I then attempted to file a complaint to found that Verizon makes it Virtually Impossible to file a complaint, only through MAIL! Really??

    Well actually sending a certified return receipt letter to Verizon Wireless may or may not do any good. you can also file a complaint here http://www.bbb.org
    Those out of memory messages usually mean internal memory is getting full. I have no idea of your make and model of device but there are many articles via google that tell you how to transfer files from internal memory to sd card memory.
    Now on the off chance your sd card is nearing its capacity you can either hook to your computer via usb and the computer will show two drive letters. One is internal memory and the other is the sd card memory. If its internal memory and your sd card is not full you can drag and drop the files to the sd card. However you can also get a card reader and then make a saved files folder on your desktop, then cut and paste any or all movable files to that new folder you just created. its really very easy.
    You can also remove files from internal memory (music, photos,documents) to that folder on your desktop. You can also remove all files and photos from the sd card on a regular basis to never have that low memory problem again. I always purchase the largest sd card that is usable on my device and never save anything like music and photos to internal memory.

  • Record is not displayed in Historical Reports-Activity with no Customer

    Hi All,
    We have an issue in Historical Reports for Activity.we are using Book of Business also.
    Now the issue is under Activity History as subject area, when an activity doesn't have any Customer it should come as Unspecified in the report.
    Like if it doesn't have account assosiated to it then it is shown as Unspecified in the report.
    But for activity with no customer assosiated to it, it is not showing the entire record (Acitivity) in the report.
    When the Customer field is removed from the displayed columns then we are able to see those activities in the report.
    Note:
    But when the Book of Business is not there previously, it was working fine
    An response is appreciated.
    Thanks & Regards,
    Lemu
    Edited by: Lemu on Dec 28, 2010 10:33 PM
    Edited by: Lemu on Dec 28, 2010 10:34 PM

    Hi,
    Yes we have a workaround for this.
    Since the Primary Customer is not exposed as an Activity filed.
    Copy the value of the Primary Customer and display it in a filed of activity using workflows.
    Then replace the customer filed with this filed.
    Then u will get the activity without customer also cause the customer filed is a normal activity field.
    Hope this helps.
    Regards
    Lemu

  • Cube refresh fails with an error below

    Hi,
    We are experiencing this problem below during planning application database refresh. We have been refreshing the database everyday, but all of a sudden the below error is appearing in log. The error is something like below:
    Cube refresh failed with error: java.rmi.UnmarshalException: error unmarshalling return; nested exception is:
    java.io.EOFException
    When the database refresh is done from workspace manually, the database refresh is happening successfully. But when triggered from unix script, its throwing the above error.
    Is it related to some provisioning related issue for which user has been removed from MSAD?? Please help me out on this.
    Thanks,
    mani
    Edited by: sdid on Jul 29, 2012 11:16 PM

    I work with 'sdid' and here is a better explaination of what exactly is going on -
    As part of our nightly schedule we have a unix shell script that executes refresh of essbase cubes from planning using the 'CubeRefresh.sh' shell script.
    Here is how our shell looks like -
    /opt/hyperion/Planning/bin/CubeRefresh.sh /A:<cube name> /U:<user id> /P:<password> /R /D /FS
    Here is what 'CubeRefresh.sh' looks like -
    PLN_JAR_PATH=/opt/hyperion/Planning/bin
    export PLN_JAR_PATH
    . "${PLN_JAR_PATH}/setHPenv.sh"
    "${HS_JAVA_HOME}/bin/java" -classpath ${CLASSPATH} com.hyperion.planning.HspCubeRefreshCmd $1 $2 $3 $4 $5 $6 $7
    And here is what 'setHPenv.sh' looks like -
    HS_JAVA_HOME=/opt/hyperion/common/JRE/Sun/1.5.0
    export HS_JAVA_HOME
    HYPERION_HOME=/opt/hyperion
    export HYPERION_HOME
    PLN_JAR_PATH=/opt/hyperion/Planning/lib
    export PLN_JAR_PATH
    PLN_PROPERTIES_PATH=/opt/hyperion/deployments/Tomcat5/HyperionPlanning/webapps/HyperionPlanning/WEB-INF/classes
    export PLN_PROPERTIES_PATH
    CLASSPATH=${PLN_JAR_PATH}/HspJS.jar:${PLN_PROPERTIES_PATH}:${PLN_JAR_PATH}/hbrhppluginjar:${PLN_JAR_PATH}/jakarta-regexp-1.4.
    jar:${PLN_JAR_PATH}/hyjdbc.jar:${PLN_JAR_PATH}/iText.jar:${PLN_JAR_PATH}/iTextAsian.jar:${PLN_JAR_PATH}/mail.jar:${PLN_JAR_PA
    TH}/jdom.jar:${PLN_JAR_PATH}/dom.jar:${PLN_JAR_PATH}/sax.jar:${PLN_JAR_PATH}/xercesImpl.jar:${PLN_JAR_PATH}/jaxp-api.jar:${PL
    N_JAR_PATH}/classes12.zip:${PLN_JAR_PATH}/db2java.zip:${PLN_JAR_PATH}/db2jcc.jar:${HYPERION_HOME}/common/CSS/9.3.1/lib/css-9_
    3_1.jar:${HYPERION_HOME}/common/CSS/9.3.1/lib/ldapbp.jar:${PLN_JAR_PATH}/log4j.jar:${PLN_JAR_PATH}/log4j-1.2.8.jar:${PLN_JAR_
    PATH}/hbrhppluginjar.jar:${PLN_JAR_PATH}/ess_japi.jar:${PLN_JAR_PATH}/ess_es_server.jar:${PLN_JAR_PATH}/commons-httpclient-3.
    0.jar:${PLN_JAR_PATH}/commons-codec-1.3.jar:${PLN_JAR_PATH}/jakarta-slide-webdavlib.jar:${PLN_JAR_PATH}/ognl-2.6.7.jar:${HYPE
    RION_HOME}/common/CLS/9.3.1/lib/cls-9_3_1.jar:${HYPERION_HOME}/common/CLS/9.3.1/lib/EccpressoAll.jar:${HYPERION_HOME}/common/
    CLS/9.3.1/lib/flexlm.jar:${HYPERION_HOME}/common/CLS/9.3.1/lib/flexlmutil.jar:${HYPERION_HOME}/AdminServices/server/lib/easse
    rverplugin.jar:${PLN_JAR_PATH}/interop-sdk.jar:${PLN_JAR_PATH}/HspCopyApp.jar:${PLN_JAR_PATH}/commons-logging.jar:${CLASSPATH
    export CLASSPATH
    case $OS in
    HP-UX)
    SHLIB_PATH=${HYPERION_HOME}/common/EssbaseRTC/9.3.1/bin:${HYPERION_HOME}/Planning/lib:${SHLIB_PATH:-}
    export SHLIB_PATH
    SunOS)
    LD_LIBRARY_PATH=${HYPERION_HOME}/common/EssbaseRTC/9.3.1/bin:${HYPERION_HOME}/Planning/lib:${LD_LIBRARY_PATH:-}
    export LD_LIBRARY_PATH
    AIX)
    LIBPATH=${HYPERION_HOME}/common/EssbaseRTC/9.3.1/bin:${HYPERION_HOME}/Planning/lib:${LIBPATH:-}
    export LIBPATH
    echo "$OS is not supported"
    esac
    We have not made any changes to either the shell or 'CubeRefresh.sh' or 'setHPenv.sh'
    From the past couple of days the shell that executes 'CubeRefresh.sh' has been failing with the error message below.
    Cube refresh failed with error: java.rmi.UnmarshalException: error unmarshalling return; nested exception is:
    java.io.EOFException
    This error is causing our Essbase cubes to not get refreshed from Planning cubes through these batch jobs.
    On the other hand the manual refesh from within Planning works.
    We are on Hyperion® Planning – System 9 - Version : 9.3.1.1.10
    Any help on this would be greatly appreciated.
    Thanks
    Andy
    Edited by: Andy_D on Jul 30, 2012 9:04 AM

  • How Verizon WIreless Deals With A Customer's Issues With A Flawed Device

    (link removed)
    Let me start at the beginning…
    I have had a bad history with phones during my 6 years I been with Verizon Wireless(VZW). All the phones I had with them always have some manufacturer issues. I either had to pay a deductible or was allowed to exchange it for free due to it still being under warranty.  I had to go through this 14 times in under 6 years. For the most part, Verizon Wireless has been very helpful with these issues & the amazing service they provided as kept me a very loyal customer. These qualities even lead me to sign up for Verizon FiOS over Comcast when I moved into my new apartment.
    On February 17th, 2014, I received my tax refund. Most of it was going to repairs for my car, but for a birthday gift to me, I wanted to upgrade my phone. At the time, VZW had a deal to trade in your old phone & upgrade to a new phone. Your trade in got $100 taken off the cost of your new phone. I thought that was a sweet deal since the phone I had, The Motorola Razr Maxx HD was my 4th replacement to replace my original phone from when I first upgrade my phone with a new contract 2 years ago, The Motorola Droid 3. The Razr Maxx HD was a good phone but not what I wanted, It did what it needed to do & the technology was steller. Just not my first choice in a phone.
    Since the Droid 3 was no longer in production, i always had to get a replacement phone VZW saw fit for me to get. Now with my contract up & my opportunity to get a new phone, I knew what I wanted   I wanted the Samsung Galaxy Note 3 now. It has so many amazing features, apps & it is the perfect phone for someone my size. I can easily text with it, I do not feel I will crush the phone holding on to it & all of the hardware in it is like nothing on the market at that time. I been researching the phone months before it came out & I knew once I had the money, this is the phone I wanted.
    So I went to the VZW Store ready to make the exchange and have a phone I wanted finally for once in nearly 2 years. I got there to be helped my a gentleman named Teddy. He was eager to help me. I told him why I was there & instantly got the ball rolling. My phone I wanted was in stock, I was able to get $100 from the trade-in promotion. HE also informed me I could get a free tablet by just paying the taxes for it, A mere $15 & The Note 3 was on sale. I could walk out this day with a new phone AND a tablet for $172! So I agreed to it & all I had to do was pay. Then the problems started…
    I was told I could not pay with my debit card. This was due to an issue of a returned payment. An issue I had with VZW due to their company in October 2013 in which they took 9 days to process my monthly bill payment to only return it when the funds was still available to complete it. So I had to leave the store to find an ATM to withdrawal the cash so I could purchase the phone & tablet. Once I came back, we tried to finish the sale. Now I was told I could not trade in my phone due to the fact VZW did not allow me to make debit payments because of their own error. I was told i could pay full price for the phone and I could not get the tablet. I declined & left the store.
    Very upset, I called VZW’s customer service line to formally complain. They could do nothing to help me since no one, not even a supervisor could fix these restrictions to my account. This made me more upset, so I went above their head & reported my situation to The Better Business Bureau(BBB). Within 7 days, a Manager From VZW’s Home Headquarters, named Brian (removed), finally called me to resolve my issues. HE apologized, removed my account restrictions & was sending me A Galaxy Note 3 for my troubles free of charge. I wanted the tablet too but did not care at this point. I just wanted a phone I wanted for once & I can do without a tablet. I never went out of my way to get one before & I was not planning to now.
    On February 25, I received my new phone. I instantly fell in love. The phone was the perfect size for me & it worked just like every review I read online said it would. Then on February 27th, the phone began to have charging issues. The factory charging cable that came the the phone began to have issues charging the phone, then not recognizing the charger at all. I called customer service to make a complaint. This is when I learned for the first time that The Samsung Galaxy Note 3 has a defect with it’s charging cable & charging the device. They told me I could either mail the cable for a replacement or try to get the replacement at a store. So I decided to go to the same VZW store to get the replacement.
    Once I got there, I had to wait in line for 30 minutes to finally speak to someone. Once I did, I was told they had no chargers in store. All that could be done was call Samsung & have a replacement phone sent to me. I asked what would I do for a charger until then & they said I could use the micro USB charger from my last phone to charge it.
    So I mailed the charger to Samsung, who said it would take 8-10 days to get my replacement. During this time, the phone began to now stop holding a long charge. So I again called customer service. I was again told to go to the VZW store to get a replacement charger. I went back to the store again to be told they could do nothing for me since I did not have to original charger. All I the could do was sell me a mobile charger for 50% off. Since i need my phone, I had no choice. I had to spend $30 now on a device to help my faulty one.
    March 6th, my replacement charger arrived. I was happy because now I can charge my phone with the proper charger & get a full battery life from it. That same day the charger had the same issues again. So i instantly took it to the Verizon Store to be told I need to call customer service for a replacement phone. So I return home to see in my mailbox is my VZW bill. The statement says my bill is $400! Verizon Wireless & Brian (removed) had charged me full price for my phone despite what he told me when he called me.
    I instantly called his office to only get his answering machine. I left a very angry yet respectful message explaining my disgust with what he & VZW have done since I got this phone. I said I refuse to pay anything until this issue is fully resolved. I then proceeded to file another complaint to The BBB. This time I would get no response from VZW. Instead i had to call and chat online with their customer service lines for over a month to have a REFURBISHED device, a replacement battery & a generic charging cable sent to me. My phone still has charging issues & I must travel around DAILY with my mobile charger to make it a whole day to be able to use my device.
    Verizon Wireless and Brian (removed) will not resolve this issue for me. Instead they have suspended services to my phone and are forcing me to pay the full price for the phone or having my service “permanently discontinued”.
    I am left with no choice but to pay this by next month. I need my phone for personal, business & emergency reasons just like everyone else. I can not pay this AND an early termination fee. Verizon Wireless has done nothing to help me & now I am stuck in a contract for the next 16 months with a company that has done this to me during the last 2+ months. I have a improper working phone and they get $400 for it and Brian (removed) gets his commission.
    Before I pay this bill, I am making one last complaint to The BBB & I am spreading my story across social media like wildfire, I am hoping someone at Verizon Wireless sees this. MAYBE they will do the right thing. Then again, they had the chance to & have not….
    Mr. Brian (removed) & Verizon Wireless,
    My Name IS Reginald (removed). Due to months of complaints you should very well know who I am. Since you will NOT help me, I have no choice but to play by your rules and pay you ridiculous cost for a phone despite the act of what I was verbally told. You & your company you work for have had countess times to make this right & you have not. I might have to be stuck in a situation like this, but the entire internet will now learn of your actions & how you treat people. Maybe this will teach you all how to properly treat your paying customers. Someone can still make this right. You have my number, but you would have to reactivate it to contact me though.
    Regards,
    Reginald (removed)
    Edited as required by the Verizon Wireless Terms of Service
    Message was edited by: Admin Moderator

        Reginald, We absolutely want to make this a better experience. Would it be possible for us to work together in direct message. Please follow us and we can get started.
    Sheritah_vzw
    Follow us on Twitter
    @VZWSupport

  • NOT thrilled with the customer service I just received.

    I just ended a call with a customer service representative by the name of Amber.
    Like the many users on this forum, I was up at 12:00am on 9/12 pre-ordering 2 Iphone 6+ 128g devices.  Throughout the pre-order process, I was shown a delivery date of no later than 7:00pm on Sept. 19th.  I submitted my order within minutes, only to wake up to an e-mail with a delivery date of 10/7/14.  I called customer service that day and was told that I would have the phones on Sept. 19th despite what the email said.  Now five days later,  my order status remains "we received your order and it is in process" and the Expected Ship Date is "Not available at this time."  Further, my credit card has yet to be charged.  Other users on this forum submitted their orders for the same phones after me, yet have receveid tracking numbers showing a deliver date of Sept. 19th.
    While on the phone with Amber, she suggested that I go to a retailer on Friday to see if I can get the devices.  Needless to say, I was quite offended by her recommendation.  I reminded her that I intended on renewing two contracts with Verizon in exchange for two phones being in my hands on Friday.  I also suggested that if she wants me to go to a retailer, then Verizon runs the risk of losing my longstanding account if another provider provides me with a better deal.  She then back tracked and said that was not what she was trying to suggest.
    Verizon, I would like to speak or deal with a customer service rep who can give me assurance that my pre-ordered phones will be delivered on 9/19 as was promised when I placed by pre-order just minutes after they went up for pre-sale.  With all due respect, I am looking for answers, not a link to an order status page that I have been checking far too often over the last five days.  Thank you.

        GMSwaim88,
    Thank you so much for those details. We strive to provide you with the best customer service there is to offer. I have sent you a private message. Please respond back to that message for me.
    KevinR_VZW
    Follow us on Twitter @VZWSupport

  • Is it possible to override the built-in PDF format handler with a custom IFilter for PDF?

    Hi,
    SharePoint 2013 comes with a built-in "format handler" for PDF now, so it can index PDF files out of the box. This is great for most users, as it now no longer is necessary to install a third-party IFilter for crawling PDF documents.
    My question is, is it possible to override the built-in format handler for PDF with a custom IFilter for PDF? I played with the Set-SPEnterpriseSearchFileFormatState and Remove-SPEnterpriseSearchFileFormat cmdlets. While it is possible to deactivate
    the built-in format handler, I was not able to remove it and to create a new one that activates a custom IFilter for PDF files.
    Background of the question: While the new built-in format handler for PDF will probably be sufficient for many SharePoint users, some need additional capabilities regarding indexing if PDF documents, e.g. extraction of custom metadata from PDF's document
    information dictionary and embedded XMP metadata. PDFlib GmbH, the company I work form, sells an IFilter for PDF, and of course we would like to continue to offer this for SharePoint 2013.
    Thanks
    Stephan

    You should be able to replace it with any ifilter you want, this is the procedure for installing it:
    Install PDF iFilter 9.0 (64 bit) from
    http://www.adobe.com/support/downloads/detail.jsp?ftpID=4025 (http://www.adobe.com/support/downloads/detail.jsp?ftpID=4025)
    Download PDF icon picture from Adobe web site
    http://www.adobe.com/misc/linking.html (http://www.adobe.com/misc/linking.html)  and copy to C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\TEMPLATE\IMAGES\
    Add the following entry in docIcon.xml file, which can be found at: C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\TEMPLATE\XML
    <Mapping Key="pdf" Value="pdficon_small.png" />
    Add pdf file type on the File Type page under Search Service Application
    Open regedit
    Navigate to the following location:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office Server\15.0\Search\Setup\ContentIndexCommon\Filters\Extension
    Right-click > Click New > Key to create a new key for .pdf
    Add the following GUID in the default value
    {E8978DA6-047F-4E3D-9C78-CDBE46041603}
    •Restart the SharePoint Server Search 15
    •Reboot the SharePoint servers in Farm
    •Create a Test site (with any out-of-box site template) and create a document library upload any sample PDF document(s).
    •Perform FULL Crawl to get search result.
    Once the crawl is completed we will get search results.
    Kind regards,
    Margriet Bruggeman
    Lois & Clark IT Services
    web site: http://www.loisandclark.eu
    blog: http://www.sharepointdragons.com

  • Error while accessing application with the custom components

    Hi experts,
    I have an application (HAP_MAIN_DOCUMENT) of component FPM_OIF_COMPONENT which uses a Webdynpro component with the same name (HAP_MAIN_DOCUMENT). This Webdynpro component (HAP_MAIN_DOCUMENT) uses 2 other components (HAP_DOCUMENT_BODY and HAP_DOCUMENT_HEADER). For my client requirement, i need to create the custom components by copying from standard components as the UI layout changes are quiet huge and not manageable with the enhancements. To accomodate this i have changed the standard configurations by replacing the standard web dynpro components with the custom ones copied. Apart fomr this there are no changes to the standard.
    While trying to access the application, i am getting the error as Null object reference.
    the details of the error is as below. Please advice.
    Heading 1: h1. P:ortal Error
    The URL http://******************/sap/bc/webdynpro/sap/HAP_MAIN_DOCUMENT/ was not called due to an error.
    Note
    The following error text was processed in the system DSD : Access via 'NULL' object reference not possible.
    The error occurred on the application server ddrsap12_DSD_01 and in the work process 0 .
    The termination type was: RABAX_STATE
    The ABAP call stack was:
    Method: WDDOINIT of program /1BCWDY/LUR96POELQNL3TIUWPYS==CP
    Method: IF_WDR_VIEW_DELEGATE~WD_DO_INIT of program /1BCWDY/LUR96POELQNL3TIUWPYS==CP
    Method: DO_INIT of program CL_WDR_DELEGATING_VIEW========CP
    Method: INIT_CONTROLLER of program CL_WDR_CONTROLLER=============CP
    Method: INIT_CONTROLLER of program CL_WDR_VIEW===================CP
    Method: INIT of program CL_WDR_CONTROLLER=============CP
    Method: GET_VIEW of program CL_WDR_VIEW_MANAGER===========CP
    Method: BIND_ROOT of program CL_WDR_VIEW_MANAGER===========CP
    Method: INIT of program CL_WDR_VIEW_MANAGER===========CP
    Method: INIT_CONTROLLER of program CL_WDR_INTERFACE_VIEW=========CP
    Heading 2: h2. ST22 - Dump Analysis
    Error analysis
        An exception occurred that is explained in detail below.
        The exception, which is assigned to class 'CX_SY_REF_IS_INITIAL', was not
         caught in
        procedure "WDDOINIT" "(METHOD)", nor was it propagated by a RAISING clause.
        Since the caller of the procedure could not have anticipated that the
        exception would occur, the current program is terminated.
        The reason for the exception is:
        You attempted to use a 'NULL' object reference (points to 'nothing')
        access a component.
        An object reference must point to an object (an instance of a class)
        before it can be used to access components.
        Either the reference was never set or it was set to 'NULL' using the
        CLEAR statement.
    Information on where terminated
        Termination occurred in the ABAP program "/1BCWDY/LUR96POELQNL3TIUWPYS==CP" -
         in "WDDOINIT".
        The main program was "SAPMHTTP ".
        In the source code you have the termination point in line 4640
        of the (Include) program "/1BCWDY/B_LUXVEOR5WUW66V6QRRNU".
        Termination occurred in a Web Dynpro application
          Web Dynpro Component          ZWD_HAP_DOCUMENT_HEADER
          Web Dynpro Controller         VW_HEADER_MAIN
        The termination is caused because exception "CX_SY_REF_IS_INITIAL" occurred in
        procedure "WDDOINIT" "(METHOD)", but it was neither handled locally nor
         declared
        in the RAISING clause of its signature.
        The procedure is in program "/1BCWDY/LUR96POELQNL3TIUWPYS==CP "; its source
         code begins in line
        4619 of the (Include program "/1BCWDY/B_LUXVEOR5WUW66V6QRRNU ".
    Active Calls/Events
    No.   Ty.          Program                             Include                             Line
          Name
       33 METHOD       /1BCWDY/LUR96POELQNL3TIUWPYS==CP    /1BCWDY/B_LUXVEOR5WUW66V6QRRNU       4640
          CL_VW_HEADER_MAIN_CTR=>WDDOINIT
          Web Dynpro Component          ZWD_HAP_DOCUMENT_HEADER
          Web Dynpro Controller         VW_HEADER_MAIN
       32 METHOD       /1BCWDY/LUR96POELQNL3TIUWPYS==CP    /1BCWDY/B_LUXVEOR5WUW66V6QRRNU         70
          CLF_VW_HEADER_MAIN_CTR=>IF_WDR_VIEW_DELEGATE~WD_DO_INIT
          Web Dynpro Component          ZWD_HAP_DOCUMENT_HEADER
          Web Dynpro Controller         VW_HEADER_MAIN
       31 METHOD       CL_WDR_DELEGATING_VIEW========CP    CL_WDR_DELEGATING_VIEW========CM003     3
          CL_WDR_DELEGATING_VIEW=>DO_INIT
       30 METHOD       CL_WDR_CONTROLLER=============CP    CL_WDR_CONTROLLER=============CM00Q     3
          CL_WDR_CONTROLLER=>INIT_CONTROLLER
       29 METHOD       CL_WDR_VIEW===================CP    CL_WDR_VIEW===================CM00K     5
          CL_WDR_VIEW=>INIT_CONTROLLER
       28 METHOD       CL_WDR_CONTROLLER=============CP    CL_WDR_CONTROLLER=============CM002     7
          CL_WDR_CONTROLLER=>INIT
       27 METHOD       CL_WDR_VIEW_MANAGER===========CP    CL_WDR_VIEW_MANAGER===========CM008    70
          CL_WDR_VIEW_MANAGER=>GET_VIEW
       26 METHOD       CL_WDR_VIEW_MANAGER===========CP    CL_WDR_VIEW_MANAGER===========CM005    23
          CL_WDR_VIEW_MANAGER=>BIND_ROOT
       25 METHOD       CL_WDR_VIEW_MANAGER===========CP    CL_WDR_VIEW_MANAGER===========CM00B    17
          CL_WDR_VIEW_MANAGER=>INIT
       24 METHOD       CL_WDR_INTERFACE_VIEW=========CP    CL_WDR_INTERFACE_VIEW=========CM004    11
          CL_WDR_INTERFACE_VIEW=>INIT_CONTROLLER
       23 METHOD       CL_WDR_CONTROLLER=============CP    CL_WDR_CONTROLLER=============CM002     7
          CL_WDR_CONTROLLER=>INIT
       22 METHOD       CL_WDR_VIEW_MANAGER===========CP    CL_WDR_VIEW_MANAGER===========CM008    70
          CL_WDR_VIEW_MANAGER=>GET_VIEW
    Thanks In advance,
    Regards,
    Ravi.

    Hi, I'm closing this thread and opening the same in another as the content got pasted in reader un friendly format and i'm unable to change the format.
    Thanks,
    Ravi.

  • Error while binding the model with the custom controller

    Hi All,
    I first started with a dummy project and in that binded the model with the custom controller.
    For some reason, I deleted the project and created a new one. I have deleted the whole project from the workspace.
    Now, when I am trying to bind the model  again , I am getting an error when selecting the response parameters saying that DUPICATE ENTRIES.Ideally it should not happen when I am deleting it completely.
    I am using a Webservice Model. Can any one help me out to resolve the same.
    Looking forward for your response.
    Regards
    Dipendra

    Hi Raman,
    I did that and even I have Installed the IDE again.
    Still I have that error.
    Regards
    Dipendra

  • Re: Thoroughly fed up with BT customer service.

    I too am fed up with BT Customer Services - they seem only able to pursue their own script and simply do not listen to what the customer is saying. On numerous occasions they ask a question just seconds after they have received my aswer to that very question. 
    I have been experencing a particular broadband / exchange line problem for over three years, have kept a detailed log of my dealings with BT for over a year and it appears that there is no way of escalating the issue within BT. Follow 'contact us' and 'complaints' on teh website and see if you can get anywhere other than teh standard customer servoces number. Customer services say they are unable to escalate to a more senior person / department.
    'Customer Services' - to me a rather hollow joke, especially as they are in effect a monopoly provider and being paid millions of pounds of taxpayers money to roll out Infinity. 
    I think the answer either lies with legal action but perhaps if enough of us rais ethe issue with our MP we might be able to more effectively influence what is going on.

    I have asked a moderator to provide assistance, they will post an invite on this thread.
    They are the only BT employees on this forum, and are a UK based team of people, who take personal ownership of your problem.
    Once you get a reply, make sure that you are logged into the forum, then click on their name, you will see a screen like this. Click on the link as shown below.
    Please do not send them a personal message, as they may not be on duty for a long time, and your message will not be tracked properly.
    For your own security, do not post any personal details, on this forum. That includes any tracking number you are give.
    They will respond either by phone or e-mail within 5-6 working days.
    Please use the tracked e-mail, to reply, not via the forum. Thanks
    This is the form you should see when you click on the link. If you do not see this form, then you have selected the wrong link.
    When you submit the form, you will receive an enquiry number, so please keep a note of it
    There are some useful help pages here, for BT Broadband customers only, on my personal website.
    BT Broadband customers - help with broadband, WiFi, networking, e-mail and phones.

  • Is CPA Cache refresh linked with  ftp or file pooling process in XI?

    Hi,
    I have a file to file scenario using Transport protocol as FTP in XI 3.0 SP 15.
    When we try to sends some file using ftp protocol where we are using
    FTP  connection parameters
    Server                          = <CORRECT IP>,
    Port                               =  21 ,
    User name                <CORRECT NAME>,
    Password                  <PASSWORD> ,
    Data Connection           = Active
    Connection Seq          = None
    Connection Mode          = Permanently
    Transfer Mode            =   Text
    Processing Parameters
    Quality of Service    = Exactly Once
    Pooling Interval        = 1 sec
    Processing Mode    = delete
    File Type                   = Text
    File encoding           = utf-8                 
    The problem we are facing like some time the ftp is not working even the file is present in the location for pick up. If few files are stacked up to be collected then when we are using CPA Cache refresh in Full mode manually then it fetches all the files from the location but the problem is that ,we have a time constraint for this process to be completed in just 60 seconds if we are not able to pick up a  file in 60 Secs then the file will be treated as invalid.
    So I just want to know how Manual CPA CACHE refresh in full mode generally solve the problem.
    Next if more files will be stacked up then cache refresh also failed to solve the problem and more cache refresh result in NOT pooling any other files in XI including the above discussed flow.
    So,in anyway Cache refresh linked with ftp or file pooling process in XI?
    Please assist me in correctly understating the whole problem and what solution could be put to solve this.
    Thanks,
    Satya
    Edited by: Satya Jethy on Mar 14, 2008 12:28 PM

    Hi Suraj,
      If you see my query i have mentioned that the pooling interval is 1 Second.
    If we are not able to pick the file with in 60 Secs as this is a  real time scenario so the file will be treated as a invalid file.
    Moreover this problem is happening some time.
    I have also checked the component monitoring it is saying everything is ok as because we are receiving the file with out any error and the file transfer is also success.The only problem is that it is not collecting the files from the given location.
    Hope i make you understnad the problem .If not please revert back i will try to explain once again.
    Thanks,
    Satya

Maybe you are looking for

  • Garbage collection question

    I'm developing a cash card app which will need to store transactions on the card. Basically it may make several cash transactions with terminals that are not connected to the internet (and thus can't sync) and once in a while the user will interface

  • New Year Security Issue

    Guys, With the new year a lot of internet sites are instituting renewed security logins. Has any one else found that the new security requirements are not compatible with Safari? Regards, Phil Macintosh b'Gosh

  • Editing in Photoshop through iPhoto

    When I get photos via Apple's Mail app and choose the Open With _ option (in this case, Adobe Photoshop CS4 for editing), then  Save (while still in Photoshop), where is the file stored? I'd like to be able to then save the edited photos in iPhoto (a

  • Links being rotated on replace pages

    When I replace pages from pages that were previously printed to Adobe PDF from ESRI ArcGIS application with ones exported to PDF the links rotate and I cannot figure out how to fix this problem.  I need to export from ESRI ArcGIS to take advantage of

  • NI Developer Suite Installati​on

    Dear Sir:       I just installed NI Developer Suite 8.5.   I established connectivity with my target device and can run programs.       However, there is an issue that has arisen and I require some installation specific information.        I have rea