"Hardcore Java" License Violation?

I've been reading the book "Hardcore Java" through the O'Reilly Safari site, and in section 2.4 the author says "The code in Example 2-13 is pasted directly from the JDK source." The example in question contains a chunk of the java.util.Collections souce code. My question - isn't publishing this code in a book a violation of the Sun Community Source License? The SCSL prohibits redistribution under most circumstances, and I believe this would be one of them.
I ordinarily would not even raise this issue, but reading this book has been such an enormously frustrating experience that the author's misappropriation of someone else's code rubbed me the wrong way.
One other note on this book - any technical publication will have errors, but there is a problem when fundamental conceptual misunderstandings are liberally distributed throughout a book like they are in this one. Very disappointing that this got out the door at O'Reilly!

OK. I have to post this here. I was looking at the
Hardcore Java example chapters again and poking around
O'Reilly.com and I found this article by the author.
http://www.onjava.com/pub/a/onjava/2004/04/28/hardcorej
va.html
In section 3 he states "Every parameter to a method
should be declared final unless the parameter is
intended to be an out or in-out parameter."
Do I even need to point out what is wrong with this?Duh. He doesn't say which method. ;-)

Similar Messages

  • Native Java license management advice needed

    Hi,
    I create and sell a Java application. I currently have a hokey licensing mechanism.
    For my next major release, I'm looking for something much more secure and flexible. My requirements are as follows:
    - Must work on all platforms compatable with Sun Java (I care about Windows, Mac and Linux)
    - Must allow for different features: I want to be able to check "Does the user have a license that allows <this>" or "Does the user have a license that allows <that>".
    - Ideally doesn't require me to use an obfuscator...but I'm not complete opposed. I think I have situations where I'm using reflection, but I might be able to do something about those.
    - Must allow for expiring licenses as well as none-expiring licenses.
    - Must allow for licenses to be tied to a host somehow...as well as licenses that aren't tied to a host.
    - Ideally doesn't have a huge footprint.
    My app is always used in standalone mode...frequently on laptops that aren't connected to anything. A license server is not needed.
    Thanks for any advice!
    BTW, I've browsed over the following so far:
    "EasyLicenser" by Agilis - Has a weird pricing scheme
    "Java License Kit" - Requires an obfuscator
    Edited by: jneau on Feb 1, 2008 8:53 PM

    Hi Vincent,
    What kind of controller do you have ? Which version of Linux are you using ?
    Here is some useful KBs to check the NI drivers / Linux version compatibility :
    What Linux Distributions Do National Instruments Drivers and Software Support?
    NI-VISA Support in Linux
    Error 1073807343 Using GPIB-USB-HS in Linux
    Hope this will help !
    Best Regards,
    Isabelle G.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Été de LabVIEW 2014
    12 présentations en ligne, du 30 juin au 18 juillet

  • License violation has been detected on the InterScan for CSC SSM

    We are receiving this everyday at 1 AM, but there is no traffic on the network at this time. What can I do on the ASA or CSC to find out where and what this traffic is?
    There are currently 559 active nodes while you only have 500 seats of license. 59 more seats of license is required.

    This issue has confused us for a while too… Here’s the deal:
    Even after the license violation the traffic for all the users will be scanned by the module. Despite the error message that you are seeing, the CSC will not drop connections due strictly to license violations.  It is only a warning at this point. 
    With a high number of nodes, it is likely that you will overwhelm the CSC processing capacity.  If the users are overly aggressive in their connections, they can easily max out the capacity.
    Here's a high level link:
    http://www.cisco.com/en/US/customer/products/ps6120/products_white_paper0900aecd805c3cd6.shtml
    Can you increase the license?  It only goes up to 1,000.
    How can you tell what the count is?  Use the following command from the ASA CLI:
    show csc node-count yesterday
    Here's the link:
    http://www.cisco.com/en/US/docs/security/asa/asa72/command/reference/s2_72.html#wp1186101
    Hope this helps!

  • CUC 7.0 license violation on subscriber

    Hi All,
    I have A/A Unity Connection 7.0 Pub and Sub. On the Pub the license is the VM subscribers, ports, etc. On the Sub the license is ports etc, minus the vm subscribers. As per Cisco docs I have the Subscriber as the primary and Publisher as the secondary in the cluster. However, after 60 days my MWI lights would not work and the cause of it is that the Subscriber has license violations. The error I get is that it thinks that I have a demo license on the subscriber. By moving the primary to the Publisher all is good, except my redundant Sub is offline. If I restart both servers all is good.
    Has anyone encountered this issue? I am waiting for TAC to give me an answer, so far they are telling me to reboot the servers, which I did last night. Is there a known bug on 7.0?
    Thanks.

    Hi,
    Sounds like you're hitting http://tools.cisco.com/Support/BugToolKit/search/getBugDetails.do?method=fetchBugDetails&bugId=CSCsw75701
    CSCsw75701            Bug Details
    No License data sync across cluster without reboot/lic service restart
    Symptom:
    When license data is changed on a server in a failover pair, the license data is not synched between servers until a reboot is done.
    Conditions:
    Seen with Cisco Unity Connection 7.x when license information changes on one server but not another.
    Fixed with Connection 7.0(1)ES35 and higher, and 7.0(2).
    Workaround:
    Login to the CLI and reboot each server by typing command "utils system restart"
    If you're going to be spending time upgrading, I would highly recommend moving away from 7.0 train and upgrading to the latest 7.1(3).  7.1(3) is even having ESes written every 2 weeks to address new issues.  7.1(3) will save you from future headaches...
    Hope that helps,
    Brad

  • Hardcore Java Questions Thread

    Greetings,
    I am otherwise known as Robert Simmons jr. O'Reilly has recently published my first book entitled hardcore java. Since the motivation for some of the content came from questions asked on this forum, I decided to make a question an answer thread on this forum to deal with your questions on the book, its content and topics.
    You can find the book at O'Reilly:
    http://www.oreilly.com/catalog/hardcorejv/
    Or Amazon.com
    http://www.amazon.com/exec/obidos/tg/detail/-/0596005687/qid=1080130526/sr=8-1/ref=sr_8_xs_ap_i1_xgl14/103-4213374-6043826?v=glance&s=books&n=507846
    It is also on sale in quite a few other places but I just mentioed two of the most popular.
    Feel free to ask your questions and I will knock them down as quick as I can.
    -- Robert Simmons Jr.

    I read the sample chapter about using final and,
    whilst I agree with you about using final beinggood
    coding practise, there are a few points I wouldmake:
    Example 2-2. Simple constants using final:
    public static class CircleToolsBetter {
    /** A value for PI. **/
    public final static double PI = 3.141;I think you should limit the scope of that variableby
    making it private.Why? What would be your motivation in hiding this
    value? At any rate, the example you are mentioning
    wasnt designed to demonstrate guarding access to
    constants. I talk about that a bit later in the
    chapter. There may be reasons for havign this private,
    I concede that. Just in this example I cant think of
    one. At any rate derived classes will probably need PI
    so protected would be a better option if you want to
    seal it off for some reason. I just think that you should always try to limit the scope of a variable as much as possible. I know that wasn't the point of that particular example, but I think it's good practise "in general".
    At any rate derived classes will probably need PI so
    protected would be a better option if you want to seal
    it off for some reason.Ah, but what about classes (it's public in the example), they could reference that variable and then if it changes ...
    In the section "Public Primitives and
    Substitution" you don't mention anywhere thatyou
    can get around the problem of having to recompile
    dependant classes by using static initializion and
    also by interning Strings. I think that would makea
    good addition to that section.Good feedback, Ill think about that for revision 2.
    There is some other material that didnt make that
    chapter as well. =) However, I do talk abotu
    initialization in detail in chapter one. You should
    check it out. =) Do I have to buy the book : )
    You say[i] "Most singleton classes shouldn't be
    declared as final. You never know what otherfeatures
    your class's user will dream up. However, since
    singleton classes need to be protected fromexternal
    instantiation, you can't make the constructorpublic.
    The solution to the problem is a protected
    constructor". I think you should add that thismeans you must put your singleton in a relevant
    package (i.e. Not in a package with classes that
    shouldn't be able to instantiate the singleton!)Of course you should always employ good package
    management. In fact package management might be in
    second edition as I do have quite a few notes on it.
    However, a singleton can only instantiate itself and
    that only once, so I dotn see why you think this is a
    concern. The goal of protected constructors is to
    prevent external instantiation of the class. Perhaps
    you were thinking of constructors with "package
    private" access (ie no public, private or protected
    keyword used) ?? Protected constructors can only be
    accessed bby the class and subclasses, whereas a
    "package private" constructor can be accessed by any
    class in the package.
    A protected constructor is accessible to the class itself, its subclasses, and classes in the same package.

  • JIVE/Java licensing question

    Good morning, we are developing a research project named JIVE (http://jive.dia.unisa.it) for the visualization of Java-coded algorithms. One of the goal of JIVE is to provide a graphical interactive representation for standard Java data structures such as Hashtable and Vector. In order to perform such a task we needed to make some changes on the original implementation of these classes (e.g., let the Hashtable object take as input the hashing function). Since we are going to distribute JIVE over the Internet we would like to know if it possible to redistribute the source code or, at least, the binary code of our modified Java classes and which license file must be enclosed. We already tried to contact the SUN licensing service ([email protected]) without obtaining any response.
    Any help would be greatly appreciated!
    Umberto Ferraro
    University of Salerno

    >
    This forum is not a good place to discuss legal issues
    about java licensing. The people who post here are
    probably not lawyers and I'd be surprised if
    anybody posting here has the authorization to
    represent Sun for legal matters.Thanks for your answer, as a matter of fact I didn't expected to get any answers from lawyers or Sun representants. I did just believe that someone else could have experienced the same problem so I tried to ask. However, I already tried to contact Sun licensing service by e-mail (I am not able to conduct an english-based phone discussion) without getting any response. Could you suggest another option? (e.g., a more proper discussion forum)
    >
    But then there's that "licensing" link at the bottom
    of apprently every java.sun.com page. The resulting
    page says:
    7. Where can I get further licensing information?
    You can find further licensing information by calling
    Sun Microsystems Software and Technology (7AM-7PM CST,
    M-F)
    Outside the U.S. and Canada, dial your country's AT&T
    Direct Access Number first.
    Inside the U.S. and Canada, dial 1-800-786-7638
    At first prompt, press 1 -> Calling from the US
    At second prompt, press 2 -> All other software
    At third prompt, press 1 -> Licensing Agreements
    Umberto Ferraro

  • JAVA license applying procedure

    I am going to apply JAVA license to our BI system a very first time.Please let me know how to get the license from service market place and applying procedure.
      I guess it should be applied from Visual administrator but not aware of the exact steps.I would appreciate your help on this.

    Just go to SMP -> Keys and requests -> License keys -> Request license key -> And fill all details
    To apply the license follow,
    http://help.sap.com/saphelp_nw04s/helpdata/en/9f/5e533e5ff4d064e10000000a114084/content.htm
    Regards
    Juan

  • NW 7.3 Java License

    Hi,
    We have NW 7.3 installed on Windows server 2003/Ms sqlserver 2005.
    The license we had expired and got a new licenses for both ABAP(sid = NWA) and Java (sid = NWJ).
    For ABAP, i applied through SLICENSE by loggin in as SAP*.
    But for Java, we cant start NWA, since JStart.exe is down(red color in MMC) because of the reason No valid License found.
    Since this version doesnt have Visual admin, i have no idea how to apply the license now.
    Can you please help install the license?
    Thanks
    Nanda

    Hi Nanda,
    The following is off-topic, but I think very important if you are going to use 7.3 for real...
    Nanda Kumar wrote:
    > ....We have NW 7.3 installed on Windows server 2003/Ms sqlserver 2005.....
    >
    But NW 7.3 is not supported for Win2003 and MSSQL2005...
    But only Win 2008 ( + R2) and MSSQL Server 2008 are supported
    See: http://service.sap.com/pam  > SAP NetWeaver 7.3
    This is just an FYI...
    Cheers,
    Benjamin
    Edited by: Benjamin L.F. Houttuin on Jun 6, 2011 11:24 AM

  • Java Licensing changing installation number

    Hi all,
    we have changed contract and moved a Netweaver Java installation into a new server. The license check fails since the hardaware is changed.
    I have asked a new license key but it does not work since the system was installed in a different installation number.
    Do you know if there is a way to install a new license with a different installation number ?
    Thanks in advance.
    Andrea

    If you change the hardware, the hardware key changes and you need to apply for a new license. But in the meantime you can use a temp license. SAP note 174911 explains this.
    The change in the installation number also implies a change of the license and possibly a migration key for the secure storage of the system, as described in note 816861.
    Regards,
    Désiré

  • NW04s full version Sneak Preview (java): License check failed

    I've seen similar posts, but not exactly the same thing.
    I installed the Sneak Preview Full Edition (Java), and finally installed it today.  It shuts down after 30 minutes with an error from jcontrol.exe - the license check has failed.
    It's not an expired license (I just downloaded it this week, and installed it today).
    I've seen several posts related to using the Visual Administrator to manipulate licenses, but I haven't seen how to start this tool - there are no instructions I've found that are any more detailed than "start the Visual Administrator".
    I feel like I'm almost getting it.  Can anybody provide me that missing link?

    Finally got it going properly.
    I adjusted my system clock to fall between the licence dates found in Visual Administrator and restarted the system.
    It didn't work.
    I uninstalled the sneak preview edition,
    Set the system clock to 15/Dec/2005,
    Reinstalled the the sneak preview edition.
    It did worked this time.
    I was surprised by the licence dates in Visual Administrator.This time that the start date was set properly from 15/Dec/2005 to expire on 15/Mar/2006.
    However in the first installation,the licence dates are
    from Nov/05 to May/06 which is 6 months.
    This time i got the licence from Dec/05 to Mar/06 which is 3 months.
    I observed 2 differences between these 2 installations.
    1) After my first installation, while the jcontrol.exe is still starting some processes, I tried to login to VA couple of times unsuccessfully. In my next attempt to login to VA, it asked me to change my password and I did change it from abcd1234 to something else.
    When I changed my password, may be jControl.exe didn't pick it up instantly and tried to use some services using the old password which might have caused the problem.
    2) In my second installation, I changed my system date to 15/Dec/2005.So.. to prevent any sort of automatic date synchronization, I've disconnected the internet connection.
    This time the installation date was taken into consideration by the installer to create the licence.
    It is still a mystery to me why the licence date was set to some old dates in my first install.

  • CRM5.0 (ABAP+JAVA) license

    Hi,
    I have installed CRM5.0 developments system with ABAP+JAVA installation method. Now how to apply license , do we need to apply for NW2004s or CRM5.0?
    When we try to apply CRM5 , system not allows.Please suggest.
    Thanks
    Lisa

    Lisa,
    to my knowledge the installguides tell you precisely what to do. And as far as I know the CRM install guide tells you to first installa NetWeaver. Doing that the NetWeaver installation clearly closes with intstructions to install a license...
    Regards,
    Benny

  • Installing SAP Java License without Visual Admin

    Hi All,
    I installed a stand alone SAP Java instance a couple of months ago and the temp license key has expired.
    I have applied for a perm license key, which I now have.
    Here is my main issue:
    1. The JControl service will not start because it "failed license check"
    2. The Java VM won't start because of issue "1".
    3. I can't start the Visual Admin tool because of issue "2".
    Hope that all makes sense :-s
    Main Question:
    Does anyone know how to install my new license WITHOUT using the Visual Admin tool?
    Thanks to anyone who responds.
    PS: I do credit responses if they are helpful
    Edited by: Paul Baverey on Jan 23, 2009 12:44 PM

    Hi Tobias,
    Incase if we miss that 30 mins to update the license, how can we install the new license. Is there any possible way to update from configtool?
    Thank you,
    Kasi

  • Java License Software Protection

    Hi guys.....
    I create a software, so I would like to create a license key control for it!!!! Are there any FREE Java Tool to do this?!!? Or anynoe could give me some idea about how to implement it!?!?
    Thanks all....
    Giscard

    I don't know of any free tools (but i haven't looked for any so there might be some). But it ain't difficult to write your own.
    1. Create a string, byte array, what ever you want to use with the information you need.
    2. encrypt this data with a punlic-key algorithem like RSA
    3. ship the private key with your program (you can even hardcode it in your code if you want) and let never ever anyone see the public key
    This way your program can decode the information but noone besides you can create a valid license file. Of course someone could "just" remove any license checks from your program. But there is no way how you could avoid this. You could try to make it more difficult but usually i wouldn't care about it. Most customers have better things to do than cracking your code. And for these 99.9% such a license file works fine enough

  • Java license for commericial use

    Dear all
    I hope i find a correct place to ask my question.
    I want to know that, if java is an open source and free to use language, then why we need a its license for its commercial use ???
    Also please explain the steps and the procedure of getting the license ...
    thanks

    This isn't really my scene .... but may I suggest:
    Java is run through what I call an interpreter, and I think the correct term is Java Virtual Machine together with a set of libraries (may also be termed platform).
    Many such are available under the usual standard freeare licences. Other may recommend support for patches
    http://en.wikipedia.org/wiki/Java_Platform,_Standard_Edition
    However in practice many Commercial Java programs will need to run on a J2EE application Server; which may need licenses:
    http://en.wikipedia.org/wiki/Java_EE
    Such J2EE application servers include weblogic, websphere and JBoss
    Larry would like you to buy here:
    https://shop.oracle.com .... choose Fusion Middleware

  • Java Licensing/Property/Copyright

    Hello Folks, I know this is totally off-topic but I have a question regarding licensing and copyrights.
    May I sell my Java programs? I mean, does Sun allow me to sell software I wrote in Java and have profit with Java programming or I have to "buy" a special developer's license in order to sell java programs?
    Is the JVM for internal/academic use only? Can I use it to make money, selling my programs? Will Sun own my code?
    Thanks in advance.

    Yes, you can sell your program, it's yours - but if you distribute any of Sun's property, you have to abide with thrir licensing restrictions. You'll need to research those yourself, as that is a legal matter between Sun and you.

Maybe you are looking for