Collection.equals

The javadocs for collection.equals states
"The general contract for the Object.equals method states that equals must be symmetric (in other words, a.equals(b) if and only if b.equals(a)). The contracts for List.equals and Set.equals state that lists are only equal to other lists, and sets to other sets. Thus, a custom equals method for a collection class that implements neither the List nor Set interface must return false when this collection is compared to any list or set. (By the same logic, it is not possible to write a class that correctly implements both the Set and List interfaces.) "
Why not? Couldn't a class implement both List and Set and compare either way, depending on what kind of object it is being compared with?
FYI I grumbled about equals before in a previous post
http://forum.java.sun.com/thread.jspa?forumID=425&threadID=619976
I was just working on something and came across a bug in my code because I was hashing something using an arrayList as a key, and I believed incorrectly that equals would be implemented the same way it is for arrays.
It seems weird to me that Collection, List and Set require symmetry and transitivity between all classes implementing them, but CharSequence (an interface implemented by both String and StringBuffer, ala my other post) does not.
CharSequence states:
"This interface does not refine the general contracts of the equals and hashCode methods. The result of comparing two objects that implement CharSequence is therefore, in general, undefined. Each object may be implemented by a different class, and there is no guarantee that each class will be capable of testing its instances for equality with those of the other. It is therefore inappropriate to use arbitrary CharSequence instances as elements in a set or as keys in a map"
Ok. So the guys working on Java have given us at least three or four different patterns to follow here: There are arrays which we know are only equal if they are the same array. There's the Object (general) implementation of equals in which we can count on objects of different classes being different. There's List and Set where all lists and sets are equal to other lists and set respectively, and there's the CharSequence pattern in which all bets are off.
Wouldn't it be easier for people to learn and program in java if they could rely on one of these patterns without having to go through the javadocs with a fine toothed comb?

No.
Let's say you have a List, (L) a Set (S) and a
List/Set (LS).
You want both of the following to be able to be
true:
LS.equals(L)
LS.equals(S)
However, symmetry and transitivity combine to tell us
that L.equals(S) and S.equals(L) must also return
true.
The contracts for List and Set require L.equals(S)
and S.equals(L) to return false.
Ah ok. Thanks for clearing that up for me. It seems kind of limiting to say that there could never be a collection that is both a list and a set, but I guess it wouldn't be too hard to work around.
Object and arrays use the same equals method--only
returns true if the references are equal.Yes, I meant Object in the general sense, not the Object class itself. So things like Integer(5) can be equal to another Integer, but never to a Float.
There's List and Set where all lists and
sets are equal to other lists and setrespectively,
No. Any List can be equal to any other List,
and any Set can be equal to any other Set. In
both cases, it depends on what elements the
collection contains.Right, sorry that's what I meant to say.
It makes sense that List and Set define equals the
way they do. Since Lists are ordered, it makes sense
that the order should matter in determining equality.
Since Sets are not ordered, it would not make
sense to use order in determining equality.Naturally. But it might also make sense just to say that lists and sets are only equal to themselves.
and there's the CharSequence pattern in which all
bets are off.There's nothing special about CharSequence. It's just
another interface that doesn't define a specific
equals implementation.Yes. What I was trying to get at is that while in general objects (such as subclasses of Number) are only be equal to objects of the same class, and lists and sets must be equal to other lists and sets, respectively, that CharSequence says that some subclasses MAY be comparable using equals.
However, ease of learning is not the one and only
supreme driving force behind the design of the
language and the APIs.Acknoledged. What I mean is that with equals following all these different patterns, it is easy to make a mistake that goes unnoticed until software is in the hands of the clients.
Rather than trying to cram equals (or anything else)
into a fixed set of pigeonholes, you'd be better
served to try to undertand the fundamental purpose
behind it and what kinds of factors go into deciding
what the appropriate implementation is in a given
situation.Ok. What is the fundamental purpose behind equals? Not trying to be hostile here, I'm just curious. I know that one of the biggest factors is with collections and such questions as hashing and contains. Another big one is String.equals(...) to compare strings. Are there any others?
I'm just trying to figure out how it might be possible to make equals() more opaque in future languages, so that people can read the basic definition of equals given in Object and know how it is used and how to use it. If you think that it is already clear and easy to use, consider that using FindBugs (google for FindBugs if you are interested) I found a bug in the java source in ChoiceFormat that has existed since ChoiceFormat's inception in Java 1.1 in which it calls equals between a StringBuffer and a String. If the people working on designing Java can make these mistakes, what hope have the rest of us?

