Lazy TreeModel questions...

I'm considering a TreeModel that lazily instantiates its data when required.
Essentially it won't bother loading data for a node until getChildCount is called for that node. This works alright - getChildCount doesn't get called until the nodes are expanded in the view.
However, I would also like the data to be refreshed when a node is closed and expanded again. One way would be to discard the data when the node is collapsed. Another way could be to rebuild the data on the treeExpanded event. The latter seems dangerous - firing a nodeStructureChanged on the node that has just expanded will cause it to close again! That just leaves discarding the data when the node is collapsed; easy.
The problem comes from getChildCount being called on some nodes that are not open but which have previously been opened. This leads to the model reloading the data for nodes that are not open in the view.
Has someone got a more comprehensive idea of when getChildCount will be called by a JTree?
I incorrectly assumed it would be only if the following were true:
1. The node was expanded in that JTree
2. isLeaf returns false
Perhaps there's something more involved going on with the UI not trusting the isLeaf method?
I'd appreciate any thoughts on a lazy TreeModel which might experience unnotified changes to the underlying data.
Thanks in advance guys.

It would appear that BasicTreeUI attempts to optimise its calls to getChildCount by trying to avoid calling until the node is expanded. However, once it's expanded a node it will happily continue calling getChildCount. Thus collapsing a node will still leave it thinking that it's safe to continue calling getChildCount to check whether an expand control is needed. Of course that's correct behaviour because the underlying model shouldn't have changed without firing an appropriate event.
Firing a nodeStructureChanged event when the node closes, indicating to the tree that the underlying data has been discarded has sorted things out.
Sorry for answering my own question!
Still, if anyone's got any views on lazy tree models having written some of their own I'd be glad to hear them.

