1 Reply Latest reply on Dec 17, 2004 3:19 PM by starksm64

    LGPL and Sun's activation.jar ???

    khookguy

      I'm sure this question is answered somewhere, but after many Google searches, I can't find a definitive answer.

      JBoss 4.0.0 includes a small number of files (e.g., activation.jar is Sun's implementation of the Java Activation Framework) that are not distributable under the LGPL. Sun distributes activation.jar with the license that I cut and pasted into the bottom of this post. In particular, in the second part of the Sun license (the Optional Package part), 2. License to Distribute Software - this seems incompatible with the LGPL.

      Am I missing something here? Can anybody clarify?

      Thanks,

      Mark


      ======= copy of Sun license ========================


      Sun Microsystems, Inc.
      Binary Code License Agreement

      READ THE TERMS OF THIS AGREEMENT AND ANY PROVIDED
      SUPPLEMENTAL LICENSE TERMS (COLLECTIVELY
      "AGREEMENT") CAREFULLY BEFORE OPENING THE SOFTWARE
      MEDIA PACKAGE. BY OPENING THE SOFTWARE MEDIA
      PACKAGE, YOU AGREE TO THE TERMS OF THIS
      AGREEMENT. IF YOU ARE ACCESSING THE SOFTWARE
      ELECTRONICALLY, INDICATE YOUR ACCEPTANCE OF THESE
      TERMS BY SELECTING THE "ACCEPT" BUTTON AT THE END
      OF THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL
      THESE TERMS, PROMPTLY RETURN THE UNUSED SOFTWARE
      TO YOUR PLACE OF PURCHASE FOR A REFUND OR, IF THE
      SOFTWARE IS ACCESSED ELECTRONICALLY, SELECT THE
      "DECLINE" BUTTON AT THE END OF THIS AGREEMENT.

      1. LICENSE TO USE. Sun grants you a
      non-exclusive and non-transferable license for the
      internal use only of the accompanying software and
      documentation and any error corrections provided
      by Sun (collectively "Software"), by the number of
      users and the class of computer hardware for which
      the corresponding fee has been paid.

      2. RESTRICTIONS. Software is confidential and
      copyrighted. Title to Software and all associated
      intellectual property rights is retained by Sun
      and/or its licensors. Except as specifically
      authorized in any Supplemental License Terms, you
      may not make copies of Software, other than a
      single copy of Software for archival purposes.
      Unless enforcement is prohibited by applicable
      law, you may not modify, decompile, or reverse
      engineer Software. You acknowledge that Software
      is not designed, licensed or intended for use in
      the design, construction, operation or maintenance
      of any nuclear facility. Sun disclaims any
      express or implied warranty of fitness for such
      uses. No right, title or interest in or to any
      trademark, service mark, logo or trade name of Sun
      or its licensors is granted under this Agreement.

      3. LIMITED WARRANTY. Sun warrants to you that for
      a period of ninety (90) days from the date of
      purchase, as evidenced by a copy of the receipt,
      the media on which Software is furnished (if any)
      will be free of defects in materials and
      workmanship under normal use. Except for the
      foregoing, Software is provided "AS IS". Your
      exclusive remedy and Sun's entire liability under
      this limited warranty will be at Sun's option to
      replace Software media or refund the fee paid for
      Software.

      4. DISCLAIMER OF WARRANTY. UNLESS SPECIFIED IN
      THIS AGREEMENT, ALL EXPRESS OR IMPLIED CONDITIONS,
      REPRESENTATIONS AND WARRANTIES, INCLUDING ANY
      IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A
      PARTICULAR PURPOSE OR NON-INFRINGEMENT ARE
      DISCLAIMED, EXCEPT TO THE EXTENT THAT THESE
      DISCLAIMERS ARE HELD TO BE LEGALLY INVALID.

      5. LIMITATION OF LIABILITY. TO THE EXTENT NOT
      PROHIBITED BY LAW, IN NO EVENT WILL SUN OR ITS
      LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT
      OR DATA, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL,
      INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED
      REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT
      OF OR RELATED TO THE USE OF OR INABILITY TO USE
      SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE
      POSSIBILITY OF SUCH DAMAGES. In no event will
      Sun's liability to you, whether in contract, tort
      (including negligence), or otherwise, exceed the
      amount paid by you for Software under this
      Agreement. The foregoing limitations will apply
      even if the above stated warranty fails of its
      essential purpose.

      6. Termination. This Agreement is effective
      until terminated. You may terminate this
      Agreement at any time by destroying all copies of
      Software. This Agreement will terminate
      immediately without notice from Sun if you fail to
      comply with any provision of this Agreement. Upon
      Termination, you must destroy all copies of
      Software.

      7. Export Regulations. All Software and technical
      data delivered under this Agreement are subject to
      US export control laws and may be subject to
      export or import regulations in other countries.
      You agree to comply strictly with all such laws
      and regulations and acknowledge that you have the
      responsibility to obtain such licenses to export,
      re-export, or import as may be required after
      delivery to you.

      8. U.S. Government Restricted Rights. If
      Software is being acquired by or on behalf of the
      U.S. Government or by a U.S. Government prime
      contractor or subcontractor (at any tier), then
      the Government's rights in Software and
      accompanying documentation will be only as set
      forth in this Agreement; this is in accordance
      with 48 CFR 227.7201 through 227.7202-4 (for
      Department of Defense (DOD) acquisitions) and with
      48 CFR 2.101 and 12.212 (for non-DOD
      acquisitions).

      9. Governing Law. Any action related to this
      Agreement will be governed by California law and
      controlling U.S. federal law. No choice of law
      rules of any jurisdiction will apply.

      10. Severability. If any provision of this
      Agreement is held to be unenforceable, this
      Agreement will remain in effect with the provision
      omitted, unless omission would frustrate the
      intent of the parties, in which case this
      Agreement will immediately terminate.

      11. Integration. This Agreement is the entire
      agreement between you and Sun relating to its
      subject matter. It supersedes all prior or
      contemporaneous oral or written communications,
      proposals, representations and warranties and
      prevails over any conflicting or additional terms
      of any quote, order, acknowledgment, or other
      communication between the parties relating to its
      subject matter during the term of this Agreement.
      No modification of this Agreement will be binding,
      unless in writing and signed by an authorized
      representative of each party.

      JAVA OPTIONAL PACKAGE

      JAVABEANS(TM) ACTIVATION FRAMEWORK, VERSION 1.0.2
      SUPPLEMENTAL LICENSE TERMS

      These supplemental license terms ("Supplemental
      Terms") add to or modify the terms of the Binary
      Code License Agreement (collectively, the
      "Agreement"). Capitalized terms not defined in
      these Supplemental Terms shall have the same
      meanings ascribed to them in the Agreement. These
      Supplemental Terms shall supersede any
      inconsistent or conflicting terms in the
      Agreement, or in any license contained within the
      Software.

      1. Software Internal Use and Development License
      Grant. Subject to the terms and conditions of
      this Agreement, including, but not limited to
      Section 3 (Java(TM) Technology Restrictions) of
      these Supplemental Terms, Sun grants you a
      non-exclusive, non-transferable, limited license
      to reproduce internally and use internally the
      binary form of the Software, complete and
      unmodified, for the sole purpose of designing,
      developing and testing your Java applets and
      applications ("Programs").

      2. License to Distribute Software. In addition to
      the license granted in Section 1 (Software
      Internal Use and Development License Grant) of
      these Supplemental Terms, subject to the terms and
      conditions of this Agreement, including but not
      limited to, Section 3 (Java Technology
      Restrictions) of these Supplemental Terms, Sun
      grants you a non-exclusive, non-transferable,
      limited license to reproduce and distribute the
      Software in binary code form only, provided that
      you (i) distribute the Software complete and
      unmodified and only bundled as part of your
      Programs, (ii) do not distribute additional
      software intended to replace any component(s) of
      the Software, (iii) do not remove or alter any
      proprietary legends or notices contained in the
      Software, (iv) only distribute the Software
      subject to a license agreement that protects Sun's
      interests consistent with the terms contained in
      this Agreement, and (v) agree to defend and
      indemnify Sun and its licensors from and against
      any damages, costs, liabilities, settlement
      amounts and/or expenses (including attorneys'
      fees) incurred in connection with any claim,
      lawsuit or action by any third party that arises
      or results from the use or distribution of any and
      all Programs and/or Software.

      3. Java Technology Restrictions. You may not
      modify the Java Platform Interface ("JPI",
      identified as classes contained within the "java"
      package or any subpackages of the "java" package),
      by creating additional classes within the JPI or
      otherwise causing the addition to or modification
      of the classes in the JPI. In the event that you
      create an additional class and associated API(s)
      which (i) extends the functionality of the Java
      platform, and (ii) is exposed to third party
      software developers for the purpose of developing
      additional software which invokes such additional
      API, you must promptly publish broadly an accurate
      specification for such API for free use by all
      developers. You may not create, or authorize your
      licensees to create additional classes,
      interfaces, or subpackages that are in any way
      identified as "java", "javax", "sun" or similar
      convention as specified by Sun in any naming
      convention designation.

      4. No Support. Sun is under no obligation to
      support the Software or to provide you with
      updates or error corrections. You acknowledge that
      the Software may have defects or deficiencies
      which cannot or will not be corrected by Sun.

      5. Trademarks and Logos. You acknowledge and agree
      as between you and Sun that Sun owns the SUN,
      SOLARIS, JAVA, JINI, FORTE, and iPLANET trademarks
      and all SUN, SOLARIS, JAVA, JINI, FORTE, and
      iPLANET-related trademarks, service marks, logos
      and other brand designations ("Sun Marks"), and
      you agree to comply with the Sun Trademark and
      Logo Usage Requirements currently located at
      http://www.sun.com/policies/trademarks. Any use
      you make of the Sun Marks inures to Sun's benefit.

      6. Source Code. Software may contain source code
      that is provided solely for reference purposes
      pursuant to the terms of this Agreement. Source
      code may not be redistributed unless expressly
      provided for in this Agreement.

      7. Termination for Infringement. Either party may
      terminate this Agreement immediately should any
      Software become, or in either party's opinion be
      likely to become, the subject of a claim of
      infringement of any intellectual property right.

      For inquiries please contact: Sun Microsystems,
      Inc. 901 San Antonio Road, Palo Alto, California
      94303
      (LFI#115020/Form ID#011801)

        • 1. Re: mailboxes and authentication
          starksm64

          I think authentication and authorization should work with the existing security realms JBOSS already has.

          The really exciting thing about a mailserver in JBOSS would be that you can add an other/mail based intarface to your applications. Think about the possiblity of writing hooks to handle custom work flows, invoke services based on the arrival of some messages.

          The problem with having a separate security model for the mailserver and the rest of the services in the container is that now you have to integrate twice to like a corporate LDAP server(ActiveDiretory?).

          I suggest separating user repository for custom(M1) attributes. Provision the M1 attributes to the M1 storage after succesfully authenticated via the realms. Provide a hook for the provisioning.

          For example:
          - new user to M1 logs in.
          - user known the the JAAS realm authentication succeed.
          - load user profile to M1. Find none.
          - Invoke provisioning hook, provide userID.
          - provisioning hook implementation does magic to retrive infomation from somewhere. Return M1 user profile.
          - save profile.