Similar Messages

  • Server 2012 RS Multiple RDS Collections equals only one application from one collection at a time

    Hello all!
    We have a 2012 R2 RDS "farm" configured like this:
    2 RD Web Access servers (load balanced behind KEMP appliances)
    2 RD Connection Brokers in a High Availability configuration
    8 RD Session Host servers (no VDI) in 2 different collections
    I've noticed that if I have rights / visibility to different applications in both collections I can only run one of the applications at a time.  For instance:
    Collection A has application 1
    COllection B has application 2
    What i'm experienceing now is that if i have rights to app 1 and app 2 i can only use one at a time.  If i attemp to run app 2 while i have app 1 open I get this message:
    "Windows cannot start the RemoteApp program.  The following RemoteApp program is not in the list of authorized programs: app 1"
    Maybe my thinking is incorrect and you cannot cross boundries from one collection to the other.  Maybe i need one collection with all my host and segregate applications via AD permissions.  Any thoughts?

    Hi,
    Please make sure the client PC has mstsc.exe 6.3.9600 (RDP 8.1) or later.
    From your description it sounds as though it is attempting to connect to the wrong collection when you launch the RemoteApp for the second collection.  This can be caused by older client version and/or your load balancing configuration.  You should
    load balance the initial connections to the broker, but not use a load balancer for the connections to the RDSH servers, unless you have a specific need to.  The RD Connection Brokers will handle the load balancing for the RDSH servers.
    Thanks.
    -TP

  • WorkManager 6 - Additional fields do not get deleted

    Hi,
    I have an issue with WorkManager 6.0 Enhancement.
    I have added custom fields to the Workorder object. To do this, I have created a ZWORKORDER class that handles these fields with its setter and getter methods and have as well created ZBAPI and ZSTEPLET classes and configured these in the config panel.
    We have added a new structure to the workorder as well.
    Downloading the information works fine - it is displayed properly and all data if handeled correctly.
    If I now delete the workorder form the device with a sync, it seem to work fine as well - until the last workorder is removed.
    If there are no workorders left, it will display text of the last order on the screen in the first tab. Some of the fields I did add are filled and the description if filled as well. The complete rest of this item is empty.
    In my finding the additional structure is removed and if I enter the Agentry Test Environment the data is gone there as well. So there is no workorder left or anything like.
    So my question: what do I have to do to remove the additional fields and clear them correctly? Do I need to change the REMOVE Bapi and Steplet or have I done wrong something else?
    Is there a guide around so I could compare if I did something wrong?
    I implemented my own ZRemove classes to be able to debug, but even that did no throw any more light on it.
    Thanx a lot for your help.
    Oliver
    Tags edited by: Michael Appleby

    Oliver,
    This is a bug in the Workmanager application.  Specifically, a bug in the Agentry platform when it attempts to clean up a Tile Display control after there are no longer any objects because of a deletion.  I have run into the scenario you are describing on another project.  You aren't doing anything wrong, but need to use some trickery to correct this.  If it is just the main detail screen that wont clean up, add another copy of the detail screen to that screenset, call it DetailEmpty or something like that.  Leave all the fields positioned as they should be, but remove all the object mappings and update rules on the fields so they never display anything.  Next add an enable rule on the new screen that checks to see if the COUNT of the workorders collection equals zero.  Put the opposite enable rule on the original detail screen that checks if workorder count > 0.  That way only one or the other screen will ever be displayed, and when there are no workorders, you will see blank fields.  This workaround is required until Agentry can correct the platform defect.
    Jason Latko - Senior Product Developer at SAP

  • Understanding the gc log

    Hi,
    I'm trying to understand the garbage collection log (1.4.2). I have log statements in there like:
    14325.110: [GC 14325.110: [DefNew: 111691K->111691K(118016K), 0.0000206 secs]14325.111: [Tenured: 283068K->298347K(393216K), 4.1681840 secs] 394760K->298347K(511232K), 4.1683295 secs]
    The way I read it is: nothing done on the New Generation and the tenured Generation even increased. But looking at the total heap, the total used memory after the garbage collection equals the total used memory in the tenured Generation making me believe that the New Generation is empty. Is there a display bug that the New Generation was completely cleared but only the log incorrect? But is it really possible to clear the New Generation up to the very last byte?
    dirk

    Hi,
    I'm trying to understand the garbage collection log
    (1.4.2). I have log statements in there like:
    14325.110: [GC 14325.110: [DefNew:
    111691K->111691K(118016K), 0.0000206 secs]14325.111:
    [Tenured: 283068K->298347K(393216K), 4.1681840 secs]
    394760K->298347K(511232K), 4.1683295 secs]
    The way I read it is: nothing done on the New
    Generation and the tenured Generation even increased.
    But looking at the total heap, the total used memory
    after the garbage collection equals the total used
    memory in the tenured Generation making me believe
    that the New Generation is empty. Is there a display
    bug that the New Generation was completely cleared
    but only the log incorrect? Yes, exactly.
    But is it really possible
    to clear the New Generation up to the very last
    byte?Yes, all the survivors in the New Generation were compacted
    up into the Old Generation. (The whole heap was collected.)

  • Why hashcode

    What is the use of hash code () method?

    hashCode is used as a fast way to compare two objects.
    If the hashCode are equal, there is a chance that the
    two objects are equal. This is then verified by
    calling the equals method.
    It is used a lot with the Collection classes, for
    example with the HashMap. The HashMap will not allow
    duplicate keys, so when you add something, it checks
    if the key already exist, and if it does it overrides
    the value.This is true, but only upto a point.
    It depends on the way the hash code is generated.
    The hashcode for java.lang.Object is based on the actual reference (read: pointer value) for that object and you can test for identity when using the standard hash code values but not for probable equality.
    This kind of test for identity or probable equality is not reliable however. It is often recommended that you override the equals and hashcode methods for classes so that things like the Collections classes handle instances of your classes in a predictable manner. This can mean that using hash code comparison as a clue to possible equality can often cause you to take an extra step in checking for equality when this would not be the case (reason, you normally check for class equality with instanceof and then equality. The hashcode step can work, see below).
    Using hashcode for probable equality checks will only work properly, after instance class comparison, if the hashcode reflects the uniqueness of those member variables for the purposes of comparison.
    The problem with this usage of hashcodes is that it can cause clumping of keys inside datastructures like the Hashtable collection class where hashcode is used for working out which 'bucket' the key should land in. This leads to poor performance in your collection as the less uniform the key distribution is the more time it takes to actually find the key you want in the bucket.
    In short:-
    hashcode should normally be overriden to optimise the distribution of keys in Collections,
    equals should be overriden to ensure proper equality and also allow you to optimise the method, instance class equality, primitives then object member equality.
    Example
    class Simple {
        int a = 1;
        String b = "I am a String";
        public boolean equals(Object ob) {
            return (ob instanceof Simple.class &&
                       this.a == ((Simple)ob).a &&
                       this.b.equals(((Simple)ob).b)); // Casts will be optimised out for the optipurists
        public int hashCode() {
            return this.a ^ this.b.hashCode();

  • Equals() in Sets and Collections

    It is a common knowledge that Collection per se are not supposed to have equals() method: first, comparing two bags (multisets) is too costly, second, comparing a Collection to a List may lead to ignoring the List order - the same elements but in different order is a different List, right?
    Then I have a question: why does SortedSet have equals() method? It is definitely not just a Map, but a decorator; the order can be different. It is obviously an error.
    Unlike the other clumsy feature:
    Map<String> m1 = new HashMap();
    Map<String> m2 = new HashMap();
    m1.put("k", "v");
    m2.put("k", "v");
    m1.equals(m2); // returns true
    m1.values().equals(m2.values()); // returns false - there is a long explanation why
    Another, unrelated, observation.
    String[] a1 = new String[] {"a", "b"};
    String[] a2 = new String[] {"a", "b"};
    a1.equals(a2); // returns false - bad, bad, bad implementation!
    Arrays.asList(a1).equals(Arrays(asList(a2)); // returns true - way to go!

    In which case my response is: It is?I think so. I can't say I've taken a survey, but I doubt that it's "common knowledge" that collections shouldn't override equals.
    Otherwise you would end up comparing
    Lists and Sets.Not if you follow the documented contracts.
    the List order - the same elements but indifferent
    order is a different List, right?List's equals contract requires that equals return
    true iff the other object is also List and hasthe
    same elements (by the elements' equals methods) in
    the same order. You are repeating my explanation, are not you?No. I'm pointing out what you seem to have missed--that if you follow the documented contracts, there won't be a problem.
    If you're aware of that and I missed you point, perhaps you could try to clarify what you're getting at?
    Then I have a question: why does SortedSet have
    equals() method? It is definitely not just aMap,
    but
    a decorator; the order can be different. It is
    obviously an error.Set's equals contract only requires that the other
    object also be a Set and that the two Sets contain
    the same elements. Wrong. I mean, an ordered set is not equivalent to a
    set. In your mind it is not. In the view taken by the collections framework, it can be. Neither view is inherently correct or wrong. I've never been in a situation to compare a SortedSet to a non-sorted Set (as far as I know), but I have compared Sets, and my own needs didn't care whether neither, one, or both of the Sets was sorted. So in the cases where I've compared Sets, the current definition has worked for me. I suppose there are cases where it doesn't work.
    It has an additional structure: the order. Two
    different ordered sets can have the same elements, it
    does not mean they are the same. There's nothing inherent about equals() that says it has to compare every attribute or every structural aspect of the objects being compared.
    It's math.But this is Java, which is intended to model certain mathematical concepts to a certain degree, but not necessarily to be perfectly faithful to them.
    >
    >
    I suppose you could argue that for
    SortedSets, order should matter for equality, buta)
    I don't see any real benefit to it and b) You then
    wouldn't be able to compare SortedSets to otherSets,
    so the specific implementation would matter(unlike
    for Maps and Lists).Well, here we are getting closer to the paradox. Of
    course it would be interesting to compare SortedSets
    as if they were ordinary Sets, and compare them to
    Sets as well.As I said, I haven't knowingly done so, but I was glad that I didn't have to care whether they were sorted.
    How about Lists? We may be interested in comparing
    them too, ignoring the order. A List is an ordered
    multiset. Why not compare Lists and Sets, as
    Collections? I would not object - but the problem
    lies somewhere deeper. Do you know where?I don't know that there is a problem. I'm not saying the current equals contracts are perfect, or that an objective "best" contract can be defined. But in my experience they have served well whenever I've needed them. I think they're a reasonable, practical compromise.
    Weird. What is that explanation?values() returns a virtual Collection, a view that
    has only an iterator which scans EntrySet and returns
    Map.Entry.getValue().Okay. Still not sure why that would return false, but I'm not able to focus on it that much at the moment.
    Yeah, I always thought it was odd that arrays'equals
    methods didn't behave more like List's. I imagine
    there's a reason for it, owing to how the array
    classes are created, but still...What could be the reason? I'm just curious, that's
    why I started this philosophical thread. :)I don't know, but one thing that's odd about arrays. There's no such class as MyClass[] until I create MyClass. Then MyClass[] magically comes into existence (or maybe the first time I use it). That makes the array classes different from other classes. I imagine it would have been possible to have them provide their own equals() that compares elements, but presumably it was deemed more difficult or complex or error-prone than the perceived value it would add.

  • Collection override for equals

    Hi,
    i have a Collection X of objects and i would like to use X.contains(blah) to check for an obect's existence. The problem is that 5 out of the six fields in the object are the same but the sixth is different.
    Object o1 {
    x=10;
    a=1;
    b=1;
    c=1;
    d=1;
    e=1;
    Object o2 {
    x=20;
    a=1;
    b=1;
    c=1;
    d=1;
    e=1;
    These would be equal .. because the first field is irrelevant!
    So, the Collection X reads {o6, o7, o8, o2} and X.contains(o1) returns true. OK? So how do i get this scenario?
    Thanks.

    I have a Set and I add objects of a class that has the method equals defined. Howerver the object equals method is not called when I do a contains(object). What is it that I am doing wrong?
    public class TSet {
    public TSet() {
    Set s = new HashSet();
    s.add(new MyTest("A","B"));
    MyTest t = new MyTest("A","B");
    // I was expecting that the equals in MyTest object
    // would be called but it is not
    if(s.contains(t))
    System.out.println("found:" + t);
    else
    System.out.println("not found:" + t);
    MyTest x = new MyTest("X","B");
    if(s.contains(x))
    System.out.println("found:" + x);
    else
    System.out.println("not found:" + x);
    * @param args the command line arguments
    public static void main(String[] args) {
    new TSet();
    class MyTest{
    String a = null;
    String b = null;
    private MyTest(){}
    public MyTest(String a, String b)
    this.a = a;
    this.b = b;
    public boolean equals(Object o)
    return equals((MyTest)o);
    public boolean equals(MyTest t)
    if(a.equals(t.a) && b.equals(t.b))
    return true;
    else
    return false;
    public String toString()
    return " a=[" + a + "] b=[" + b + "]";

  • Why Collection interface declares equals() and hashCode() method

    When I went through the source code of Collection interface, I found equals() and hashCode() are declared? Why? If a class implements this interface, it will inherit these two method from Object, and we can true to override them.

    It's probably so that they can provide the documentation that you see there.

  • Improve Auto-Stack and Process Collections with user settings

    I have read through all of the Bridge request discussions, and encountered a few comments on the stacking process but nothing to explain my critique and feature request. My apologies for any redundancy.
    Bridge CS4 includes two features that would (virtually) streamline my entire photo-organization workflow. Brilliant! Except that they offer zero configuration and my default scenario is very different from Adobe's, so these two would-be-wonderful features are pretty much useless to me, and to anybody else who doesn't happen to shoot in the way the presets are configured.
    The first feature is to automatically group images into stacks, based on their similarity, exposure settings, and timestamps. Unfortunately Bridge considers no minimum or maximum amount of photos per stack, and has a fixed timestamp window of 18 seconds. I shoot everything in three-exposure bursts and sometimes multiple shots in less than 18 seconds, so being able to say "process collections in 3-item stacks only" would be absolutely perfect. For other people, being able to limit the timestamp range or other min/max exposure options would work great.
    The second feature, which could save me hours every week but is equally useless, is to automatically process collections in Photoshop. My biggest ire about this function is that it completely ignores stacks that I have manually created AND stacks that were previously created using the auto-stack feature. Every time this function is run, it re-runs the auto-stack process from scratch and then delivers the collections to Photoshop. Not only is this made useless by the previously mentioned inflexibility of the auto-stack process, but even if auto-stack worked perfectly, this would waste time by doing the entire thing again and denying the user the option to review the stacks before committing to the Photoshop processing. The process collections feature would also be much improved if the option were given to process ONLY panoramas or HDR photos, or auto-detect. I have never shot a panorama in my life and I'm sure plenty of people have never shot HDR, but Photoshop isn't capable of knowing our intentions and there's no reason why we shouldn't be able to instruct it.

    Agree. It is an interesting capability that falls short of being really useful. I feel like an ingrate to complain, but ...
    I'd also like to see the capability to specify something than "Auto" for the panorama option. My experience is that most of my panos work best with "Cylindrical + Geometric Correction".
    My experience is that once you get past 5+ images in a pano, it becomes very tedious ... and then 20+ images in rows is painful. Unlike a single image that you can quickly evaluate, with panos I find I need to make the pano to tell if it going to turn out.  I have been generating smaller 1800x1200 or 1200x1800 files to speed up the evaluation process, but it is still very manual and tedious.
    The Auto-Stack generates a AutoCollectionCache.xml, but I haven't found it workable to edit this. I'd like to be able to modify it to "force" my knowledge of what is in a group. It seems to check the time-stamp, and re-do the Auto-Stack, thus ignoring my changes. Sigh.

  • SharePoint PowerPivot feature failing after site collection was backed up and restored (moved to new content database)

    Hi there,
    I am having some strange issue with my PowerPivot for SharePoint but can't figure out what is causing this. Here is what happened:
    I setup PowerPivot (PP) for SharePoint and activate it on few site collections in production environment; I upload a PP workbooks in a library, manage the data refresh schedules, run the data refresh for an external SQL databases, etc. Everything works
    fine for several days.
    One day we decide the move one of the site collections (X) from its current content database to its own (new) content db. The way we did it is that we took the site collection backup in production, restored it in test environment (in its own content
    db; we deleted the old site collection in test first before restoring), checked everything including PP data refreshes etc.; all worked fine.
    Then we did the same thing in production - we deleted the old site collection X, restored the site collection from the same backup file that we used in test environment, everything works fine EXCEPT the PowerPivot refreshes!! :-(
    I am getting these errors: When I click on the workbook, it gives this error "An error occurred during an attempt to establish a connection to the external data source. The following connections failed to refresh: PowerPivot Data"
    When I click OK on error dialogbox, it opens the workbook fine but no slicers/refreshes work now. When I go back to the library and click on "Manage PowerPivot Data Refresh" to open the refresh history/schedule page, it gives this generic but scary
    error: "An unexpected error has occurred. Troubleshoot issues with Microsoft SharePoint Foundation." ULSViewer or Event viewer is not showing anything related to this error!
    Strange thing is that PP refresh works fine in Test environment, as well as on other site collections in production that we didn't touch (which tells me there is nothing wrong with my PP configuration). Did the backup/restore in prd cause anything? Did moving
    it in its own contentdb cause anything? (But then why it works in test environment?) Is there anything wrong with site collection PP feature? Can force reactivating it help??????? I am just lost and going crazy now!
    Please help.
    Asif

    I have found some entries in ULS logs seemingly relevant to this issue as below: Please help. Thanks.
    Note: I have replaced urls with <url> or <server> and username with "domain\user".
    ExternalSource.GetExternalKeyAndStateAndMarkUsed: Populating the session's credentials for external data. Index=0, Credentials=[14337250,
    domain\user]
    ConnectionRequest.ConnectionRequest: New connection request. SessionId=1.V24.1916ClMR0rOQ1F8mQPqtil0V90.5.en-US5.en-US73.-0600#0000-04-00-01T03:00:00:0000#+0000#0000-10-00-01T02:00:00:0000#-006036.7dcb49ef-0dc4-45d2-a0f8-4dc0e18a70f41.N,
    WorkbookVersion=ConnectionInfo.WorkbookVersion: Uri=http://<url>/SQL_PowerPivotTest.xlsx, Version=Monday, 09 September 2013 06:29:42
    Check whether "http://<url>/SQL_PowerPivotTest.xlsx" is in the farm.
    Connecting to "http://<server>/_vti_bin/PowerPivot/Redirector.svc/?DataSource=/team/IT/SiteCollectionDocuments/SQL_PowerPivotTest.xlsx&LocaleID=1033".
    WcfSendRequest: RemoteAddress: 'http://<server>:32843/0a4610a7f75f4ff582ca7329256f0fe3/SSASMidTierService.svc' Channel: 'Microsoft.AnalysisServices.SharePoint.Integration.IGeminiServiceApplicationClient'
    Action: 'http://tempuri.org/IGeminiServiceApplication/GetDatabase' MessageId: 'urn:uuid:44f67e36-7ec2-4fe8-bd4c-277c9d9ddde7'
    WcfReceiveRequest: LocalAddress: 'http://<server>:32843/0a4610a7f75f4ff582ca7329256f0fe3/SSASMidTierService.svc' Channel: 'System.ServiceModel.Channels.ServiceChannel'
    Action: 'http://tempuri.org/IGeminiServiceApplication/GetDatabase' MessageId: 'urn:uuid:44f67e36-7ec2-4fe8-bd4c-277c9d9ddde7'
    Entering monitored scope (ExecuteWcfServerOperation)
    Obtaining routing information for the request using <SERVER> - User:domain\user, DataSource: http://<url>/SQL_PowerPivotTest.xlsx,
    Version: 09/09/2013 06:29:42. (RequestStartTime=[<SERVER>])
    Leaving Monitored Scope (ExecuteWcfServerOperation). Execution Time=10.7664521608193
    EXCEPTION: System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail]: Unable to find the specified file. (Fault Detail
    is equal to An ExceptionDetail, likely created by IncludeExceptionDetailInFaults=true, whose value is: System.IO.FileNotFoundException: Unable to find the specified file.  
     at Microsoft.SharePoint.SPFile.EnsureUniqueId()   
     at Microsoft.SharePoint.SPFile.get_UniqueId()   
     at Microsoft.AnalysisServices.SharePoint.Integration.Redirector.BackendRedirectService.GetDatabase(String loginName,
    String dataSource, String versionLabel, DateTime fileLastModifiedTimestamp, Int32 localeId, Boolean collectHeathInfo, Boolean createLocal, String serverEndpointAddress)   
     at Microsoft.AnalysisServices.SharePoint.Integration.GeminiServiceApplication.GetDatabase(String loginName, String
    dataSource, String dataSourceVersion, DateTime fileLastModifiedTimestamp, Int32 localeId, Boolean collectHeathInfo, Boolean createLocal, String serverEndpointAddress)   
     at SyncInvokeGetDatabase(Object , Object[] , Object[] )   
     at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)   
     at Sy...).
    Proxy encountered an error while trying to get the sandbox information. This request will be terminated
    EXCEPTION: System.ServiceModel.FaultException`1[System.ServiceModel.ExceptionDetail]: Unable to find the specified file. (Fault Detail
    is equal to An ExceptionDetail, likely created by IncludeExceptionDetailInFaults=true, whose value is: System.IO.FileNotFoundException: Unable to find the specified file.  
     at Microsoft.SharePoint.SPFile.EnsureUniqueId()   
     at Microsoft.SharePoint.SPFile.get_UniqueId()   
     at Microsoft.AnalysisServices.SharePoint.Integration.Redirector.BackendRedirectService.GetDatabase(String loginName,
    String dataSource, String versionLabel, DateTime fileLastModifiedTimestamp, Int32 localeId, Boolean collectHeathInfo, Boolean createLocal, String serverEndpointAddress)   
     at Microsoft.AnalysisServices.SharePoint.Integration.GeminiServiceApplication.GetDatabase(String loginName, String
    dataSource, String dataSourceVersion, DateTime fileLastModifiedTimestamp, Int32 localeId, Boolean collectHeathInfo, Boolean createLocal, String serverEndpointAddress)   
     at SyncInvokeGetDatabase(Object , Object[] , Object[] )   
     at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)   
     at Sy...).
    PF_CHECK_ERROR returned 'critical hresult error' 0x80004005 ; Stack Trace:NA
    PF_CHECK_ERROR returned 'critical hresult error' 0x80004005 ; Stack Trace:NA
    PF_CHECK_ERROR returned 'hresult error' 0x80040e41 ; Stack Trace:NA
    ConnectionManager.GetConnection: Failed to create new connection, exception=Microsoft.Office.Excel.Server.CalculationServer.Interop.ConnectionException:
    Exception of type 'Microsoft.Office.Excel.Server.CalculationServer.Interop.ConnectionException' was thrown.   
     at Microsoft.Office.Excel.Server.CalculationServer.Interop.ConnectionInterop.InitConnection()   
     at Microsoft.Office.Excel.Server.CalculationServer.ConnectionManager.<>c__DisplayClass3.<CreateConnection>b__0()   
     at Microsoft.Office.Excel.Server.Credentials.TryExecuteImpersonated(WindowsIdentity wi, ExecuteImpersonatedMethod
    method, Boolean dispose)   
     at Microsoft.Office.Excel.Server.Credentials.TryExecuteImpersonated(ExecuteImpersonatedMethod method, Boolean
    dispose)   
     at Microsoft.Office.Excel.Server.CalculationServer.CredentialsDelegation.TryExecuteImpersonated(ExecuteImpersonatedMethod
    method)   
     at Microsoft.Office.Excel.Server.CalculationServer.ConnectionManager.CreateConnection(Credentials credentials,
    ConnectionInfo connectionInfo, Int32 keyLcid, Uri workbookUrl, Boolean auditConnection, SessionId sessionId), sessionId=1.V24.1916ClMR0rOQ1F8mQPqtil0V90.5.en-US5.en-US73.-0600#0000-04-00-01T03:00:00:0000#+0000#0000-10-00-01T02:00:00:0000#-006036.7dcb49ef-0dc4-45d2-a0f8-4dc0e18a70f41.N,
    connectionString=Provider=MSOLAP.4;Persist Security Info=True;Initial Catalog=Microsoft_SQLServer_AnalysisServices;Data Source=$Embedded$;MDX Compatibility=1;Safety Options=2;MDX Missing Member Mode=Error;Optimize Response=3;Cell Error Mode=TextValue pool
    count=0
    ConnectionManager.GetConnection: Caught an exception: Microsoft.Office.Excel.Server.CalculationServer.Interop.ConnectionException:
    Exception of type 'Microsoft.Office.Excel.Server.CalculationServer.Interop.ConnectionException' was thrown.   
     at Microsoft.Office.Excel.Server.CalculationServer.Interop.ConnectionInterop.InitConnection()   
     at Microsoft.Office.Excel.Server.CalculationServer.ConnectionManager.<>c__DisplayClass3.<CreateConnection>b__0()   
     at Microsoft.Office.Excel.Server.Credentials.TryExecuteImpersonated(WindowsIdentity wi, ExecuteImpersonatedMethod
    method, Boolean dispose)   
     at Microsoft.Office.Excel.Server.Credentials.TryExecuteImpersonated(ExecuteImpersonatedMethod method, Boolean
    dispose)   
     at Microsoft.Office.Excel.Server.CalculationServer.CredentialsDelegation.TryExecuteImpersonated(ExecuteImpersonatedMethod
    method)   
     at Microsoft.Office.Excel.Server.CalculationServer.ConnectionManager.CreateConnection(Credentials credentials,
    ConnectionInfo connectionInfo, Int32 keyLcid, Uri workbookUrl, Boolean auditConnection, SessionId sessionId)   
     at Microsoft.Office.Excel.Server.CalculationServer.ConnectionManager.CreateConnectionAndAddToList(ConnectionRequest
    connectionRequest, ExtendedConnectionInfo extendedConnInfo, Credentials credentials, Boolean auditConnection, Int32 keyLcid, ConnectionInfo connectionInfo, ConnectionKey connectionKey, AutoReaderWriterLock autoPoolLock, Connection& connection, ConnectionList&
    connectionList)   
     at Microsoft.Office.Excel.Server.CalculationServer.ConnectionManager.GetConnection(ConnectionRequest connectionRequest,
    ExtendedConnectionInfo extendedConnInfo, Credentials credentials, Int64 privateConnectionId, Boolean auditConnection)
    Refresh failed for 'PowerPivot Data' in the workbook 'http://<url>/SQL_PowerPivotTest.xlsx'.
    [Session: 1.V24.1916ClMR0rOQ1F8mQPqtil0V90.5.en-US5.en-US73.-0600#0000-04-00-01T03:00:00:0000#+0000#0000-10-00-01T02:00:00:0000#-006036.7dcb49ef-0dc4-45d2-a0f8-4dc0e18a70f41.N User: 0#.w|domain\user]
    ExternalSource.ValidateConnection: Unable to get a connection: Microsoft.Office.Excel.Server.CalculationServer.Interop.ConnectionException:
    Exception of type 'Microsoft.Office.Excel.Server.CalculationServer.Interop.ConnectionException' was thrown.   
     at Microsoft.Office.Excel.Server.CalculationServer.Interop.ConnectionInterop.InitConnection()   
     at Microsoft.Office.Excel.Server.CalculationServer.ConnectionManager.<>c__DisplayClass3.<CreateConnection>b__0()   
     at Microsoft.Office.Excel.Server.Credentials.TryExecuteImpersonated(WindowsIdentity wi, ExecuteImpersonatedMethod
    method, Boolean dispose)   
     at Microsoft.Office.Excel.Server.Credentials.TryExecuteImpersonated(ExecuteImpersonatedMethod method, Boolean
    dispose)   
     at Microsoft.Office.Excel.Server.CalculationServer.CredentialsDelegation.TryExecuteImpersonated(ExecuteImpersonatedMethod
    method)   
     at Microsoft.Office.Excel.Server.CalculationServer.ConnectionManager.CreateConnection(Credentials credentials,
    ConnectionInfo connectionInfo, Int32 keyLcid, Uri workbookUrl, Boolean auditConnection, SessionId sessionId)   
     at Microsoft.Office.Excel.Server.CalculationServer.ConnectionManager.CreateConnectionAndAddToList(ConnectionRequest
    connectionRequest, ExtendedConnectionInfo extendedConnInfo, Credentials credentials, Boolean auditConnection, Int32 keyLcid, ConnectionInfo connectionInfo, ConnectionKey connectionKey, AutoReaderWriterLock autoPoolLock, Connection& connection, ConnectionList&
    connectionList)   
     at Microsoft.Office.Excel.Server.CalculationServer.ConnectionManager.GetConnection(ConnectionRequest connectionRequest,
    ExtendedConnectionInfo extendedConnInfo, Credentials credentials, Int64 privateConnectionId, Boolean auditConnection)   
     at Microsoft.Office.Excel.Server.CalculationServer.ExternalSource.TryGetValidatedConnection(Request request, Credentials
    credentials, ExtendedConnectionInfo extendedConnectionInfo, Boolean shouldReportFailure, Boolean auditConnection, Connection& connectionOut). sessionId=1.V24.1916ClMR0rOQ1F8mQPqtil0V90.5.en-US5.en-US73.-0600#0000-04-00-01T03:00:00:0000#+0000#0000-10-00-01T02:00:00:0000#-006036.7dcb49ef-0dc4-45d2-a0f8-4dc0e18a70f41.N,
    externalSource=PowerPivot Data
    ConnectionInfoManager.InitConnInfoFromOdcFile: ODC File Uri is not valid:
    ExternalSource.ExecuteOperation: We exhausted all available connection information. Exception: Microsoft.Office.Excel.Server.CalculationServer.Interop.ConnectionInfoException:
    Exception of type 'Microsoft.Office.Excel.Server.CalculationServer.Interop.ConnectionInfoException' was thrown.   
     at Microsoft.Office.Excel.Server.CalculationServer.ConnectionInfoManager.GetConnectionInfo(Request request, String
    externalSourceName, Int32 externalSourceIndex, Boolean& shouldReportFailure)   
     at Microsoft.Office.Excel.Server.CalculationServer.ExternalSource.ExecuteOperation(Request request, ExternalSourceStateInfo externalSourceStateInfo,
    ExternalSourceStateInfo prevExternalSourceStateInfo, Int32 index, ConnectionInfoManager connectionInfoManager, ExternalDataScenario scenario, DataOperation dataOperation, Boolean verifyPreOperationConnection), Data Connection Name:
    PowerPivot Data, SessionId: 1.V24.1916ClMR0rOQ1F8mQPqtil0V90.5.en-US5.en-US73.-0600#0000-04-00-01T03:00:00:0000#+0000#0000-10-00-01T02:00:00:0000#-006036.7dcb49ef-0dc4-45d2-a0f8-4dc0e18a70f41.N, UserId: 0#.w|domain\user

  • Using a Collection of beans to store a result set help.

    Does anyone have any sample code on the subject? This is something I wrote up, but I wanted feedback, and also an example of how to retreive data out of the array of beans in jsp
    package beanpersonal;
    import beandatabase.DBConnection;
    import java.sql.Connection;
    import java.sql.SQLException;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import javax.sql.DataSource;
    import java.util.Collection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.util.ArrayList;
    public class PersonNew {
    public PersonNew() { }
    public Collection getPersondata( String alias, String password ) {
    Connection conn = null;
    PreparedStatement stmt = null;
    ResultSet rs = null;
    Collection retValue = new ArrayList();
    String query = "SELECT * FROM person WHERE (alias = ?, password = ?)";
    try {
    conn = DBConnection.getDBConnection();
    stmt = conn.prepareStatement( query );
    stmt.setString( 1, alias );
    stmt.setString( 2, password );
    rs = stmt.executeQuery();
    while (rs.next()) {
    PersonalInfo beanrow = new PersonalInfo();
    beanrow.setAlias(rs.getString("alias"));
    beanrow.setPassword(rs.getString("password"));
    retValue.add(beanrow);
    return retValue;
    catch( SQLException sqle ) {
    //sqle.printStackTrace();
    //throw new ApplicationSpecficException("Cannot query db", sqle);
    throw new RuntimeException(sqle);
    finally {
    try {if (rs != null) rs.close();} catch (SQLException e) {}
    try {if (stmt != null) stmt.close();} catch (SQLException e) {}
    try {if (conn != null) conn.close();} catch (SQLException e) {}
    }

    sorry i only view the codes, but don't read it as a whole maybe this codes can help you..
    jsp:
    <%@ page contentType="text/html;charset=windows-1252"%>
    <%@page import="java.util.*,mypackage.TestBean"%>
    <%
    String name = request.getParameter("name")!=null?request.getParameter("name"):"";
    String age = request.getParameter("age")!=null?request.getParameter("age"):"";
    System.out.println(name);
    System.out.println(age);
    Collection col = new ArrayList();
    col = (Collection)session.getAttribute("col")!=null?(Collection)session.getAttribute("col"):new ArrayList();
    TestBean tBean = new TestBean();
    if(!name.equals(""))
      tBean.setName(name);
    if(!age.equals(""))
      tBean.setAge(age);
    if(!age.equals("") || !name.equals(""))
      col.add(tBean);
    session.setAttribute("col",col);
    %>
    <html>
      <head>
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"/>
        <title>untitled</title>
      </head>
      <body>
        <form>
          <table cellspacing="0" cellpadding="0" border="1" width="200">
            <tr>
              <td>Name</td>
              <td>
                <input type="text" name="name"/>
              </td>
            </tr>
            <tr>
              <td>Age</td>
              <td>
                <input type="text" name="age"/>
              </td>
            </tr>
            <tr>
              <td colspan="2">
                <input type="submit" value="Submit"/>
              </td>
            </tr>
          </table>
          <%
          if(col.size()>0){
          Iterator iter = col.iterator();
          %>
          <table cellspacing="0" cellpadding="0" border="1" width="200">
            <tr>
              <td>
                NAME
              </td>
              <td>
                AGE
              </td>
             </tr>
            <%while(iter.hasNext()){
              tBean = (TestBean)iter.next();
            %>
              <tr>
                <td>
                  <%=tBean.getName()%>
                </td>
                <td>
                  <%=tBean.getAge()%>
                </td>
               </tr>
            <%}%>
          </table>
          <%}%>
        </form>
      </body>
    </html>TestBean.java
    package mypackage;
    public class TestBean
      private String name;
      private String age;
      public TestBean()
      public String getName()
        return name;
      public void setName(String name)
        this.name = name;
      public String getAge()
        return age;
      public void setAge(String age)
        this.age = age;
    }

  • How can i remove the empty sting from IList collection?

    How can i remove the empty sting from IList collection. If i use the code i got  System.NotSupportedException was unhandled exception. How can i achive this?
    IList record = (IList)records;
    int count = record.Count;
    for (int i = 0; i < count;i++)
    bool contains = record[i].Equals("");
    if (contains)
    record.Remove(record[i]);
    Is anyone know, please suggest me.
    Thanks in Advance!

    Try:
    items.RemoveAll(s => string.IsNullOrEmpty(s));
    Or you can filter them out using where:
    var noEmptyStrings = items.Where(s => !string.IsNullOrEmpty(s));
    Having fun with custom collections!
    Basics of .NET Collections in C#
    How does it work in C#? - Part 3 (C# LINQ in detail)
    Mark as answer or vote as helpful if you find it useful | Ammar Zaied [MCP]

  • How can I extract data from embedded collection??????

    I have 4 classes (class1, class2, class3, class4). Each of them contains properties, methods and a set (HashSet). The set declaration code is: private Set set1;
    The initialization occurs in the appropriate method (however I did declare and initialize as private Set set1= new HashSet(); without success). Each Set is declared and initialize in their own class. The insert and update method works perfectly well.
    When I load class1 object, I can see at runtime in the debug feature all properties data as well as all set elements (set1, set2, set3, and set4). I can extract the data from all properties belongs to the class1 as well as the set1 element. However I cannot extract the data from the set2, set 3 and set4. By writing the following �String s = class1.set1(). Property name;� and I will get the information. The problem that I have is that I cannot write the following �String s= class1.set1().set2().property name;� since set2 cannot be seen. What should I do to get the info from the other set collection???? The loading method provide an object that contains everything. This object is equal as class1 and the set are embedded one inside the other.
    Used hibernate and Struts.
    Could someone help???? Many thanks

    Are we talking about Java source code here or some weird expression language?
    Can you post a minimal, example Java program that demonstrates your problem?

  • Incorrect Transport Requests : SAP delivery version getting collected

    Hi,
    In our development system, when we try to include objects in a transport request, the entries in the transport request are getting saved as the SAP Delivery version rather than the active version.
    For example an ODS ( z object, newly created in development environment) entry is being logged as R3TR DODS  XXXX (Obj name) rather than R3TR ODSO XXXX.This is happening for all object types ( Info objects, cubes, workbooks etc).
    Also while collecting workbooks in transport request ( using transport connection) we got the following error -Logical transport object 414Q not found in table RSTLOGOPROP. Not sure if the above two issues are interlinked.
    Appreciate your help on this.
    Kind Regards,
    Bansi

    Hi KxD,
    I don't expect the loading date to be equal to the delivery date but I expect it to be 2 days before the delivery date since the time specified on the route is 2 days. So I would expect my loading date = delivery date - 2 days (route time)
    The way system is acting is loading date  = committed date + 2 days (route time).
    FYI.. when you turn on route scheduling the delivery creation date is based off of your route time and not your planned delivery time from the material master
    Thanks,
    Imran

  • Bios Collection. *Updated 02.07.07*

    ============================================================================================
    02.07.07 (mm-dd-yy) MS7125
    ============================================================================================
    A new ISO image dated 17-30-Feb-06-2007 is uploaded
    New item #6
    +--------------------------------------+
    Press 1,2,3,4,5  followed by enter
    to flash with desired version
    +--------------------------------------+
    1 = MS-7125 bios NCG 1.C (W7125NCG.1C0)
    2 = MS-7125 bios 1.D murdok mod (7125XMOD.1D)
    3 = MS-7125 bios 1.D Syar mod temp disabled (W7125NMM.1D0)
    4 = MS-7125 bios 1.D MSI regular (W7125NMS.1D0)
    5 = MS-7125 bios 1.C MSI regular (W7125NMS.1C0)
    6 = MS-7125 bios NCG 1.C Syar FixedUp (7125NCGM.1C0)  <---
    +--------------------------------------+
    Turn off PSU after successful flash
    and reset cmos
    +--------------------------------------+
    ISO (bootable) is at :
    http://members.lycos.co.uk/olsen0423/MS7125/
    D/L file: 7125_batch_17-30-Feb-06-2007-iso.zip  , unzip and burn .
    Note!
    Make sure that you clear cmos after bios flash (with PSU disconnected) .
    After powering up , first to do is enter cmos and "Load Optimized Defaults" and setting date/time , then save/exit .
    Next boot to cmos you may define/change to own preferences.
    ==================================================
    01.21.07 (mm-dd-yy) MS7030
    ==================================================
    New downloadable bootable bios flash cdrom ISO for
    K8N Neo Platinum (MS-7030 boards)
    Link:
    http://members.lycos.co.uk/olsen0423/
    (Select MS-7030)
    Download file : Neo1-ms7030-bios-collection-iso.zip
    Unzip and burn iso image to cd-r - boot with cdrom as 1'st boot device.
    Easy flash menu for latest/best bioses looks like this:
     +--------------------------------------+
     Press 1,2,3,4,5,6  followed by enter
     to flash with desired version
     PS! Make sure to use right version
     for your 7030 mobo PCB rev
     +--------------------------------------+
     1 = MS-7030 easybios syar for PCB 1.x (W7030nms.156)
     2 = MS-7030 bios 1.70 (W7030nms.170)
     3 = MS-7030 bios 2.1 (w7030nms.210)
     4 = MS-7030 bios 5.4 (W7030nms.540)
     5 = MS-7030 bios 7.1 (w7030nms.710)
     6 = MS-7030 bios 9.0 (w7030nms.900)
     +--------------------------------------+
     Turn off PSU after successful flash
     and reset cmos
     +--------------------------------------+
     Theese hotkey flashes use the following syntax:
     AWFL859G BIOSFILE /PY /SN /WB /CC /CD /CP /LD /E
     And choice 1-6 will automaticly flash your bios with proper parameters
     to avoid any problems.
     Please make sure to use the correct bios series for
     your particular MS7030 board.
     There is alot of boards named MS7030 now which use different series.
     This collection is for convenience (ALLin1).
     I take no responcibility for users flashing wrong bios or a dud bios flash.
     Goto http://www.msi.com.tw and look up your MS-7030 board and
     PCB version to see which series you should use.
     You can also check this yourself by entering cmos - standard setup - info
     to see what series is on your board already , and update to latest for the same series.
     Bios series : 1.1 -> 2.1
     Bios series : 5.1 -> 5.4
     Bios series : 7.0 -> 7.1
     Bios series : 9.0 -> 9.x
     All theese series goes for different versions of MS-7030
     The ISO contains the following bioses :
     W7030NMS.110
     W7030NMS.120
     W7030NMS.130
     W7030NMS.140
     W7030NMS.150
     W7030NMS.160
     W7030NMS.170
     W7030NMS.190
     W7030NMS.210
     7030EBW.BIN (EasyBios by Syar based on W7030NMS.156)
     W7030NMS.510
     W7030NMS.520
     W7030NMS.530
     W7030NMS.540
     W7030NMS.700
     W7030NMS.710
     W7030NMS.900
    ============================================================================================
    10.22.06  (mm-dd-yy) MS7220
    ============================================================================================
    I made a bootable cdrom ISO with different bios files for easy flashing of Diamond Plus
    without the need of a floppy drive.
    Nothing modded , just collection of MS-7220 Diamond Plus bioses on one bootable cd for conveniance.
    Burn ISO (unzip first) and reboot PC with CDROM as 1'st boot device.
    A menu tells what to key:
    1,2,3,4,5,6 or 7 followed by enter.
    Menu looks like this :
      +--------------------------------------+
      Press 1,2,3,4,5,6,7 followed by enter
      to flash with desired version
      +--------------------------------------+
     1 = MS-7220 bios 1.0
     2 = MS-7220 bios 1.1
     3 = MS-7220 bios 1.2
     4 = MS-7220 bios 1.22
     5 = MS-7220 bios 1.33
     6 = MS-7220 bios 3.09
     7 = MS-7220 bios 3.0A
    R:\>
    Pressing 1 will flash with following command
    afud408 a7220nms.100 /P /B /N /C
    Pressing 2 will flash with following command
    afud408 a7220nms.110 /P /B /N /C
    Pressing 3 will flash with following command
    afud408 a7220nms.120 /P /B /N /C
    Pressing 4 will flash with following command
    afud408 a7220nms.122 /P /B /N /C
    Pressing 5 will flash with following command
    afud408 a7220nms.133 /P /B /N /C
    Pressing 6 will flash with following command
    AFDOS404 A7220NMS.309 /B /C /P /N
    Pressing 7 will flash with following command
    AFDOS404 A7220NMS.30A /B /C /P /N
    Link:
    http://members.lycos.co.uk/olsen0423/MS7220
    File : 7220_batch_14-45-Okt-07-2006.zip
    ============================================================================================
    10.22.06  (mm-dd-yy) MS7125
    ============================================================================================
    To whom it may Concern.
    I made a cdom ISO for MS-7125 board also.
    Menu looks like this:
       1 = MS-7125 bios NCG 1.C (W7125NCG.1C0)
       2 = MS-7125 bios 1.D murdok mod (7125XMOD.1D)
       3 = MS-7125 bios 1.D Syar mod temp disabled (W7125NMM.1D0)
       4 = MS-7125 bios 1.D MSI regular (W7125NMS.1D0)
       5 = MS-7125 bios 1.C MSI regular (W7125NMS.1C0)
    ISO (bootable) is at :
    http://members.lycos.co.uk/olsen0423/MS7125/
    D/L file: 7125_batch_22-10-Okt-15-2006.zip  , unzip and burn .
    Note!
    Make sure that you clear cmos after bios flash (with PSU disconnected) .
    After powering up , first to do is enter cmos and "Load Optimized Defaults" and setting date/time , then save/exit .
    Next boot to cmos you may define/change to own preferences.
    ==================================================
    08.20.06 (mm-dd-yy) MS7025
    ==================================================
    EasyBIOS for MS-7025 based on 1C3 bootable cdom iso.
    If you dont want to use winflash or floppy , there is a ISO image to use.
    Burn the iso to a cd and it will boot to dos , at the dosprompt just key in the command
    flash.bat
    Then follow the instructions
    Goto :
    http://members.lycos.co.uk/olsen0423/MS7025/isoimage
    It's packed in a zip file to maintain reability/file integrity after download and to save web space.
    ==================================================
    08.18.06 (mm-dd-yy)
    ==================================================
    Previous web hosting was taken down due to the fact that this is an old board.
    However due to the continious requests i have this bios hosted again.
    Still want the EasyBIOS for MS-7025 based on 1C3
    EasyBIOS[r.2] for K8N Neo2 MS-7025
    Goto :
    http://members.lycos.co.uk/olsen0423/MS7025/
    ==================================================
    ==================================================
    12.10.05 (mm-dd-yy)
    ==================================================
    Entry point to bios collection downloads :
    Syar's MSI Nvidia64 Bios Collection
    EasyBIOS[r.2] for K8N Neo2 MS-7025 (based on 7025CU2.1C3)
    Optimized (good) default values on all items .
    150Mhz , 183Mhz divider .
    Completely new (easy navigating) layout in most setup screens .
    ref: *News* What do I mean by custom EasyBIOS
    Filename :   EASYBIOS.ZIP
    Link :
    EASYBIOS.ZIP
    ==================================================
    07.10.05 (mm-dd-yy)
    ==================================================
    BIOS for K8N Neo2 MS-7025 1C3 .
    Custom version rev.1 has non working HT 3.5x/4.5x multipliers .
    Wasn't aware of it but they both defaults to 5x .
    This is no good in an overclock attempt as you would attemt to run the HT far over it's spec .
    Theese two is removed again .
    In addition the 150mhz text is aligned in memory index , and 216/233/250mhz dividers
    removed as they gives 100/130/200mhz anyway and they are alredy there .
    Please use the new version
    Filename :   7025CU2-1C3.ZIP
    Link (could be some time before it's up):
    7025CU2-1C3.zip
    ==================================================
    06.10.05 (mm-dd-yy)
    ==================================================
    A new BIOS for K8N Neo2 MS-7025 1C3 become availible today .
    Made a custom version of it that have reworked defaults like the previous custom .
    150mhz + 183mhz divider added and HT multiplier 3.5x/4.5x .
    Filename :  7025CUST1-1C3.zip
    Addon PCI card issue and invoke boot error issue resolved by MSI
    EasyBIOS and full advanced version in zip .
    Readme file included .
    ==================================================
    09.05.05 (mm-dd-yy)
    ==================================================
    A new beta BIOS for K8N Neo2 MS-7025 1.BB4 availible
    Filename :  70251B4MOD1.zip (hidden options enabled)
    Filename :  W70251B4NMS.zip (untouched Beta)
    USB 2.0 issue resolved by MSI
    Enabled in BIOS now includes both usb1.1 and USB 2.0 .
    ==================================================
    09.03.05 (mm-dd-yy)
    ==================================================
    A new beta BIOS for K8N Neo1 MS-7030 1.9B1 availible
    Filename :  7030M1NT191.zip 
    All hidden items is made accessible and temps not shown in BIOS hw monitor .
    ==================================================
    08.29.05 (mm-dd-yy)
    ==================================================
    Two new beta BIOSes for K8N Neo2 ms-7025 has surfaced.
    Have them modded to enable usb 2.0 and unhiding the hidden stuff and some defaults changed
    like with the 1A beta mods .
    W7025 1BB2
    W7025 1BB3
    Can be found under Syar's MSI Nvidia64 Bios Collection\NEO2
    1B2 : 7025MOD1B2.zip
    1B3 : 70251B3-MOD1.zip
    Sideeffect has also a more thorough mod of the 1B3
    Link:
    Sideeffect's 1.B3 beta mod
    MSI K8N Neo2 Platinum
    1.B Beta 3
    - Idle Cycle limit = 64
    - Max Async = 8
    - Read Write Queue bypass = 16
    - Bypass max = 7
    - Enabled 183 divider
    - Enabled 150 Divider
    - Enabled USB 2.0
    - Enabled Bios cachable by default
    - All options available in bios will show.
    - Nvidia lan on by default.
    - Disabled Temps from showing in bios
    - Disabled 216, 233, 250 dividers
    - Disabled ATI/Nvidia Speedup
    - Disabled Full screen logo and small EPA logo by default
    - Disabled Fast writes by default
    ==================================================
    08.21.05 (mm-dd-yy)
    ==================================================
    7025 1A has gone final (1A0 081605)
    1A has gone final Aug.16 and is availible on MSI USA .
    MSI though has again forgotten to enable USB 1.1+2.0 as selectable
    and the enhanced memory timings and the usual stuff is hidden .
    Two modded versions that gives you full control is availible at
    (one version without temp and voltage reporting in BIOS hw-monitor)
    Syars_Bios_Collection/NEO2
    Files:
     7025MOD1-1A.zip               21-Aug-2005 13:27   263k 
     7025MOD1NOTEMP-1A.zip   21-Aug-2005 13:27   263k 
    K8N Neo2 Platinum (MS-7025) V1.A BIOS Release
    1. This is Award BIOS release
    2. This BIOS fixes the following problem of the previous version:
    -  Update CPU ID for AMD E6 CPU.
    3. 2005/08/16
    Thats all the readme say ...
    ==================================================
    08.10.05 (mm-dd-yy)
    ==================================================
    Several requests resulted in theese two 1A3 versions .
    Neo2 1.A3 MOD4 version is availible in two versions .
    7025MOD4-1A3.zip
    MOD4 - reworked sane bios default values and all items availible
    Same as normal MOD4 version , but with BIOS temp reporting disabled to help noboot/freeze situations for people with vapo/prommy
    7025NOTEMPMOD4-1A3.zip
    Use the above link and navigate to NEO2 folder .
    ==================================================
    07.29.05 (mm-dd-yy)
    ==================================================
    Neo2 1.90 official
    MSI have hidden made several hings non selectable , like trrd,trc.trfc.trwt along with other things
    Take the file 7025-190-MOD2.zip to get around all this
    No logo mod or such things , just the plain original will all neccesay options availible .
    Thanks supershanks ( it rhymes) 
    ==================================================
    07.16.05 (mm-dd-yy)
    ==================================================
    Dear Tripod Member,
      In order to guarantee a high-quality service on Tripod, we had to close your website http://members.lycos.co.uk/syar2003/ as it was found abusive. 
    Both HTTP and FTP access have been closed.
    Guess my rather large ISO , was what tipped them over .
    ==================================================
    07.16.05 (mm-dd-yy)
    ==================================================
    There are more and more people asking about how to flash bios outside windows from
    DOS without having a floppy drive .
    Well here is the solution .
    I Have compiled a ISO file that holds all the most used bioses for all the K8N Neo motherboards .
    The cd also includes the volkov commander (norton commander clone) for easy navigating .
    Click on the "MSI K8N NEO/FSR & Neo2-Neo4 Bioses" text over the platinum BMP picture to get to the directory listing.
    Go into the sub directory " ALL_BIOS_ISO " and download the ISO image for the bootable BIOS compilation CD " MS_CD5.iso " .
    Then burn the ISO with your favorite cd burning application.
    Again note the correct flash routine , clear PnP , clead cmos , clear dmi , and load defaults after flash , theese have become
    essensial to use with flashing to ther newer bioses for all boards and is even posted on MSI's bios pages.
    Flash with the command line
    AWFL859G.EXE 7100NMS.350 /py/sn/cc/cd/cp/f/e
    (change award flasher exe program and bios file as neccesary)
    After flash , turn off the PSU .
    Power on again , enter bios , and load bios defaults followed by a cmos exit with save .
    Note that this is just a service . I will take no responsiblitity of the outcome of the bios flashing .
    CD contents (sub directories and file listing) :
    Code: [Select]
    Bootable CD info
    NEO1
          7030NMS.110
          7030NMS.120
          7030NMS.130
          7030NMS.140
          7030NMS.142
          7030NMS.143
          7030NMS.144
          7030NMS.145
          7030NMS.146
          7030NMS.147
          7030NMS.148
          7030NMS.150
          7030NMS.151
          7030NMS.152
          7030NMS.155
          7030NM5.156
          7030NMS.160
          7030NMS.170
          7030MOD.156
          AWFL833D.EXE
          How to flash the BIOS.txt
          MOD466.156
    NEO2
          7025NMS.100
          7025NMS.110
          7025NMS.120
          7025NMS.123
          7025NMS.125
          7025NMS.130
          7025NMS.133
          7025NMS.134
          7025NMS.135
          7025NMS.136
          7025NMS.137
          7025NMS.140
          7025NMS.141
          7025NMS.150
          7025NMS.151
          7025NMS.160
          7025NMS.170
          7025NMS.180
          7025NMS.196
          7025NMS.197
          7025NMS.198
          7025MOD.136
          7025MOD.137
          7025MOD.141
          7025MOD.160
          7025MOD.180
          7025MOD.195
          7025MOD.196
          7025NFM.198
          7025NFM3.180
          AWFL833D.EXE
          How to flash the BIOS.txt
    NEO3
         7135NMS.100
         7135NMS.110
         7135-10.TXT
         7135-11.TXT
         AWFL855A.EXE
         How to flash the BIOS.TXT
    NEO4-DM
         7100NMS.100
         7100NMS.110
         7100NMS.120
         7100NMS.130
         7100NMS.133
         7100NMS.140
         7100NMS.150
         7100NMS.501
         7100NMS.502
         7100NMS.504
         7100NMS.505
         7100NMS.506
         AWFL859G.EXE
         How to flash the BIOS.TXT
    NEO4-PL
         7125NMS.100
         7125NMS.110
         7125NMS.120
         7125NMS.121
         7125NMS.124
         7125NMS.130
         7125NMS.140
         7125NMS.141
         7125NMS.144
         7125NMS.150
         7125NMS.152
         7125NMS.160
         7125NMS.161
         7125NMS.164
         7125NMS.165
         7125NMS.171
         7125MOD.140
         7125MOD.161
         AWFL859G.EXE
         How to flash the BIOS.TXT
    NEO4-SLI
          7100NMS.300
          7100NMS.310
          7100NMS.320
          7100NMS.330
          7100NMS.336
          7100NMS.340
          7100NMS.350
          7100V32.TXT
          7100V33TXT
          7100V34.TXT
          AWFL859G.EXE
               Also equippedt with The Volkov Commander, Version 4.05
               A "Norton Commander" clone for easier navigating
    ==================================================
    07.05.05
    ==================================================
    W7135:
    K8N Neo 3 nForce4-4x for S754
    Made a bios placeholder/folder for this motherboard .
    All officials availible. ( v.1.0 only )
    ==================================================
    07.05.05
    ==================================================
    W7025:
    K8N Neo 2 Platinum
    New BETA bios added (Beta 1.8 )
    All officials availible. ( version 1.6 placed under beta as it's only official on MSI korean site not global )
    MurdoK's modded 1.6 and 1.8 placed under modded .
    W7030:
    K8N Neo Platinum (Neo1)
    All officials availible.
    Pinochio's modded 1.6 placed under modded .
    W7100:
    K8N Neo 4 SLI Platinum & K8N Neo 4 Diamond
    New BIOS files added for 7100 Diamond (7100NMS v.1xx) and 7100 SLI_Platinum 7100NMS v.3xx
    New BETA bios added for Diamond ( Beta 1.3 version 3 )
    All officials availible.
    Version 5XX bioses is placed under DIAMOND/BETA
    New beta version 506 added .
    W7125:
    K8N Neo4 Platinum Ultra
    New BETA bios added ( Beta 1.4 version 1 )
    All officials availible.
    ==================================================
    03.04.05
    ==================================================
    MS-7100 (K8N Neo4 SLI Series , diamond/platinum) all bioses released , officials and beta's .
    Officials ends with zero , e.g diamonds = W7100NMS_110.zip(V 1.1)  , W7100NMS_100.zip(V 1.0)
    Officials ends with zero , e.g platinum = W7100NMS_300.zip(V 3.0 platinum)
    Betas ends with a digit 1-9 , e.g W7100NMS_113.zip
    Standard BIOS W7100NMS.110
    Release Date 2.18.2005
    1. Update CPU code
    2. Fix AMD K8 Rev.E DIMMS DRAM size show error.
    3. Fixed report error SMB ID for MCP04
    Beta BIOS W7100NMS.113 (SATA HD issue)
    Release date 020205
    1. Fix DRAM fail no Beep.
    2. Do not show SATA Device string during POST2 screen.
    3. Update NVMM 4.79.
         Switch to Big-Real-Mode before calling NVMM.
         Fix "identify" function to be bus/dev/func independent.
         During LDT-5x operation occasional CRC errors occur. Fixed with new PROD settings.
         Certain Maxtor 300 GB drives fail detection, or are slow to detect.
         Results in slow POST. Fixed with new PROD settings.
         Fixed CK804 detection routine. Removed dependency on hardcoded Bus/Dev/Func number
    4. Update NVPXE 2.03.0469.
       .Fix CPU speed dependency causing initialization failure on faster processors       
       .Increase DHCP timeout. This avoids PXE error message "PXE-E51..." when connected to a switch
        with Spanning Tree Protocol enabled.
       .Fixed connectivity problems between Marvell PHY and some switches (ie. Cisco FastHub).
    5. Added "Sort_PCI_ROM" for release more shadow space.
    6. Modify CPU-Voltage function
    7. Update CBROM.EXE Ver.1.47
    MS-7125 (K8N Neo4 Series) all bioses released , officials and beta's .
    Officials ends with zero , e.g W7125NMS_100.zip , W7125NMS_110.zip
    Betas ends with a digit 1-9 , e.g W7125NMS_121.zip , W7125NMS_124.zip
    ==================================================
    01.26.05
    ==================================================
    MS-7030 (K8N Neo Series) Bios 1.5
    1. This is Award BIOS release.
    2. This BIOS fixes the following problem of the previous version:
    - Support Matrox G450 AGP card.
    - Update CPU ID.
    - Support FX-55.
    - Support Sempron CPU 1800+ GHz.
    - Update NVRAID ROM firmware to Ver:4.60.
    3. 2005/01/21
    ==================================================
    01.19.05
    ==================================================
    Bios'es for
    MSI K8N Neo1 Platinum s754 , 7030
    Added beta bios'es
    1.57 and 1.58
    Both have not been modded with opening of hidden options
    nor a replaced nvraid.rom .
    Note!
    1.57 gave me some problems with upped fsb , black screen on boot
    and overclocking reset message - loaded defaults .
    This with same settings as with 1.56.
    1.58 runs just as good in my rig as 1.56 , found no issues with it (yet).
    ==================================================
    01.14.05
    ==================================================
    Bios for
    MSI K8N Neo2 Platinum s939 , 7025
    Added modded bioses (unhidden options)
    1.37 and 1.41
    And the Beta 1.5X
    ==================================================
    12.01.04
    ==================================================
    Bios for
    MSI K8N Neo2 Platinum s939 , 7025
    Official bios W7025NMS.140 (added 12.10.2004)
    This one has the same boot block as 1.51B but different from all others .
    ==================================================
    12.07.2004
    ==================================================
    Update of boot block is not always neccesary.
    Theese tables show with a letter the boot block version of each bios.
    The bat file includes a /wb switch which reprograms bootblock .
    If the flash goes wrong with boot block flashed and the boot block gets corrupted , no floppy rescue can be done.
    Then it's adviced only to use the /wb swich in the included bat file when neccesary.
    Table for S939 Neo2 ( 7025NMS )
    Code: [Select]
    |...A..|...B...|...C...|...C...|...C...|...E...|...D...|...D. ..|...D....|...E. ..|...E. ..|...E. ..|...F. ..|...F. ..|
    |.100..|..110..|..120..|.1B23..|.1B25..|..130..|.1B33..|..1B34..|..1B35..|..1B36..|..1B37..|..1B41..|..140..|..1B51..|
    7025 120/123/125 share the same boot block version.
    7025 130/136/137/141 share the same boot block version.
    7025 133/134/135 share the same boot block version.
    7025 151/140 share the same boot block version.
    Table for S754 Neo Platinum/FSR  ( 7030NMS )
    Code: [Select]
    |...A..|...B...|...C...|...D...|...D...|...E...|...E...|...E. ..|...E....|...E. ..|...E. ..|...F. ..|...G. ..|...H. ..|...I. ..|
    |.110..|..120..|..130..|.1B42..|.1B43..|.1B44..|.1B45..|..1B46..|..1B47..|..1B48..|..140...|..1B51..|..1B52..|..1B55..|..1B56..|
    Only when flashing from one bios version to another bios version where boot block is different the /wb switch should be used .
    If boot block it's equal in the source and target bios the /wb switch can be dropped if this is prefered.
    ==================================================
    12.01.04
    ==================================================
    Bios for
    MSI K8N Neo(1) Platinum/FSR s754 , 7030
    Beta bios W7030NMS.156 pinochio mod with new raidbios 4.71 (added 12.01.2004)
    ==================================================
    12.01.04
    ==================================================
    Bios for
    MSI K8N Neo2 Platinum s939 , 7025
    Beta bios W7025NMS.151 (added 12.01.2004)
    ==================================================
    11.20.04
    ==================================================
    New entry point from 2004.11.20
    http://members.lycos.co.uk/syar2003/
    Changes:
    All S939 Neo2 bioses availible
    Pinochio modded bioses , and Pinochio modded with nvraid ide rom bios 4.66
    ==================================================
    I found it a little bit hard to search throgh posts to find hostings of the
    different 1.4x & 1.5x bioses out.
    I have collected all v 1.4x &1.5x upto now as well as the official ones .
    All in one place. Thought i shold share the info .
    *=========================================================*
    Bios for
    MSI K8N Neo FSR , 7030NMS
    MSI K8N Neo Platinum , 7030NMS
    [STRIKEOUT]http://members.lycos.co.uk/syar2003/S754_neo_plat_bios[/STRIKEOUT]
    Betas:
    1.4b2  , 1.42
    1.4b3  , 1.43
    1.4b4  , 1.44
    1.4b5  , 1.45
    1.4b6  , 1.46
    1.4b7  , 1.47
    1.4b8  , 1.48
    1.5b1  , 1.51
    1.5b2  , 1.52 (added 09.14.04)
    1.5b5  , 1.55 (added 09.30.04)
    1.5b6  , 1.56 (added 10.22.04)
    Remember :
    Enter bios and load optimized default + save/exit , before flashing .
    Do the flashing to 1.56 with AWFL833D W7030NM5.156 /py/sn/wb/cc/cd/cp/f/r
    Enter bios and load optimized default , and save .Important .
    (enter bios and load optimized + save,exit if you get F1-continue at first boot)
    Boot once again after this without any changes/editing in bios  to floppy prompt and let the dmi pool build and update itself.
    Then boot/edit bios set your individual bios preferences .
    Officials:
    1.1
    1.2
    1.3
    1.4 (09/10-04)
    Hidden bios options:
    Shift+F2  then  Alt+F3
    Hidden BIOS options NOT gone with 1.4x
    Some modded for K8N Neo Platinum/K8N Neo FSR is availible:
    These dont need the shift+F2/alt+f3 to unhide options (and some other msi hidded items is unhidden also)
    Modded Beta 1.56 with pinochio boot logo , nvraid ide rom bios 4.60
    Modded Beta 1.56 with pinochio boot logo , and nvraid ide rom bios 4.66
    [STRIKEOUT]http://members.lycos.co.uk/syar2003/S754_neo_plat_bios/modded/[/STRIKEOUT]
    Theese are tested by several users (including myself and work fine)

    First off get the BIOS version you want to flash:
    Take a look at syar2003's excellent collection!
    http://members.lycos.co.uk/syar2003/S754_neo_plat_bios/
    Download the BIOS version you want, extract the .zip and put the files on a bootable floppy. Syar2003 supplies a handy flash.bat file with "his" 1.55 that you can use. This saves you typing in all the command line switches listed in the quote below.
    After booting from floppy, copy the three files (AWFL833D.exe, flash.bat and W7030NMS.155) to a hardisk or the ramdrive that was just created by the bootdisk. I strongly advise against flashing directly from floppy!
    (Notice that you will need a FAT partition on your harddisk to be able to access it from "DOS".)
    Now follow syar2003's flash guide:
    Quote
    Remember :
    Enter bios and load optimized default + save/exit , before flashing .
    Do the flashing to 1.55 with AWFL833D W7030NMS.155 /py/sn/wb/cc/cd/cp/f/r
    Enter bios and load optimized default , and save .Important .
    Boot once again after this without any changes/editing in bios to floppy prompt and let the dmi pool build and update itself.
    Then boot/edit bios set your individual bios preferences .
    Hope this will help you!
    Btw. When I flashed to 1.55 my NIC went dead in windows and I had no internet access. Make sure you have a official BIOS release at hand (on the same or other disk?) so that you can flash back to a version you trust...
    edit: need more info? take a look here:
    https://forum-en.msi.com/index.php?threadid=54105

Maybe you are looking for

  • ITunes 6 Upgrade - Error -48

    I recently had to do a system restore on my computer (Windows XP) and returned it to factory settings, therefore having to reinstall everything including my iPod. The disc I currently have has an older version of iTunes on it, and when I install it e

  • Unable to create SC since commitment already exist for IO

    Hi SAP Guru SRM 5.0 / Extended Classic  Scenario / CCM2.0 1) User has created one shopping Cart  with two line items 2) Distributed the First Line item to two quantities with different account assignment of internal orders :- Quantity 46,090 to IO 20

  • FTP error to windows server

    Hi team, i m trying to ftp a file on one of the windows server via Publisher.But i get this error. oracle.apps.xdo.servlet.scheduler.ProcessingException: java.lang.StringIndexOutOfBoundsException at oracle.apps.xdo.servlet.scheduler.XDOJob.deliver(XD

  • SL510 seems to be dead

    Hi, Today, my SL510 stopped working, when I press the power button it does not turn on. However, when I plug in the power the battery light comes on. I've tried taking out the ram and inserting it back in, that did not help. Please suggest. Dave

  • Jar file Deployment

    We have made changes to one of the jar beans. Is there a way that I can deploy the jar file alone and let the application (jsp pages) see the changes? Typically we deploy using either JDeveloper or Oracle Application Server Web Interface. To test, we