Similar Messages

  • JTreeTable / TreeModel question

    Hi all,
    I have two questions about JTrees and TreeModels.
    I have an application which builds a TreeModel from an XML file, and displays it in a JTreeTable (see: http://java.sun.com/products/jfc/tsc/articles/treetable1/). There are two panels to display an XML file. The XML file consists of parameters which all have a name and a value:
    root
    |- header
    |  |- parameter1                value
    |  |- parameter2                value
    |  |- parameter3                value
    |- data
       |- parameter1                value
       |   |- parameter1.1          value
       |   |- parameter1.2          value
       |- parameter2                value
       |   |- parameter2.1          value
       |- parameter3                value
       |- parameter4                valueNow I want to compare two nodes (one from both panels). The user can select a node on both panels to compare.
    There are two tasks I want to implement:
    1) I want to compare the parameters without taking into account the order in which they appear. A parameter is considered different when it has the same parent, the same name, but a different value.
    2) I also want to separate those parameters which are unique for both trees (it doesn't appear in the other tree)
    Thus, if I want to compare a node from jtree1, I first need to find a corresponding node in jtree2. If I can't find it, it is unique in jtree1, else I can compare the values and decide if they are the same. But how can I check for the corresponding node in jtree2?
    There is also a second problem, how can I get the selected node from a JTreeTable? I tried with getSelectedIndex(), but when parameter1.1 is selected, the getSelectedIndex returns 7, while the root lement only has two child nodes... so getChildAt(index) will not work.

    You can accomplish what you are looking to do through the use of something called model filtering. I have published an article on it on IBM's website at http://www-106.ibm.com/developerworks/library/j-filters/?dwzone=java.
    I would direct you to the part that discusses 'exclusion filters' in particular. If you want to adapt this to the TreeModel architecture, it should be fairly simple.
    Mitch Goldstein
    Author, Hardcore JFC (Cambridge Univ Press)
    [email protected]

  • Java and lazy loading

    Hello all!
    I have three question regarding lazy loading:
    Question one: Can it be said that java works by lazy loading by default?
    Question two: What is the opposite of lazy loading?
    Question three: How can I change this default behavior to the opposite of lazy loading?
    Thanks in advance,
    Julien.

    1. Yes.
    2. Eager loading.
    3. You can't. You can get a half-decent approximation using a suitable classloader, though. After defining your class, you parse the string table and load the classes referred to therein. BCEL may useful for the parsing.

  • The "lazy question" Thread

    Bit of fun for our amusement.
    Add to the thread by QUOTING what you consider is a lazy question from a lazy poster...
    Lack of hardware or system details  wont usually count...and be careful about second language  situations.
    Rule: NO discussions in the thread.  Let the quote speak for itself and stand alone.
    Be careful it doesnt back fire on you

    Heres one for you Snarky.
    http://forums.adobe.com/thread/1440718?tstart=0
    hahahahahaha
    youre right
    more public ridicule at the expense of a first time poster
    keep it up
    this is hilarious
    I am sorry Snarky...
    ....as you are a benevolent soul, I  truly thought you would be able to help that first time poster phrase his question so we could help.  Maybe you could have helped him as well.
    Fact is you help no one in this Forum and never have.
    Your "Peon status" would actually mean you have done some work!
    Meantime..hopefully you get some benefit and wisdom from those here that willingly and ably do so unconditionally.

  • Lazying question

    Hi.
    I am not sure what is going on, so here we go :)
    I have a "lazy" ManyToOne relationship :
    @Entity
    public class Build implements Serializable, Comparable<Build> {
    @ManyToOne (fetch=FetchType.LAZY)
    @JoinColumn(name="MYSWRELEASE_RELEASEID")
    protected SWRelease mySWRelease;
    public void setSWRelease (SWRelease in) {
    this.mySWRelease=in;
    public SWRelease getSWRelease() {
    return mySWRelease;
    @Entity
    public class SWRelease implements Serializable, Comparable<SWRelease> {
    @OneToMany(cascade=CascadeType.ALL, mappedBy="mySWRelease", fetch=FetchType.LAZY)
    private Set<Build> myBuilds = new TreeSet<Build>();
    public void setBuilds (Set<Build> in) {
    this.myBuilds=in;
    public Set<Build> getBuilds() {
    return myBuilds;
    When I try to get the builds from SWRelease , I get {IndirectSet: not instantiated},
    here is the test code:
    SWRelease sr=em.find(SWRelease .class,1);
    System.out.println("release builds: "+sr.getBuilds());
    prints:
    release builds: {IndirectSet: not instantiated}
    but I can get the SWRelease from the build:
    Build b=em.find(Build.class,1);
    System.out.println("release : "+b.getSWRelease());
    prints:
    release : Release 1
    Why I am getting {IndirectSet: not instantiated} ?
    Here is the code + persitance.xml
    import java.io.Serializable;
    import java.util.*;
    import javax.persistence.*;
    @Entity
    public class Build implements Serializable, Comparable<Build> {
    private static final int HASH_PRIME=37;
    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue
    private Integer buildId;
    @ManyToOne (fetch=FetchType.LAZY)
    @JoinColumn(name="MYSWRELEASE_RELEASEID")
    protected SWRelease mySWRelease;
    @Column(name="number")
    private String number;
    @Column(name="date")
    @Temporal(TemporalType.DATE)
    private Date date;
    public Build() {
    super();
    public Date getDate() {
    return date;
    public void setDate(Date in) {
    this.date=in;
    public String getNumber() {
    return number;
    public void setNumber(String in) {
    this.number=in;
    public void setBuildId(Integer in) {
    this.buildId = in;
    public Integer getBuildId() {
    return this.buildId ;
    public void setSWRelease (SWRelease in) {
    this.mySWRelease=in;
    public SWRelease getSWRelease() {
    return mySWRelease;
    //@Override
    public int hashCode() { 
    int ret=0;
    ret = HASH_PRIME * (ret + (date !=null ? date.hashCode() : 0));
    ret = HASH_PRIME * (ret + (number !=null ? number.hashCode() : 0));
    ret = HASH_PRIME * (ret + (buildId !=null ? buildId .hashCode() : 0) );
    return ret;
    //@Override
    public int compareTo(Build other) {
    if(other!=null) {
    return this.hashCode() - other.hashCode();
    return -1;
    //@Override
    public String toString() { 
    String attr1= " date=" +( getDate() !=null ? ""+ getDate() : "NOT SET" );
    String attr2= " number=" +( getNumber() !=null ? ""+ getNumber() : "NOT SET" );
    String id = " buildId=" + ( getBuildId() !=null ? ""+ getBuildId() : "NOT SET" );
    return attr1 + attr2 + id ;
    //@Override
    public boolean equals(Object obj) {
    if (obj == null) {
    return false;
    if (obj == this) {
    return true;
    if (!(obj instanceof Build)) {
    return false;
    Build other = (Build) obj;
    return (buildId !=null ? buildId.equals(other.buildId) : other.buildId !=null ? false:true) && ( date !=null ? date.equals(other.date) : other.date !=null ? false:true ) && ( number !=null ? number.equals(other.number) : other.number !=null ? false:true );
    public Build clone() {
    Build ret= new Build();
    ret.setBuildId(buildId);
    ret.setDate(this.getDate());
    ret.setNumber(this.getNumber());
    return ret;
    package com.xilinx.srs.jpa.autogen;
    import java.io.Serializable;
    import java.util.*;
    import javax.persistence.*;
    @Entity
    public class SWRelease implements Serializable, Comparable<SWRelease> {
    private static final int HASH_PRIME=37;
    private static final long serialVersionUID = 1L;
    //Attribute list
    @Id
    @GeneratedValue
    private Integer releaseId;
    @OneToMany(cascade=CascadeType.ALL, mappedBy="mySWRelease", fetch=FetchType.LAZY)
    private Set<Build> myBuilds = new TreeSet<Build>();
    @Column(name="name")
    private String name;
    @Column(name="version")
    private String version;
    public SWRelease() {
    super();
    public void setReleaseId(Integer in) {
    this.releaseId = in;
    public Integer getReleaseId() {
    return this.releaseId ;
    public String getName() {
    return name;
    public void setName(String in) {
    this.name=in;
    public String getVersion() {
    return version;
    public void setVersion(String in) {
    this.version=in;
    * Setter for the many side of OneToMany mapping to <code>Build</code>.
    * @param in will assing myBuilds to in
    public void setBuilds (Set<Build> in) {
    this.myBuilds=in;
    public Set<Build> getBuilds() {
    return myBuilds;
    public int hashCode() { 
    int ret=0;
    ret = HASH_PRIME * (ret + (name !=null ? name.hashCode() : 0));
    ret = HASH_PRIME * (ret + (version !=null ? version.hashCode() : 0));
    ret = HASH_PRIME * (ret + (releaseId !=null ? releaseId .hashCode() : 0) );
    return ret;
    public int compareTo(SWRelease other) {
    if(other!=null) {
    return this.hashCode() - other.hashCode();
    return -1;
    public String toString() { 
    String attr1= " name=" +( getName() !=null ? ""+ getName() : "NOT SET" );
    String attr2= " version=" +( getVersion() !=null ? ""+ getVersion() : "NOT SET" );
    String id = " releaseId=" + ( getReleaseId() !=null ? ""+ getReleaseId() : "NOT SET" );
    return attr1 + attr2 + id ;
    public boolean equals(Object obj) {
    if (obj == null) {
    return false;
    if (obj == this) {
    return true;
    if (!(obj instanceof SWRelease)) {
    return false;
    SWRelease other = (SWRelease) obj;
    return (releaseId !=null ? releaseId.equals(other.releaseId) : other.releaseId !=null ? false:true) && ( name !=null ? name.equals(other.name) : other.name !=null ? false:true ) && ( version !=null ? version.equals(other.version) : other.version !=null ? false:true );
    //@Override
    public SWRelease clone() {
    SWRelease ret= new SWRelease();
    ret.setReleaseId(releaseId);
    ret.setName(this.getName());
    ret.setVersion(this.getVersion());
    return ret;
    <?xml version="1.0" encoding="UTF-8"?>
    <persistence xmlns="http://java.sun.com/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
    persistence_1_0.xsd" version="1.0">
    <persistence-unit name="test" >
    <provider>oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider</provider>
    <class>com.xilinx.srs.jpa.autogen.Build</class>
    <class>com.xilinx.srs.jpa.autogen.SWRelease</class>
    <properties>
    <!-- Provider-specific connection properties -->
    <property name="toplink.jdbc.driver" value="com.mysql.jdbc.Driver"/>
    <property name="toplink.jdbc.url" value="jdbc:mysql://xcort02:3306/whyme"/>
    <property name="toplink.jdbc.user" value="me"/>
    <property name="toplink.jdbc.password" value="whyme"/>
    <!-- Provider-specific settings -->
    <property name="toplink.ddl-generation" value="none"/>
    <property name="toplink.logging.level" value="FINEST" />
    <property name="toplink.create-ddl-jdbc-file-name" value="test-create-tables.sql"/>
    <property name="toplink.drop-ddl-jdbc-file-name" value="test-drop-drop.sql"/>
    <property name="toplink.target-database" value="MySQL4"/>
    <property name="toplink.cache.type.default" value="SoftWeak" />
    <property name="toplink.jdbc.write-connections.max" value="1" />
    <property name="toplink.jdbc.write-connections.min" value="1" />
    <property name="toplink.jdbc.read-connections.max" value="1" />
    <property name="toplink.jdbc.read-connections.min" value="1" />
    <property name="toplink.weaving" value="true"/>
    </properties>           
         </persistence-unit>
    </persistence>
    Here is the log trace:
    [TopLink Finest]: 2008.04.17 05:43:55.611--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.weaving; value=true
    [TopLink Finest]: 2008.04.17 05:43:55.678--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.orm.throw.exceptions; default value=true
    [TopLink Finer]: 2008.04.17 05:43:55.678--ServerSession(5462872)--Thread(Thread[main,5,main])--Searching for default mapping file in file:/home/brotelan/sandboxes/HEAD/env/Misc/ReleaseTools/lib/jexcelapi/build/
    [TopLink Config]: 2008.04.17 05:43:56.264--ServerSession(5462872)--Thread(Thread[main,5,main])--The alias name for the entity class [class com.xilinx.srs.jpa.autogen.SWRelease] is being defaulted to: SWRelease.
    [TopLink Config]: 2008.04.17 05:43:56.269--ServerSession(5462872)--Thread(Thread[main,5,main])--The table name for entity [class com.xilinx.srs.jpa.autogen.SWRelease] is being defaulted to: SWRELEASE.
    [TopLink Config]: 2008.04.17 05:43:56.313--ServerSession(5462872)--Thread(Thread[main,5,main])--The column name for element [private java.lang.Integer com.xilinx.srs.jpa.autogen.SWRelease.releaseId] is being defaulted to: RELEASEID.
    [TopLink Config]: 2008.04.17 05:43:56.417--ServerSession(5462872)--Thread(Thread[main,5,main])--The alias name for the entity class [class com.xilinx.srs.jpa.autogen.Build] is being defaulted to: Build.
    [TopLink Config]: 2008.04.17 05:43:56.418--ServerSession(5462872)--Thread(Thread[main,5,main])--The table name for entity [class com.xilinx.srs.jpa.autogen.Build] is being defaulted to: BUILD.
    [TopLink Config]: 2008.04.17 05:43:56.422--ServerSession(5462872)--Thread(Thread[main,5,main])--The column name for element [private java.lang.Integer com.xilinx.srs.jpa.autogen.Build.buildId] is being defaulted to: BUILDID.
    [TopLink Config]: 2008.04.17 05:43:56.487--ServerSession(5462872)--Thread(Thread[main,5,main])--The alias name for the entity class [class com.xilinx.srs.jpa.autogen.Person] is being defaulted to: Person.
    [TopLink Config]: 2008.04.17 05:43:56.487--ServerSession(5462872)--Thread(Thread[main,5,main])--The table name for entity [class com.xilinx.srs.jpa.autogen.Person] is being defaulted to: PERSON.
    [TopLink Config]: 2008.04.17 05:43:56.490--ServerSession(5462872)--Thread(Thread[main,5,main])--The column name for element [private java.lang.Integer com.xilinx.srs.jpa.autogen.Person.ssn] is being defaulted to: SSN.
    [TopLink Config]: 2008.04.17 05:43:56.556--ServerSession(5462872)--Thread(Thread[main,5,main])--The column name for element [private java.lang.String com.xilinx.srs.jpa.autogen.Address.streetAddress2] is being defaulted to: STREETADDRESS2.
    [TopLink Config]: 2008.04.17 05:43:56.557--ServerSession(5462872)--Thread(Thread[main,5,main])--The column name for element [private java.lang.String com.xilinx.srs.jpa.autogen.Address.state] is being defaulted to: STATE.
    [TopLink Config]: 2008.04.17 05:43:56.560--ServerSession(5462872)--Thread(Thread[main,5,main])--The column name for element [private java.lang.Integer com.xilinx.srs.jpa.autogen.Address.zip] is being defaulted to: ZIP.
    [TopLink Config]: 2008.04.17 05:43:56.561--ServerSession(5462872)--Thread(Thread[main,5,main])--The column name for element [private java.lang.String com.xilinx.srs.jpa.autogen.Address.streetAddress1] is being defaulted to: STREETADDRESS1.
    [TopLink Config]: 2008.04.17 05:43:56.562--ServerSession(5462872)--Thread(Thread[main,5,main])--The column name for element [private java.lang.String com.xilinx.srs.jpa.autogen.Address.city] is being defaulted to: CITY.
    [TopLink Config]: 2008.04.17 05:43:56.629--ServerSession(5462872)--Thread(Thread[main,5,main])--The alias name for the entity class [class com.xilinx.srs.jpa.autogen.Job] is being defaulted to: Job.
    [TopLink Config]: 2008.04.17 05:43:56.630--ServerSession(5462872)--Thread(Thread[main,5,main])--The table name for entity [class com.xilinx.srs.jpa.autogen.Job] is being defaulted to: JOB.
    [TopLink Config]: 2008.04.17 05:43:56.632--ServerSession(5462872)--Thread(Thread[main,5,main])--The column name for element [private java.lang.Integer com.xilinx.srs.jpa.autogen.Job.jobId] is being defaulted to: JOBID.
    [TopLink Config]: 2008.04.17 05:43:56.640--ServerSession(5462872)--Thread(Thread[main,5,main])--The alias name for the entity class [class com.xilinx.srs.jpa.autogen.Company] is being defaulted to: Company.
    [TopLink Config]: 2008.04.17 05:43:56.641--ServerSession(5462872)--Thread(Thread[main,5,main])--The table name for entity [class com.xilinx.srs.jpa.autogen.Company] is being defaulted to: COMPANY.
    [TopLink Config]: 2008.04.17 05:43:56.643--ServerSession(5462872)--Thread(Thread[main,5,main])--The column name for element [private java.lang.Integer com.xilinx.srs.jpa.autogen.Company.companyId] is being defaulted to: COMPANYID.
    [TopLink Config]: 2008.04.17 05:43:56.646--ServerSession(5462872)--Thread(Thread[main,5,main])--The alias name for the entity class [class com.xilinx.srs.jpa.autogen.Requirement] is being defaulted to: Requirement.
    [TopLink Config]: 2008.04.17 05:43:56.647--ServerSession(5462872)--Thread(Thread[main,5,main])--The table name for entity [class com.xilinx.srs.jpa.autogen.Requirement] is being defaulted to: REQUIREMENT.
    [TopLink Config]: 2008.04.17 05:43:56.666--ServerSession(5462872)--Thread(Thread[main,5,main])--The alias name for the entity class [class com.xilinx.srs.jpa.autogen.RequirementNumber] is being defaulted to: RequirementNumber.
    [TopLink Config]: 2008.04.17 05:43:56.667--ServerSession(5462872)--Thread(Thread[main,5,main])--The table name for entity [class com.xilinx.srs.jpa.autogen.RequirementNumber] is being defaulted to: REQUIREMENTNUMBER.
    [TopLink Config]: 2008.04.17 05:43:56.669--ServerSession(5462872)--Thread(Thread[main,5,main])--The column name for element [private java.lang.Integer com.xilinx.srs.jpa.autogen.RequirementNumber.number] is being defaulted to: NUMBER.
    [TopLink Config]: 2008.04.17 05:43:56.680--ServerSession(5462872)--Thread(Thread[main,5,main])--The target entity (reference) class for the one to many mapping element [private java.util.Set com.xilinx.srs.jpa.autogen.Company.myJobs] is being defaulted to: class com.xilinx.srs.jpa.autogen.Job.
    [TopLink Config]: 2008.04.17 05:43:56.908--ServerSession(5462872)--Thread(Thread[main,5,main])--The target entity (reference) class for the many to one mapping element [private com.xilinx.srs.jpa.autogen.Company com.xilinx.srs.jpa.autogen.Job.myCompany] is being defaulted to: class com.xilinx.srs.jpa.autogen.Company.
    [TopLink Config]: 2008.04.17 05:43:56.929--ServerSession(5462872)--Thread(Thread[main,5,main])--The primary key column name for the mapping element [private com.xilinx.srs.jpa.autogen.Company com.xilinx.srs.jpa.autogen.Job.myCompany] is being defaulted to: COMPANYID.
    [TopLink Config]: 2008.04.17 05:43:56.929--ServerSession(5462872)--Thread(Thread[main,5,main])--The foreign key column name for the mapping element [private com.xilinx.srs.jpa.autogen.Company com.xilinx.srs.jpa.autogen.Job.myCompany] is being defaulted to: MYCOMPANY_COMPANYID.
    [TopLink Config]: 2008.04.17 05:43:56.930--ServerSession(5462872)--Thread(Thread[main,5,main])--The target entity (reference) class for the one to many mapping element [protected java.util.Set com.xilinx.srs.jpa.autogen.SWRelease.myBuilds] is being defaulted to: class com.xilinx.srs.jpa.autogen.Build.
    [TopLink Config]: 2008.04.17 05:43:56.941--ServerSession(5462872)--Thread(Thread[main,5,main])--The target entity (reference) class for the many to one mapping element [protected com.xilinx.srs.jpa.autogen.SWRelease com.xilinx.srs.jpa.autogen.Build.mySWRelease] is being defaulted to: class com.xilinx.srs.jpa.autogen.SWRelease.
    [TopLink Config]: 2008.04.17 05:43:56.942--ServerSession(5462872)--Thread(Thread[main,5,main])--The primary key column name for the mapping element [protected com.xilinx.srs.jpa.autogen.SWRelease com.xilinx.srs.jpa.autogen.Build.mySWRelease] is being defaulted to: RELEASEID.
    [TopLink Config]: 2008.04.17 05:43:56.943--ServerSession(5462872)--Thread(Thread[main,5,main])--The target entity (reference) class for the one to many mapping element [private java.util.Set com.xilinx.srs.jpa.autogen.RequirementNumber.myRequirements] is being defaulted to: class com.xilinx.srs.jpa.autogen.Requirement.
    [TopLink Config]: 2008.04.17 05:43:56.944--ServerSession(5462872)--Thread(Thread[main,5,main])--The target entity (reference) class for the many to one mapping element [private com.xilinx.srs.jpa.autogen.RequirementNumber com.xilinx.srs.jpa.autogen.Requirement.myRequirementNumber] is being defaulted to: class com.xilinx.srs.jpa.autogen.RequirementNumber.
    [TopLink Config]: 2008.04.17 05:43:56.945--ServerSession(5462872)--Thread(Thread[main,5,main])--The primary key column name for the mapping element [private com.xilinx.srs.jpa.autogen.RequirementNumber com.xilinx.srs.jpa.autogen.Requirement.myRequirementNumber] is being defaulted to: NUMBER.
    [TopLink Config]: 2008.04.17 05:43:56.945--ServerSession(5462872)--Thread(Thread[main,5,main])--The foreign key column name for the mapping element [private com.xilinx.srs.jpa.autogen.RequirementNumber com.xilinx.srs.jpa.autogen.Requirement.myRequirementNumber] is being defaulted to: MYREQUIREMENTNUMBER_NUMBER.
    [TopLink Config]: 2008.04.17 05:43:56.946--ServerSession(5462872)--Thread(Thread[main,5,main])--The target entity (reference) class for the one to one mapping element [private com.xilinx.srs.jpa.autogen.Person com.xilinx.srs.jpa.autogen.Job.myPerson] is being defaulted to: class com.xilinx.srs.jpa.autogen.Person.
    [TopLink Config]: 2008.04.17 05:43:56.947--ServerSession(5462872)--Thread(Thread[main,5,main])--The target entity (reference) class for the one to one mapping element [com.xilinx.srs.jpa.autogen.Job com.xilinx.srs.jpa.autogen.Person.work] is being defaulted to: class com.xilinx.srs.jpa.autogen.Job.
    [TopLink Config]: 2008.04.17 05:43:56.948--ServerSession(5462872)--Thread(Thread[main,5,main])--The primary key column name for the mapping element [com.xilinx.srs.jpa.autogen.Job com.xilinx.srs.jpa.autogen.Person.work] is being defaulted to: JOBID.
    [TopLink Config]: 2008.04.17 05:43:56.949--ServerSession(5462872)--Thread(Thread[main,5,main])--The foreign key column name for the mapping element [com.xilinx.srs.jpa.autogen.Job com.xilinx.srs.jpa.autogen.Person.work] is being defaulted to: WORK_JOBID.
    [TopLink Config]: 2008.04.17 05:43:56.958--ServerSession(5462872)--Thread(Thread[main,5,main])--The source primary key column name for the many to many mapping [private java.util.Set com.xilinx.srs.jpa.autogen.Person.myRelations] is being defaulted to: SSN.
    [TopLink Config]: 2008.04.17 05:43:56.971--ServerSession(5462872)--Thread(Thread[main,5,main])--The target primary key column name for the many to many mapping [private java.util.Set com.xilinx.srs.jpa.autogen.Person.myRelations] is being defaulted to: SSN.
    [TopLink Finer]: 2008.04.17 05:43:56.984--ServerSession(5462872)--Thread(Thread[main,5,main])--Weaver processing class [com.xilinx.srs.jpa.autogen.SWRelease].
    [TopLink Finer]: 2008.04.17 05:43:56.985--ServerSession(5462872)--Thread(Thread[main,5,main])--Weaver processing class [com.xilinx.srs.jpa.autogen.Build].
    [TopLink Finer]: 2008.04.17 05:43:56.990--ServerSession(5462872)--Thread(Thread[main,5,main])--Weaver processing class [com.xilinx.srs.jpa.autogen.Person].
    [TopLink Finer]: 2008.04.17 05:43:56.990--ServerSession(5462872)--Thread(Thread[main,5,main])--Weaver processing class [com.xilinx.srs.jpa.autogen.Job].
    [TopLink Finer]: 2008.04.17 05:43:56.991--ServerSession(5462872)--Thread(Thread[main,5,main])--Weaver processing class [com.xilinx.srs.jpa.autogen.Company].
    [TopLink Finer]: 2008.04.17 05:43:56.991--ServerSession(5462872)--Thread(Thread[main,5,main])--Weaver processing class [com.xilinx.srs.jpa.autogen.Requirement].
    [TopLink Finer]: 2008.04.17 05:43:56.992--ServerSession(5462872)--Thread(Thread[main,5,main])--Weaver processing class [com.xilinx.srs.jpa.autogen.RequirementNumber].
    [TopLink Finest]: 2008.04.17 05:43:57.001--ServerSession(5462872)--Thread(Thread[main,5,main])--end predeploying Persistence Unit test; state Predeployed; factoryCount 0
    [TopLink Finer]: 2008.04.17 05:43:57.002--Thread(Thread[main,5,main])--javaSECMPInitializer - registering transformer for test.
    [TopLink Finest]: 2008.04.17 05:43:57.514--ServerSession(5462872)--Thread(Thread[main,5,main])--begin predeploying Persistence Unit test; state Predeployed; factoryCount 0
    [TopLink Finest]: 2008.04.17 05:43:57.518--ServerSession(5462872)--Thread(Thread[main,5,main])--end predeploying Persistence Unit test; state Predeployed; factoryCount 1
    [TopLink Finest]: 2008.04.17 05:43:57.528--ServerSession(5462872)--Thread(Thread[main,5,main])--begin deploying Persistence Unit test; state Predeployed; factoryCount 1
    [TopLink Finer]: 2008.04.17 05:43:57.663--ServerSession(5462872)--Thread(Thread[main,5,main])--Weaver transformed class [com/xilinx/srs/jpa/autogen/Build].
    [TopLink Finest]: 2008.04.17 05:43:57.752--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.logging.level; value=FINEST; translated value=FINEST
    [TopLink Finest]: 2008.04.17 05:43:57.752--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.logging.level; value=FINEST; translated value=FINEST
    [TopLink Finest]: 2008.04.17 05:43:57.756--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.jdbc.user; value=root
    [TopLink Finest]: 2008.04.17 05:43:57.757--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.jdbc.password; value=xxxxxx
    [TopLink Finest]: 2008.04.17 05:43:58.824--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.target-database; value=MySQL4; translated value=oracle.toplink.essentials.platform.database.MySQL4Platform
    [TopLink Finest]: 2008.04.17 05:43:58.829--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.jdbc.driver; value=com.mysql.jdbc.Driver
    [TopLink Finest]: 2008.04.17 05:43:58.829--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.jdbc.url; value=jdbc:mysql://xcort02:3306/brotelan_test
    [TopLink Finest]: 2008.04.17 05:43:58.830--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.jdbc.write-connections.min; value=1
    [TopLink Finest]: 2008.04.17 05:43:58.830--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.jdbc.write-connections.max; value=1
    [TopLink Finest]: 2008.04.17 05:43:58.830--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.jdbc.read-connections.min; value=1
    [TopLink Finest]: 2008.04.17 05:43:58.830--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.jdbc.read-connections.max; value=1
    [TopLink Finest]: 2008.04.17 05:43:58.831--ServerSession(5462872)--Thread(Thread[main,5,main])--property=toplink.cache.type.default; value=SoftWeak; translated value=oracle.toplink.essentials.internal.identitymaps.SoftCacheWeakIdentityMap
    [TopLink Info]: 2008.04.17 05:43:58.844--ServerSession(5462872)--Thread(Thread[main,5,main])--TopLink, version: Oracle TopLink Essentials - 2.0 (Build b58g-fcs (09/07/2007))
    [TopLink Config]: 2008.04.17 05:43:58.867--ServerSession(5462872)--Connection(18511266)--Thread(Thread[main,5,main])--connecting(DatabaseLogin(
    platform=>MySQL4Platform
    user name=> "root"
    datasource URL=> "jdbc:mysql://xcort02:3306/brotelan_test"
    [TopLink Config]: 2008.04.17 05:43:59.462--ServerSession(5462872)--Connection(7100506)--Thread(Thread[main,5,main])--Connected: jdbc:mysql://xcort02:3306/brotelan_test
    User: [email protected]
    Database: MySQL Version: 5.0.51a
    Driver: MySQL-AB JDBC Driver Version: mysql-connector-java-5.0.8 ( Revision: ${svn.Revision} )
    [TopLink Config]: 2008.04.17 05:43:59.463--ServerSession(5462872)--Connection(18655235)--Thread(Thread[main,5,main])--connecting(DatabaseLogin(
    platform=>MySQL4Platform
    user name=> "root"
    datasource URL=> "jdbc:mysql://xcort02:3306/brotelan_test"
    [TopLink Config]: 2008.04.17 05:43:59.498--ServerSession(5462872)--Connection(2569862)--Thread(Thread[main,5,main])--Connected: jdbc:mysql://xcort02:3306/brotelan_test
    User: [email protected]
    Database: MySQL Version: 5.0.51a
    Driver: MySQL-AB JDBC Driver Version: mysql-connector-java-5.0.8 ( Revision: ${svn.Revision} )
    [TopLink Finest]: 2008.04.17 05:43:59.544--ServerSession(5462872)--Thread(Thread[main,5,main])--sequencing connected, state is Preallocation_Transaction_NoAccessor_State
    [TopLink Finest]: 2008.04.17 05:43:59.545--ServerSession(5462872)--Thread(Thread[main,5,main])--sequence SEQ_GEN: preallocation size 50
    [TopLink Info]: 2008.04.17 05:43:59.938--ServerSession(5462872)--Thread(Thread[main,5,main])--file:/home/brotelan/sandboxes/HEAD/env/Misc/ReleaseTools/lib/jexcelapi/build/-test login successful
    [TopLink Finest]: 2008.04.17 05:43:59.938--ServerSession(5462872)--Thread(Thread[main,5,main])--end deploying Persistence Unit test; state Deployed; factoryCount 1
    [TopLink Finer]: 2008.04.17 05:43:59.990--ServerSession(5462872)--Thread(Thread[main,5,main])--client acquired
    [TopLink Finest]: 2008.04.17 05:44:00.017--UnitOfWork(7318012)--Thread(Thread[main,5,main])--Execute query ReadObjectQuery(com.xilinx.srs.jpa.autogen.SWRelease)
    [TopLink Fine]: 2008.04.17 05:44:00.072--ServerSession(5462872)--Connection(7100506)--Thread(Thread[main,5,main])--SELECT RELEASEID, name, version FROM SWRELEASE WHERE (RELEASEID = ?)
    bind => [2]
    [TopLink Finest]: 2008.04.17 05:44:00.123--UnitOfWork(7318012)--Thread(Thread[main,5,main])--Register the existing object name=Lava version=11.1 releaseId=2
    [TopLink Finest]: 2008.04.17 05:44:00.146--UnitOfWork(7318012)--Thread(Thread[main,5,main])--Execute query ReadObjectQuery(com.xilinx.srs.jpa.autogen.SWRelease)
    [TopLink Fine]: 2008.04.17 05:44:00.147--ServerSession(5462872)--Connection(7100506)--Thread(Thread[main,5,main])--SELECT RELEASEID, name, version FROM SWRELEASE WHERE (RELEASEID = ?)
    bind => [3]
    [TopLink Finest]: 2008.04.17 05:44:00.148--UnitOfWork(7318012)--Thread(Thread[main,5,main])--Register the existing object name=Magma version=12.1 releaseId=3
    Lava release builds: {IndirectSet: not instantiated}
    Magma release builds: {IndirectSet: not instantiated}

    Google print capable?

  • Automatic answer? or just too lazy to read question?

    I came across this post in ABAP Dictionary:
    How to make custom append search help tab default for all users?
    The poster was asking a question about search help defaults, but did mention the word "Append" in the title.
    The first response posted to the question started with:
    <i>hi
    Enhancement using Append structures
    Append structures allow you to attach fields to a table ...</i>
    which was completely off topic for the question asked.
    I wonder, Is the responder using some form of automated code that finds a key word and then pastes an answer?  or did they just fail to read the question in any kind of detail?
    I have seen similar cases where the reason for the mis-answer could be language translation, or where the question was very poorly phrased, but this one stood out as an answer you would never give if you read and even partly understood the question.
    Andrew

    Hi Andrew,
    He probably didn't read the question. Just read the title (half) and searched his database. It happens a lot. I also see answers for questions where people didn't bother to read the other replies, so they give an answer which is already given or ask a question which is already answered.
    It seems some users just post as quickly as possible to make sure they get the points.
    Regards,
    Martin

  • Just a flat out ******** and lazy question on my part

    alright i know how to get the videos and everything onto the ipod just fine.
    what i'm wondering is that is there a dvd ripper program for the PC that for the love of god can convert directly to mpeg4 or ipod format?!?!?!?!?!?
    i've been through just about any and everything i can think of and find i have to first rip the dvd to the harddrive in avi or wmv for the most part(there goes hour or two hours of my life) then after that i have to encode it again to mpeg4 or the ipod format for the ipod(another hour and a half)
    all i wana do is put dvd's onto my ipod so i can watch them at work cries lol
    just curious if any ya'll seen a program that will do it all at once if not i'll just keep ripping movies at the expense of 3 hours of my life spent as downtime...hmmm just like work i guess spend more time doing nothing and watching movies on the ipod than actually work...looking to be like a office space rip off WOOT!!!

    now i remember why i did use the cucusoft dvd ripper took WAY to long just tryignt o encode the southpark movie and said would take like 22 hours : / dunno if there is a program issue with the cucusoft stuff or maybe i just have a wrong settign i have no idea : / oh well

  • Handle long-running EDT tasks (f.i. TreeModel searching)

    Note: this is a cross-post from SO
    http://stackoverflow.com/questions/9378232/handle-long-running-edt-tasks-f-i-treemodel-searching
    copied below, input highly appreciated :-)
    Cheers
    Jeanette
    Trigger is a recently re-detected SwingX issue (https://java.net/jira/browse/SWINGX-1233): support deep - that is under collapsed nodes as opposed to visible nodes only, which is the current behaviour - node searching.
    "Nichts leichter als das" with all my current exposure to SwingWorker: walk the TreeModel in the background thread and update the ui in process, like shown in a crude snippet below. Fest's EDT checker is happy enough, but then it only checks on repaint (which is nicely happening on the EDT here)
    Only ... strictly speaking, that background thread must be the EDT as it is accessing (by reading) the model. So, the questions are:
    - how to implement the search thread-correctly?
    - or can we live with that risk (heavily documented, of course)
    One possibility for a special case solution would be to have a second (cloned or otherwise "same"-made) model for searching and then find the corresponding matches in the "real" model. That doesn't play overly nicely with a general searching support, as that can't know anything about any particular model, that is can't create a clone even if it wanted. Plus it would have to apply all the view sorting/filtering (in future) ...
    // a crude worker (match hard-coded and directly coupled to the ui)
    public static class SearchWorker extends SwingWorker<Void, File> {
        private Enumeration enumer;
        private JXList list;
        private JXTree tree;
        public SearchWorker(Enumeration enumer, JXList list, JXTree tree) {
            this.enumer = enumer;
            this.list = list;
            this.tree = tree;
        @Override
        protected Void doInBackground() throws Exception {
            int count = 0;
            while (enumer.hasMoreElements()) {
                count++;
                File file = (File) enumer.nextElement();
                if (match(file)) {
                    publish(file);
                if (count > 100){
                    count = 0;
                    Thread.sleep(50);
            return null;
        @Override
        protected void process(List<File> chunks) {
            for (File file : chunks) {
                ((DefaultListModel) list.getModel()).addElement(file);
                TreePath path = createPathToRoot(file);
                tree.addSelectionPath(path);
                tree.scrollPathToVisible(path);
        private TreePath createPathToRoot(File file) {
            boolean result = false;
            List<File> path = new LinkedList<File>();
            while(!result && file != null) {
                result = file.equals(tree.getModel().getRoot());
                path.add(0, file);
                file = file.getParentFile();
            return new TreePath(path.toArray());
        private boolean match(File file) {
            return file.getName().startsWith("c");
    // its usage in terms of SwingX test support
    public void interactiveDeepSearch() {
        final FileSystemModel files = new FileSystemModel(new File("."));
        final JXTree tree = new JXTree(files);
        tree.setCellRenderer(new DefaultTreeRenderer(IconValues.FILE_ICON, StringValues.FILE_NAME));
        final JXList list = new JXList(new DefaultListModel());
        list.setCellRenderer(new DefaultListRenderer(StringValues.FILE_NAME));
        list.setVisibleRowCount(20);
        JXFrame frame = wrapWithScrollingInFrame(tree, "search files");
        frame.add(new JScrollPane(list), BorderLayout.SOUTH);
        Action traverse = new AbstractAction("worker") {
            @Override
            public void actionPerformed(ActionEvent e) {
                setEnabled(false);
                Enumeration fileEnum = new PreorderModelEnumeration(files);
                SwingWorker worker = new SearchWorker(fileEnum, list, tree);
                PropertyChangeListener l = new PropertyChangeListener() {
                    @Override
                    public void propertyChange(PropertyChangeEvent evt) {
                        if (evt.getNewValue() == SwingWorker.StateValue.DONE) {
                            //T.imeOut("search end ");
                            setEnabled(true);
                            ((SwingWorker) evt.getSource()).removePropertyChangeListener(this);
                worker.addPropertyChangeListener(l);
                // T.imeOn("starting search ... ");
                worker.execute();
        addAction(frame, traverse);
        show(frame)
    }

    At the end of the day, it turned out that I asked the wrong question (or right question in a wrong context ;-): the "problem" arose by an assumed solution, the real task to solve is to support a hierarchical search algorithm (right now the AbstractSearchable is heavily skewed on linear search).
    Once that will solved, the next question might be how much a framework can do to support concrete hierarchical searchables. Given the variety of custom implementations of TreeModels, that's most probably possible only for the most simple.
    Some thoughts that came up in the discussions here and the other forums. In a concrete context, first measure if the traversal is slow: most in-memory models are lightning fast to traverse, nothing needs to be done except using the basic support.
    Only if the traversal is the bottleneck (as f.i. in the FileSystemModel implementations of SwingX) additional work is needed:
    - in a truly immutable and unmodifiable TreeModel we might get away with read-only access in a SwingWorker's background thread
    - the unmodifiable precondition is violated in lazy loading/deleting scenarios
    there might be a natural custom data structure which backs the model, which is effectively kind-of "detached" from the actual model which allows synchronization to that backing model (in both traversal and view model)
    - pass the actual search back to the database
    - use an wrapper on top of a given TreeModel which guarantees to access the underlying model on the EDT
    - "fake" background searching: actually do so in small-enough blocks on the EDT (f.i. in a Timer) so that the user doesn't notice any delay
    Whatever the technical option to a slow search, there's the same usability problem to solve: how to present the delay to the end user? And that's an entirely different story, probably even more context/requirement dependent :-)
    Thanks for all the valuable input!
    Jeanette

  • Changing TreeModel without reference

    HI,
    i have a very basic question. I want to change my tree if the user do some changes in some dialog. So i created an actionEvent in this dialog in order to put the code to change TreeModel.
    The problem is, i dont have a reference of the tree in this dialog and in order to get a reference, i would have to alter many classes.
    Is there a way to change a tree without having a reference on it? This sounds pretty crazy, but i am asking cause i would have to pass the reference from the Main class to the MenuBar, from the MenuBar to another class and then some years later to the dialog.
    i just need some hints which way GUI programmers normally go, i come from the server side, and its not much the same :)
    Marc

    Oh gads... don't do the static thing. The horrors of global variables... will some people never learn.
    Use an Action to construct your menu item that essentially calls a method in some controller class when it's action is triggered.
    Have the controller class that owns the tree (and underlying tree model). The controller will also own the dialog. When the dialog displays, it captures some input. When the dialog is dismissed, the controller will get the return value from the dialog (canceled, etc.) and then get the relevant other data input from the dialog.
    Given the data from the dialog, the controller class will update the tree/treemodel as needed.
    Your menu item (action) should have no knowledge of your tree. Your dialog should have no knowledge of the tree. If you are going to lengths to pass references around, change your approach. Think about where it makes sense for things to reference each other, if it feels odd, look for another way. :-)
    The static suggestions are from lazy programmers who should go back to visual basic and leave the object oriented stuff to us professionals. :-)

  • A rather long post of me talking gibberish and asking LOTS of questions.

    ================================================== ================================================== ===
    Before reading this MASSIVE post, please read the bottom at the stupid amount of P.P.S.'s as they probably have a lot of information that I forgot to put in the middle or something.
    ================================================== ================================================== ===
    Hi, I'm some guy on the internet and I am 15 years old. For the sake of this post and the answers I hope to have, please ignore my age and understand my maturity and I hope that you can understand why I would like to learn this language so much. I seem to have major issues with learning this language and online tutorials and stacks of books do not seem to do the trick. Please do not reply saying "this is not for you, try something else" because although I do not know much in Java in terms of making good applications, I have learned quite a few things and I am able to make simple things with the console such as making a calculator where the user has to type in what operator they want to use and then they are asked to enter two numbers in which they are timed/added/divided etc. together and it gives the answer. Considering this I really want to continue learning this language because I find it fun to learn and fun to program in, yet I am having serious stress issues because I can't understand simple things and I just forget some of them and I then find it difficult to make simple applications. For example, I am trying to make a simple snake game where you have to find all the apples and eat them and then your body grows larger etc. but I just can't think of how I would do it. I know a few simple application type things and maybe how to put them to use, but I just don't know how to use them in this situation and how to start off making games like these.
    Just to tell you a little bit about my background of programming, I have known about programming since I was about 11, I made a virus in Visual Basic believe it or not. It would disguise itself as Mozilla Firefox and would slowly delete random files that were opened or edited in the last month starting from the last used files in said month. It would delete a set amount of files every time you booted up and it was pretty nasty. It was obviously quite easy to get rid of it and it probably had many bugs, but it was a nasty virus nonetheless. Anyway, that lasted around 2 months and I never really picked up on programming until around 13 at which point I learned a bit of Java up until the System.out.println part, so not very far at all and I barely understood anything. Then I kinda picked it up at 14 last summer (2012) and learned almost as much I know now over the summer holidays and then kind of left it until after Christmas because I couldn't really get past a certain 'barrier' so I got bored and gave up. Until now. After Christmas I got back into it and starting learning a few more things, understood functions a little more and downloaded a bunch of source code from lots of different websites. I've now been extremely stressed out for the past 2 weeks going crazy because I can't fit anything else into my head because I just forget it or just don't understand it. So I am now in a complete frenzy not doing homework, being a douche to my friends and just not being very social or doing stupid things.
    Unfortunately this is going to be a rather long post as you can probably already tell and there will be a 20 Q's kind of 'game' below where I ask things that I desperately need to know and maybe things that I want to know but don't necessarily need to know.
    If you can, I would greatly appreciate it if you could answer all of the first 14 questions in one post instead of 1 or 2. Also, please do not post anything unnecessary or nasty as I am a new poster here and I just want to get started in Java and I have my own reasons for starting at such a young age and my intentions are rather personal. So please treat this matter with maturity and I hope someone can really help me.
    I am sorry for any misspellings or grammatical errors, I am fully English, I am just rubbish at spelling.
    THE QUESTIONS!!!
    1) What is SUPER used for, when should I use it and why should I use it?
    2) When making a new class and you type PUBLIC [insert class name here](){} what does this do and why does it need to be the same name as the class it is in?
    3) Why do you need to make new classes inside already made classes sometimes?
    4) What is the use of NEW and why do you need to use it when you are creating something like a JFrame, where for example you would use it in your main function and have NEW [insert name of function with JFrame inside]();, why can't you just do [insert name of function with JFrame inside]();?
    5) What is actionPerformed, where is it used and why should I use it?
    6) When using a function, what is achieved when you call another class and make another variable inside said function? Eg, public [insert class name here]([insert other class name here][insert new variable name here]){}
    7) What 'type' is an ENUM? Is it an int? String? Double? So if I were to make ENUM [insert name of enum here] {A, B, C, D, E, F, G}; So what would happen if I were to say PUBLIC [insert name of enum here] B = 5; what would that mean? Would that assign it as an integer?
    8) When should I use enums, what is the point in them?
    9) What does [inset object here].ORDINAL mean? What is it used for and when should I use it?
    10) Although I understand that the RETURN statement is used to end a function and return it with a value if there is one specified, but when it returns it with that value that you may have specified, what happens to that value, how do I retrieve it and how do I use it? When will I know when to use RETURN?
    11) Briefly explain how to use KeyEvent, getKeyCode and just anything else to do with accepting user input and how I would use it.
    12) When using the KeyAdapter, why do you need to make a new class inside an already made class? What does this achieve? Why can you not extend it on the current class you are using instead of making a new class? This links back to the 3rd question.
    13) What is the difference between ++object and object++? Does it really matter which way I use them? Why should I use them differently and how will it affect my code if I use them differently?
    14) What's the difference between an IF statement and a BOOLEAN statement? They are both booleans and if used correctly can be used to do the exact same thing with just one or two lines of codes difference. Which one should I pick over the other and why? Which one is better to use for what kind of things?
    ================================================== ================================================== ===
    POINTLESS QUESTIONS THAT I JUST FEEL LIKE ASKING THAT DON'T NEED TO BE ANSWERED AND DON'T HAVE MUCH TO DO WITH THE CODE ITSELF
    ================================================== ================================================== ===
    15) What is the best way to get into the mindset of 'a programmer'? What is the best way to understand the ways in which you would build an application and learning the step by step processes so you know what you have to do next and how to do it.
    16) I seem to always be worried that it takes programmers 5 minutes to program a very simple game, like Tetris because I've seen videos and just other places where it makes it look like it takes them a very small amount of time to make something that might take me months to learn. Is this how it works? Or can it take hours to program 5 classes for a very simple game? If so, why does it, if said programmer hypothetically understands the language well enough to make said program? Surely they would know what to do and how to make it so it would not take long at all?
    17) How often are IF and ELSE statements used in common programs? I feel when I am making a program I am always using them too much and I just stop programming from there because I feel that I am using too much of something so maybe it isn't the right way to do it or maybe there is a better way to do it.
    18) What would be the best way to learn programming for someone who finds it difficult to teach himself said topic yet has no efficient way to have someone teach him? I feel I am somewhat intelligent enough to learn a programming language, I have gotten this far, so I feel I should just keep going. Besides, despite the difficulties I have and the ridiculous amount of stress I get from not being able to learn on my own, I find it very entertaining to program things, read over other peoples code and slowly learn the world of programming. I feel that I see myself as a programmer in the future and I just really hope that I can learn this language quickly before I am too old to have time to learn this as a hobbie as I do now.
    19) I am someone who hopes to become a games developer as I thoroughly enjoy playing games as much as I do finding out how they work. What would be the right way about learning how to make games? Should I stick with Java or should I go to C++? I've only stuck with Java because I have more experience with it and I feel that I should learn an easy language and get used to OOP and other things before I go off making complex programs with a difficult language. I know how to print something to the console in C++ and that's about it.
    20) I have no way of having an education on programming in my school at the moment and all courses that have programming in them aren't very good - you make a simple application for coursework and you do a computer physics exam at the end of the year, not too helpful for me. Also, I don't have many friends that are diversed in any language of programming and the ones I do have, coincidentally, absolutely none of them are any good at making games or painting anything in graphics or anything to do with frames and windows. They're all about the console and making mods for games instead of making full on programs with a window and what not so it's difficult to get any of them to teach me anything. I've looked at college courses and none of them are for my age and what I am wanting, or they are just too damn expensive. I have also looked at online courses, one-to-one tutoring etc. but they are either way too expensive or they aren't very good in terms of being in a country half way across the world or maybe they have bad ratings. Anyway, what I'm trying to ask, despite all the negative put backs and all the issues that seem to follow me whenever I try to learn this damn language, what would be the best way to teach myself this language or any other language, or where are the best places to have someone teach me for free/cheap prices? I just essentially want to make something basic like a video game like Tetris or something so I at least have some knowledge of making a video game so I can maybe learn other things much easier.
    P.S. I am in top sets for all my classes at school, so any intelligence issues aren't a part of this. I guess you could maybe call it laziness, but I just prefer to say that I am too used to people teaching me things and doing things for me rather than teaching and doing things myself. So if I were stuck on an island alone I really would not know what to do at all because I would mainly rely on other people.
    P.P.S. Just for anyone's curiosity, I use Eclipse as my IDE on a Windows 7 Ultimate OS.
    P.P.P.S. I am British.
    P.P.P.P.S. I have read through about 4 books about Java, but on most of them I just get really bored and stop reading them half way through because they either don't explain what I want to know or they really suck at explaining what I want to know.
    P.P.P.P.S If you are going to post a good tutorial, please post one that I have most likely NOT been on. PLEASE. I have gone through MANY tutorials which all of them don't do me any favours. Please post one that you think that I might not have seen and actually tells me what EACH line of code does and WHY it does it and WHY I might use it and WHERE I might use it. Etc.
    P.P.P.P.P.S If this is a TL;DR kind of post, then I am awfully sorry to have bored you, please go onto another post, but thank you very much for taking the time to actually LOOK and CLICK on my post. However if you do not have any intention of helping my dilemma, please leave as although I am asking for A LOT for FREE, I really don't need pointless posts that really do not solve my problem. Thanks.
    P.P.P.P.P.P.S (Last P.P.S I swear! I just keep forgetting things.) If you have any questions to ask or I might not have asked something properly, feel free to ask as I will probably be refreshing this page non-stop for the next 2 weeks. Thanks ^^
    For all the people out there who are THAT awesome to post here answers to these questions, I really salute to you and I would VERY gladly give you money for your time and effort, if I had the funds to give you what it's worth. ;-)
    Edited by: 983242 on 21-Jan-2013 16:26

    Before reading this MASSIVE postI didn't read it. I went straight to the questions. The rest of it was a complete waste of your time. Nobody cares whether you are 15, are stressed, get bored, etc. You should spend more time learning and less time emoting, and typing.
    I am rubbish at spelling.So fix that. If you stay in this business you will have to spell properly or get nowhere. Compilers won't accept mis-spellings: why should anybody else? Get over it. In a few years you will have to write a resume. If I get it and it is misspelt it goes in the bin.
    1) What is SUPER used for, when should I use it and why should I use it?It is used for two purposes that are described in the Java Language Specification. If you can't read language specifications you will have to learn, or get nowhere. You can't learn languages in forums.
    2) When making a new class and you type PUBLIC [insert class name here](){} what does this do and why does it need to be the same name as the class it is in?That's two questions. 'public' is used for a purpose that is described in [etc as above]. The class name needs to agree with the file name because that is a rule of Java. Period. There's a reason for the rule but you should be able to discover it for yourself eventually, and it doesn't actually matter what the reason is at this stage in your development.
    3) Why do you need to make new classes inside already made classes sometimes?Why not?
    4) What is the use of NEW and why do you need to use it when you are creating something like a JFrame, where for example you would use it in your main function and have NEW [insert name of function with JFrame inside]();, why can't you just do [insert name of function with JFrame inside]();?Meaningless. You have to use the language the way it was designed. Same applies to most if not all your questions.
    5) What is actionPerformed, where is it used and why should I use it?See the Javadoc.
    6) When using a function, what is achieved when you call another class and make another variable inside said function? Eg, public [insert class name here]([insert other class name here][insert new variable name here]){}I cannot make head or tail of this question. You could try making it intelligible.
    7) What 'type' is an ENUM?It is of type Enum.
    Is it an int? String? Double?No, no, and no.
    So if I were to make ENUM [insert name of enum here] {A, B, C, D, E, F, G}; So what would happen if I were to say PUBLIC [insert name of enum here] B = 5; what would that mean? Would that assign it as an integer?I'm getting sick of this [insert name here] business. Try making your questions legible and intelligible. And again, an enum is not an int.
    8) When should I use enums, what is the point in them?When you want them. Not a real question.
    9) What does [inset object here].ORDINAL mean?Nothing. There is no such construct in Java. There might be an occasional class with a public variable named ORDINAL, in which case it means whatever the guy who wrote it meant. If you're lucky he documented it. If not, not.
    10) Although I understand that the RETURN statement is used to end a function and return it with a value if there is one specified, but when it returns it with that value that you may have specified, what happens to that value, how do I retrieve it and how do I use it?You store it in a variable, or pass it to another function, or use it as a value in a statement, for sample as an if or while condition.
    When will I know when to use RETURN?Err, when you want to return a value?
    11) Briefly explain how to use KeyEvent, getKeyCode and just anything else to do with accepting user input and how I would use it. In a forum? You're kidding. Read the Javadoc. That's what I did.
    12) When using the KeyAdapter, why do you need to make a new class inside an already made class?You don't.
    13) What is the difference between ++object and object++?This is all described in the Java Language Specification [etc as above] and indeed most of this stuff is also in the Java Tutorial as well. Read them.
    Does it really matter which way I use them?Of course, otherwise they wouldn't both exist. Language designers are not morons.
    Why should I use them differently and how will it affect my code if I use them differently?That's just the same question all over again.
    14) What's the difference between an IF statement and a BOOLEAN statement?The difference is that there is no such thing as a boolean statement.
    POINTLESS QUESTIONSThanks for stating that.
    THAT I JUST FEEL LIKE ASKINGBad luck. I don't feel like answering pointless questions. Ever.

  • Help! Where should I post this question, so I can get it answer?

    I'm with the greastest Apple communuty on earth, but know ones responds to my question, except once. Is it worded incorrectly or difficult to understand. I been at for 4-5 months. Any help is well appreciated.
    see below for my past adventures:
    Can you help? I have pot this problem on the discussion board times 3 with no response except this time. See below.
    down;oading podcast
    Posted: Jun 23, 2007 8:04 AM

    Reply

    Email
    Can Itune get too full whereas it will stop downloading podcast automatically or manually? I just exported my 2006 " bibleonradio" podcast to a folder on my harddrive. Immediately itune started downloading podast from that site. But for the last 4-5 months it would hit and miss with downloading and the last 2 weeks it quit altogether.I would go to the site and download the podcast to a selected itune folder as a mp3 for listening.
    Do I need to do some type of maintenance to prevent this from occurring? The site is simple reading of bible scriptures. Could itunes get confuse with 2006 podcasts, thinking I already have the podcast, even though the release date for the new podast are mark 2007?
    imacG5 , super drive   Mac OS X (10.4.7)  

    Diane Wordsmith


    Posts: 266
    From: Nashville
    Registered: Feb 20, 2007
    Re: down;oading podcast
    Posted: Jun 24, 2007 9:23 AM    in response to: Austin Smith2

    Reply

    Email
    Look at the Podcasts in your iTunes Library. Do you see a little exclamation point to the left of the listing? If so, click on that.
    iBook G4 (& an iMac running OS 9)   Mac OS X (10.3.9)   iPod Video

    Austin Smith2

    Posts: 114
    Registered: Oct 31, 2001
    Re: down;oading podcast
    Posted: Jun 25, 2007 3:35 PM    in response to: Diane Wordsmith

    Reply

    Email
    Thank you for your reply:
    I have that symbol on some of my other podacst sites, but not this one because I listen to it daily, sometimes 2-3 times a day. Could the exclamation symbol for the othe sites, which goes away if I start listening to them again affect this podcast? but these site with the exclamation also hit and miss when itunes downloads, as much as 2-3 weeks once I start it back up.
    imacG5 , super drive   Mac OS X (10.4.7)  

    Diane Wordsmith


    Posts: 266
    From: Nashville
    Registered: Feb 20, 2007
    Re: down;oading podcast
    Posted: Jun 25, 2007 3:49 PM    in response to: Austin Smith2

    Reply

    Email
    What's happened to me is that some Podcasts I subscribe to I might get lazy about listening to. Several of the Podcasts will pile up, and after a while iTunes will stop updating if you haven't listened to them. When I click on that little exclamation point in a circle, it will tell me that iTunes hasn't been updating that podcast because I haven't listened to it in a while. I think it asks if you want to continue (or maybe you have to click on subscribe again to get them started back).
    If you are listening to this particular podcast every day, that shouldn't be a problem. And not listening to the other ones shouldn't affect this one. Sorry I can't be of more help, but I'm not sure what is causing it.
    You might go to iTunes> Preferences and click on the tab for Podcasts and see what your settings are there.
    Diane Wordsmith
    iBook G4 (& an iMac running OS 9)   Mac OS X (10.3.9)   iPod Video

    Austin Smith2

    Posts: 114
    Registered: Oct 31, 2001
    Re: down;oading podcast
    Posted: Jun 25, 2007 8:07 PM    in response to: Diane Wordsmith

    Reply

    Email
    Thank you again for your reply.
    My settings in preference for podcast are::
    check for new episodes-every hour
    when new episodes are available-download all
    keep-all episodes
    does anyone else have this problem or any idea how to fix it?
    2nd post

    Converting
    Posted: Jun 13, 2007 8:49 AM

    Reply

    Email
    Trying to come up with an alternative to incomplete podcasts downloads from a website. What I'm trying to do is convert some the missing podcasts file from a website that itune don't download-reason unknown. I'm able to download a mp3 file of the podcast from the web site to my desktop, but I would like to add this to my podcast library under the same name of the podcast that I subscribed, then add to my playlist for continuous playing. Is this possible?
    Thank for any Help,
    Austin
    3rd post

    automatic podcast downloads incomplete
    Posted: Jun 9, 2007 10:54 AM

    Reply

    Email
    I was on the wrong forum. Hope someone might have an answer.
    Austin Smith2
    Posts: 102
    Registered: Oct 31, 2001
    automatic downloads incomplete
    Posted: Jun 4, 2007 7:54 AM
    Reply Email
    Some Podcasts have many episodes and when I subscribe, I get them all at once. But with some podcasts ( http://www.bibleonradio.com/ ), only a few episodes download, and I know there are many others available either because I can see them listed by going directly to the site or because they are numbered and some are clearly missing. I have tried setting my preferences both to download the latest edition of a podcast when I update or to download ALL editions. No difference either way.
    Strangely enough, if I am patience , sometimes the gaps will fill themselves in or all at once when I choose to click update. Anyone have any ideas why this might be happening? Any help would be greatly appreciated. I email the web administrator and they said they were able to go to the itune store and download all the recent episodes. Below is my email conversation.
    Thanks,
    Austin
    imacG5 , super drive Mac OS X (10.4.7) Report this post
    Austin Smith2
    Posts: 102
    Registered: Oct 31, 2001
    Re: automatic downloads incomplete
    Posted: Jun 7, 2007 4:07 PM in response to: Austin Smith2
    Reply Email
    Oops, I left off the dialog. Hope someone can Help.
    Austin
    From: Austin Smith [mailto:[email protected]]
    Sent: Monday, February 19, 2007 7:16 AM
    To: [email protected]
    Subject: podcast
    no podcast downloading after feb 17th. Can you help?
    On Feb 19, 2007, at 8:45 AM, MasterMedia wrote:
    Austin,
    If you mean podcasting of the One Year Audio Bible, then whenever the podcasting is behind you can always go out to the website and download from there. That’s usually been updated even when the podcast has not. Sorry for the inconvenience but the podcast should be brought up to date soon.
    MasterMedia
    From: Austin Smith [mailto:[email protected]]
    Sent: Tuesday, February 20, 2007 7:21 AM
    To: MasterMedia
    Subject: Re: podcast
    Thank you for your quick reply.
    I was able to get itunes to download all the updates except,
    Feb 18 New testament,
    Feb 20 New Testament,
    Feb 22 Old and New Testament.
    Is this a problem on my end?
    You wrote, "If you mean podcasting of the One Year Audio Bible, then whenever the podcasting is behind you can always go out to the website and download from there."
    If I manually download the mp3 from your website, can I put them into the postcast library?
    From: [email protected]
    Subject: RE: podcast
    Date: February 20, 2007 9:14:44 AM CST
    To: [email protected]
    Austin,
    I just went out to the iTunes store and tried to download those dates you had a problem with and I was able to download them without any problem. Maybe you should try again. And yes, you can manually download them from our website and store them into your podcast library. I’ve done that before and it works too.
    MasterMedia
    imacG5 , super drive Mac OS X (10.4.7) Report this post
    StarDeb55
    Posts: 6,134
    From: Chandler,Az.
    Registered: Jan 8, 2005
    Re: automatic downloads incomplete
    Posted: Jun 7, 2007 4:12 PM in response to: Austin Smith2
    Reply Email
    Just a suggestion, since this is a podcast issue, you might find more help in the podcast section of the Mac forum.
    iMac G5 2.0 Mac OS X (10.4.9) 60GB 5G iPod, 2G iPod shuffle, iTunes 7.2 Report this post
    Austin Smith2
    Posts: 102
    Registered: Oct 31, 2001
    Re: automatic downloads incomplete
    Posted: Jun 9, 2007 10:50 AM in response to: StarDeb55
    Reply Email
    Thanks.
    imacG5 , super drive Mac OS X (10.4.7)
    imacG5 , super drive   Mac OS X (10.4.7)  
    Report this post
    Austin Smith2

    Posts: 114
    Registered: Oct 31, 2001

    Re: seeking wisdom-please help-automatic podcast downloads incomplete-
    Posted: Jun 13, 2007 7:29 AM    in response to: Austin Smith2

    Reply

    Email
    Guys am I asking the wrong question? I have posted this question 3 times, but I don;t get a reply. Am I in the wrong section? Am I the only one experiencing this problem?
    imacG5 , super drive   Mac OS X (10.4.7)  

    Hi I found the answer from another post. So far everything is working find. I been trying to fix this since march,
    from
    Mike N. (nahyun...
    Posts: 2,814
    From: New York, NY
    Registered: Oct 1, 2003
    Re: itune application and itune folder
    Posted: Jun 27, 2007 7:16 AM in response to: Austin Smith2
    Solved
    Reply Email
    Deleting the application rarely solves anything on Macs. A better starting point is normally to delete the preference file for the application (in Users/~/Library/Preferences/com.apple.itunes.plist) or see if you have the same problem in another user account on the computer.
    PM MDD(1.25GHz 1.25G-RAM 320G-HD) Mac OS X (10.4.10) 20"ACD USB2Connect MacBook (2.0 White)-2GB Report this post
    Austin Smith2
    Posts: 118
    Registered: Oct 31, 2001
    Re: itune application and itune folder
    Posted: Jun 27, 2007 12:51 PM in response to: Mike N. (nahyun...
    Reply Email
    Mike, deleting the preferences did the trick, but I don't know why. Itunes downloaded 5 days of podcast! Hurray!! Thank you!!!!!!!!!

  • Two short questions on Interactive reports

    Hello,
    I have two questions on passing filter to an Interative report
    1) the text that I send to the filter can contain commas. Is it possible to work around this? (comma is interpreted as splitting the filter values)
    e.g. f?p=104:19:::NO:19,RIR:IR_BUS1_NAME,IR_IS_OPEN:*Corporate, Other and Eliminations*,Yes
    %2C%20other%20and%20eliminations,No,Yes
    --> in this case it get messed up when passing to the IR page.
    2) anyone know if it is possible to send a IN parameter to an interactive report?
    Brgds
    Christian

    1 \value\ should do the trick
    2 Yes, I think so (only done it with ordinary reports and too lazy to check right now!).
    Build your string of value1,value2.. in an item then use the &ITEM. syntax in the SQL
    HTH,
    Chris

  • My credit building journey, lots of random questions, advise plz

    First of all, thank you so much to everyone here. I have spent the last few days reading. A lot of lingo to learn. (Luv button was my favorite) (or PYDBDB) haha. And its totally worth it! Basically my credit is fair/good. I was lazy in building it. Going through anti credit card phase just to be unique. Always paid in cash. Bad mistake. Basically the only neg on my report is 3 missed payments from 1 of my student loans (which is an ERROR). Everything else is in good standing. No chargeoffs. No collections. No bks. If you are in a rush, just look at my BOLD or underlined parts if you could please.
    care credit 6/13               CL $6800
    credit one 4/14                CL $850
    Buckle store card 5/14     CL $500
     cap1 qs 12/14                CL $3k
    commerce bank 10/14     CL $2k
    amazon store card 4/15  CL $800
    sams club PLCC 5/15      CL $1200Amex Everyday 5/15        CL $5k util is now around 15%.
    If my oldest account is from june of 2013 (care credit), and my second oldest is from april 2014 (the credit one), my score is currently at EQ 669,TU 659 myfico of 688. do u think I really should close the creditone?  Has a $49 AF. I could probably close the credit one, but I just paid my annual fee less than 2 months ago. I think I should wait until a month before they charge the fee, and cancel it then, say march of 2016? I would not be where I am today without it. It has served its purpose.
    I am kinda thinking my average age of accounts is going to be screwed anyway with all these new cards, and maybe closing the creditone wont make that big of a difference, and then I can garden? My AAOA says its currently 2 years 10 months.. I really was NOT wanting the sams club private label credit card. I was hoping to get the synchrony bank master card and be able to get the special $50 off $100 deal and get extra cash back on top of our plus membership. They would not approve me even though I have care credit and amazon, yet give me a $1200 limit on a non master card. The other lady at the counter told me they never approve people for the MC version. It would have been foolish for me to say no to the non MC, since they did a HP, plus at that point I did not have amex approval, and only $1k limit on my cap1 qs. If my AAOA goes way down, I guess I have 30 days to cancel the new card and just accept the HP as a loss, right? I have 7 HPs on my TU, 2 on my EQ, but that does not include my sams club or AMEX applications from this month. Only 2 of the 7 are from the last 6 months.My score is so low because of a student loan error 90 days past due, even though it wasnt, and I have written in about 5 letters and can't get it removed. On all the simulators, I have seen my score would instantly be 740-780 without the error. Ugh. What should I do about this? Keep sending in more letters? When I call in the rep always says I wont have any problem in getting it removed but that isnt the case. I was even thinking life would be better with them being serviced by a new company, but heck no... Question,
    I am preapproved for a discover IT card, do you think I should go ahead and take it? I applied for one 3/14 and was declined only due to 80%util (thanks to my care credit for a relative). The EO I spoke with for the recon a year ago basically told me once my util is below 30 I would guaranteed get approved. I honestly don't need it. I do like their cashback, basically doubling it for car rentals or flowers..... maybe I should wait and apply for it once my 15 months of no interest expires on my new amex? After hitting the luv button on my credit steps cap1 qs (no AF) and going from $1k to $3k...I am thinking I could just do a lot with that card, groceries/gas on AMEX, and be fine.
    I cant believe some of the stuff I have learned about. Terms like Stoozing. People making money off of no interest cash advances by placing them in a higher yield savings account.  As tempting as that sounds, and not to be judgemental,  I think in the time it would take me to do all that I could focus my time and energy into something and make just as much money. But thats just me. I do love couponing/frugaling and I think its a unique/cool idea though.  I also enjoyed reading about app-o-rama's. That is an interesting strategy. I don't think with my scores I would have benefited from applying for multiple amex cards. Now Chase would be my ultimate goal, thats for sure.
    I gotta say, it feels so good to see others beating this defunct system. I can understand why some people are so proud of the cards they have, and their limits. But to me, it seems almost like its so hit or miss. As in there isnt much continuity. Maybe some people arent being totally honest about their past on other sites. Or really the system is just that broke. One year ago, I never would have though today my score would be 80 points higher, and that I would be able to have real credit cards. It requires self control. I would not be able to be so diligent it if it wasnt for my Amex Serve card. It is SO easy and simple to take money from one account, move it to the other, pay bills, even do couponing.
    Ok. So now I have some real cards. I pay my bills on time, usually in full, if not much more than the minimum, 12 days early, every month.  I avoid pulling triggers on the store cards because I read so much mixed info on them (but I gotta say the kohls card sounds tempting). What else should I be doing here to improve my credit? I own my own car, don't have a mortgage, etc. Paying on my interest for my student loans will help me financially overall. I guess maybe I could cosign on someone's car loan, which would be a big risk, but I know for a fact if they ever had issues, someone would take care of it. Since I rent, should I try to get added to a family members mortgage? I do want to have the ability to get a home loan or an auto loan without astronomical interest rates. I am not planning on buying a home in the next year.
    THANKS!!!

    "my score is currently at EQ 669,TU 659 myfico ex of 688" Well, that is kinda awesome! In less than a month of joining myfico two of my scores have went up 30-40 points. (and my new Amex TL isnt even part of that!)  I didnt even realize it.  Thank you to everyone for the great advice here.  I really took advantage of the SP CLI's.  I have nearly tripled my total open CL.   I also found out that my one 120 day late error on a student loan is supposed to drop off after 7 years.  Now on experian, it said the date was August 2016.  The other two said January 2016.  I wonder how big of a score increase I would see from that?  I am also a little frantic here because apparently disputing things like these can cause them to be closed and reopened, and taking a big hit on AAOA, at least according to creditboards. I am also thinking that 1 more HP from CareCredit could be worthwhile.  Previously they only HPd my TU.  Ask for 25k CLI and hope they counter for 15-20k.  They did take my 2 month old amazon and sams accounts limits from 800/1200 up to 6000/7000. My care credit will be a 0 balance in the next month or two and having 15-20k 0 balance would be awesome for my uitilzation, no? I have also decided my Commerce Bank Visa is slightly evil. While 6 months ago I never would have contemplated eliminating it (as it was my highest CC CL at the time) they are just crazy. They give people bonus points for accruing interest. Seriously?  Plus their points are only worth half a cent.  And now the awesome shopping portal is gone where you could get 10-15 or even 20x points.  No manual CLIs.  System initiated every 4-6 months.  Their banks are not everywhere but also not that far away.  Maybe I should initiate this loan with them?  They only offer real loans of $7k or more. Otherwise they have accessible lines of credit starting at $1k.  They do have decent APR for used/new cars starting at 3 percent for future reference. I am getting Citi Simplicity 0% for 21 months then 12.9% offers that have the opt out notice. Previously they were for Diamond Preferred and Doublecash at 0 for 12-18mos then 19%.  Credit pulls database shows sub 700 scores getting approvals but with very low CL.  Seems to me with citi if you are 740+ they automatically give you 3-5x the starting limit. I am preselected on capital one for the venture, 0 for 15 then 17.9, also another QS, and the platinum prestige.  I mean yes, I really could be using the extra room to push purchases through for the rewards without having to pay off during the month. I am wondering since my QS Visa in credit steps has a 22.9% apr starting in october, maybe my angle should be to see what I am preselected for in september, take the 3 HPs but apply for 2 cap1 products Then eventually combine. I dont want duplicates. I have no personal need for 15 cards with 25k limits. But... Short term 1- 6 month goals:1. Small loan 2. Complete one 3x CLI on AMEX3. Grow or Throw the commerce bank visa.4. Potentially apply for Citi Doublecash then Venture Longer term 6-12 month goals1. Close credit one in march2. under 5% util3. Learn statement closing dates TLDR: is one HP CLI worth it for a potential 20-50% increase in overall CL? 

  • Question on a safari symptom that implies dns wierdness

    This question is posted here because to problem shows up best in Safari. However, as I understand the process, I do not believe the core of the problem is specifically Safari.
    When I try to browse to a nonexistant domain (for example, typing in xyzzy.apple.com into Safari's browser), I am shown a Network Solutions page which reads among other things:
    This Site Is Under Construction and Coming Soon.
    This Domain Is Registered with Network Solutions
    It's not as robust as the usual Network Solutions Under construction page.
    A screen shot of this can be seen at
    http://www.notnap.com/browsing/UnderConstruction.png
    I also get this when I type in partial urls. For example, if I simply type in ford to the address bar in Safari, I get the same page. Once upon a time, the browser would assume I meant to add a .com to the end of the url if I did not do so. While showing as a sign of laziness, I must admit I like this "feature."
    I NEVER see the standard Safari page saying "Safari can't find the page you are looking for."
    Some details:
    - Network consists of a DSL connection to Verizon.
    DSL modem - Linksys router = iMac G5, iMac G3
    Router is connecting to modem via PPPoE
    Router is configuring local network (192.168.1.x) via DHCP
    - I see the same results from IE5 on the OS9 Imac G3
    - I know I did not have these results until recently. Recent changes include:
    - upgrading firmware on linksys
    - changing internal network range from 192.0.1.x (wsa a typo) to 192.168.1.x
    Here is my thinking:
    There are two "problems" going on here.
    1) I'd like the browser address bar to assume I mean .com when I do not include a standard TLD
    2) I'd like to know how Network Solutions is rerouting my browser when my dns resolver falis to find an ip when searching on behalf of my browser.
    (1) is admitedly a behavioral preference.
    (2) is getting me worried. Doesn't this mean some local process is doing this?
    Here's a simplification of the entire process as I understand how dns and web browsing works...
    1) In Safari, I enter a bogus url domain, like "xyzzy.apple.com"
    2) the Safari process realizes I have not entered an IP number, and goes to the network stack in search of my dns resolver
    3) I've entered no custom host information, so the dns resolver on my system must go to whatever dns servers I have configured for use on my ethernet connection. (The only active connection, by the way). There are two dns servers, both in Verizon's space (they are my ISP)
    4) My system makes a query on port 53 to their first server. Let's assume they are playing by the rules and not proxying without my knowledge. Let's also assume there is nothing in their dns server cache for xyzzy.apple.com. After all, why should there be? Finally, let's assume their dns servers are recursive.
    5) Their dns server checks it's cache and realizes it has nothing for xyzzy.apple.com. It also quickly realizes it has no zone for apple.com, so it goes out on the quest. It hits the root servers, gets directed to the GTLD-SERVERS, gets directed to nserver.apple.com, which finally answers no such host.
    6) Verizon's dns server tells my computer's dns resolver no such host
    7) My computers dns resolver tells Safari no such host
    8) Safari should display the typical site not found page.
    As far as I can tell, when I do the search from a purely dns query standpoint, I get the expected results. Here's a clip from the terminal. Comments in italics:
    xxxxx:~ xxxxx$ cat /etc/resolv.conf
    domain xxx.com
    search xxx.com
    nameserver 141.154.0.68
    nameserver 151.203.0.84
    ........these are the correct names servers as provided by my isp........
    xxxxxx:~ xxxxxx$ dig @141.154.0.68 xyzzy.apple.com +trace
    ; <<>> DiG 9.2.2 <<>> @141.154.0.68 xyzzy.apple.com +trace
    ;; global options: printcmd
    . 197789 IN NS C.ROOT-SERVERS.NET.
    .........skipping a bit.........
    . 197789 IN NS B.ROOT-SERVERS.NET.
    ;; Received 436 bytes from 141.154.0.68#53(141.154.0.68) in 55 ms
    com. 172800 IN NS A.GTLD-SERVERS.NET.
    .........skipping a bit.........
    com. 172800 IN NS M.GTLD-SERVERS.NET.
    ;; Received 493 bytes from 192.33.4.12#53(C.ROOT-SERVERS.NET) in 40 ms
    apple.com. 172800 IN NS nserver.apple.com.
    apple.com. 172800 IN NS nserver.asia.apple.com.
    apple.com. 172800 IN NS nserver.euro.apple.com.
    apple.com. 172800 IN NS nserver2.apple.com.
    apple.com. 172800 IN NS nserver3.apple.com.
    apple.com. 172800 IN NS nserver4.apple.com.
    ;; Received 274 bytes from 192.5.6.30#53(A.GTLD-SERVERS.NET) in 34 ms
    apple.com. 86400 IN SOA nserver.apple.com. hostmaster.apple.com. 2006032800 1800 900 2016000 86500
    ;; Received 88 bytes from 17.254.0.50#53(nserver.apple.com) in 94 ms
    In other words, it got what you'd expect - the host does not exist.
    So what I want to know is, how is it that Safari is set to shown a Network Solutions page instead of the default Server not Found page? As far as I can tell, that page is not on my system, so Safari must be retrieving it from elsewhere.
    But how? When the local process trying to resolve the bogus host xyzzy.apple.com is dig, host, nslookup or the like, I get the correct host not found. How then is that information being changed between my local dig process and the safari process, so that Safari then shows the Network Solutions page? Remember that the only processes which "know" this query was originated by a browser and not by a dns utility like dig are local to my box. So, how can this substitution be done without local access?
    Wouldn't this imply a local security problem?
    I've tried (although I cannot imagine how some of these would affect a resolution):
    - Reset Safari
    - emptying cache and history
    - manually entering the dns information in system prefs (allowing the system to be configured via dhcp does work - according to network utils, the dns info is there - but they do not show up in the network prefs panel.
    - adding ".com" "com" or a few other variations to the default domain in the network prefs.
    - Deleting Safari's prefs (~/Library/Safari/)
    I did find some discussion about something similar from back around 2002 complaining that similar action could potentially cause host verification problems for email servers and the like. Though, I'd guess most of these kinds of verifications would be for the reverse lookups. Still, I dould not find an exmplanation of how it was done, or more importantly, how to stop it, short of petitioning the ISP's to upgrade their version of BIND.
    I'd love to be able to stop this annoying free ad for Network Solutions from appearing whenever I'm wither lazy or sloppy typing in the url. But more importantly, I want to know how this process works. The fact I see similar results on my OS9 ImacG3 strongly implies I'm not looking at a security issue - it's unlikely my conclusion there is a local process intercepting the dns results between my resolver process and my safari process is correct, as the same thing seems to be happening there as well. But I gotta know. How is this happening? How did Network Solutions do this?

    What you're describing sounds suspiciously like
    VeriSign's SiteFinder from ... the
    fall of 2003, which is when it was up and running.
    That's one thing I did find from my searches. What I didn't find was an understanding of how they did it then, and by inference how they're doing it now, assuming we're seeing a recurrance.
    I find thousands of similar hits by searching on the text in the page, though it's unclear how many of these are legit - some of these pages are truthful. Hitting xyzzy.apple.com and being told "This Domain Is Registered with Network Solutions" is another matter entirely.
    This looks like your page doesn't it:
    http://underconstruction.networksolutions.com/
    You know what would be interesting? The output of
    this Terminal command:
    curl -I
    http://xyzzy.apple.comSee what headers get
    returned from whatever server is answering the
    call...
    I'll do you one better... from terminal:
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    notnAP:~ notnap$ curl -Iv http://www.apple.com
    * About to connect() to www.apple.com port 80
    * Trying 17.112.152.32... * connected
    * Connected to www.apple.com (17.112.152.32) port 80
    HEAD / HTTP/1.1
    User-Agent: curl/7.13.1 (powerpc-apple-darwin8.0) libcurl/7.13.1 OpenSSL/0.9.7i zlib/1.2.3
    Host: www.apple.com
    Pragma: no-cache
    Accept: /
    < HTTP/1.1 200 OK
    HTTP/1.1 200 OK
    < Age: 7
    Age: 7
    < Date: Fri, 31 Mar 2006 03:13:09 GMT
    Date: Fri, 31 Mar 2006 03:13:09 GMT
    < Content-Length: 30692
    Content-Length: 30692
    < Content-Type: text/html
    Content-Type: text/html
    < Expires: Fri, 31 Mar 2006 03:18:09 GMT
    Expires: Fri, 31 Mar 2006 03:18:09 GMT
    < Cache-Control: max-age=300
    Cache-Control: max-age=300
    < nnCoection: close
    nnCoection: close
    < Server: Apache/1.3.33 (Darwin) PHP/4.3.10
    Server: Apache/1.3.33 (Darwin) PHP/4.3.10
    * Connection #0 to host www.apple.com left intact
    * Closing connection #0
    notnAP:~ notnap$ curl -Iv http://xyzzy.apple.com
    * About to connect() to xyzzy.apple.com port 80
    * Trying 216.168.224.70... * connected
    * Connected to xyzzy.apple.com (216.168.224.70) port 80
    HEAD / HTTP/1.1
    User-Agent: curl/7.13.1 (powerpc-apple-darwin8.0) libcurl/7.13.1 OpenSSL/0.9.7i zlib/1.2.3
    Host: xyzzy.apple.com
    Pragma: no-cache
    Accept: /
    < HTTP/1.1 200 OK
    HTTP/1.1 200 OK
    < Server: Sun-ONE-Web-Server/6.1
    Server: Sun-ONE-Web-Server/6.1
    < Date: Fri, 31 Mar 2006 02:59:12 GMT
    Date: Fri, 31 Mar 2006 02:59:12 GMT
    < Content-type: text/html
    Content-type: text/html
    * Connection #0 to host xyzzy.apple.com left intact
    * Closing connection #0
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    I'll save you the trouble:
    VeriSign Infrastructure & Operations NSI-NETBLK1 (NET-216-168-224-0-1)
    216.168.224.0 - 216.168.255.255
    Network Solutions, Inc. NETSOL-SWIP-216-168-224 NET-216-168-224-0-2)
    216.168.224.0 - 216.168.224.255
    So what does it mean, and can anyone tell me how they're doing this? I hate not understanding how this is being done, and it directly proves my understanding of dns and the network stack on my iMacs is wrong, or at least incomplete. Inconceivable!

  • At 60 and totally confused w/version . Not  clue with how to use it and how to change it. My question - If a new version of i-tunes can be offered why not the older version as being a choice? Too simple or just impossible to do? I hate to drop i-tunes.

    At 60 years of age and totally challenged by todays technology I find it impossible to understand i-tunes Version 11. Don' ask me to try to try go back to a earlier version ( as much as I would like to). I have read some of the advice given, as well as intended as it is, I don't understand the process. I don't want to drop i-tune but I will. I am sure my library is not as large as many others who use it but it is just as important to me. This really saddens me.
    I do have two question if some one can help me. First, someone mentioned that if I go to previous restore point this might correct it. Yes or no? Secondly, if Apple can offer us a new version to download why can't they offer an older version to download. Too simple or impossible to do.

    You can still drag and drop a song into a Playlist, in the same manner as before. Simply use the left-click of your mouse to select-and-hold the song (left-click-and-hold, don't release the click) and drag it to and then drop it (release the click) into the Playlist you want. (You cannot drop it into a Smart Playlist, you can only drop it into a Regular Playlist.)
    ... and here's a screenshot dragging the song "Lazy Orbit" into the Regular Playlist "Sat 4th June 2011". A small + symbol also appears in the drag, but it doesn't show up on screenshots. If the move is forbidden, a red slash through a red circle appears instead of the + symbol.
    As for the Albums thing; in the Column Browser, right-click anywhere in the Column Browser header (see my screenshots in my previous post) and a menu appears. Deselect Albums on that menu to remove Albums from the upper Columns:
    ... and for the columns underneath (with the songs list etc.), right-click on that header bar and once again, deselect Albums from the menu that appears. The Albums column will then be removed from the lower columns list.
    ed294 wrote:
    You would think with all the complaints they are getting they would want us, the buyers, to be satisfied with there product.
    Well, my advice to you is: do not think about what you think iTunes cannot do, instead, think about what you want to achieve - and then work out how to achieve it.

Maybe you are looking for

  • IOS upgrade does it again.  It trashes my old calendar entries

    I have come to rely on the feature in the iOS upgrade that it will trash my old calendar entries. Upgrading to iOS 4 was no exception. It changed start and end times, repeat information, adds entries,combined multiple repeating entries into 1 even th

  • Do you pre order on vzw's website or apple?

    or can you do it from either/or? and is it confirmed that they will ship your phone to your house? all along i was thinking i'd have to go pick it up at a store...

  • Why are moves in FCPX so awful?

    I can't believe how silly making moves on graphics and whatnot in FCPX is. What happend to handles and being able to ease in/out the way you want instead having some default end-eases that make your moves look ridiculous. Everytime I make a move and

  • Language Translation for SAP Scripts

    I was trying to translate the form (F150_DUNN_01) from language EN to ZH through SE63 transaction. But it is not working. Can anyone make it for me please. Thank You.

  • I got a free copy of Windows 8.1 from dreamspark but now its telling me it cant activate windows.

    AS i said, i used my student email to make a dreamspark account, downloaded my copy of windows 8.1 for free, put it onto a bootable flash drive, and loaded it onto my newly built pc. Everything was ok for a couple of hours but now i have the activate