DESCRIPTION
This file contains information about libraries that are supported
by code in OFBiz but that are left out of SVN because of licensing issues.
What is below is a list of jar files and where to put them, and the file(s)
to change to include them in the OFBiz build and/or run-time configuration.

NOTE: While these aren't included in the main SVN repository they are available
on the old Undersun SVN server in the specialized/libraries component directory.

-=- Workflow __________________________________________________________________________________________________________________________________________________

-Shark (LGPL):
  http://www.enhydra.org/workflow/shark/
  Current version : http://shark.objectweb.org/doc/1.1/release_notes/release_notes.html
  framework/shark/lib:
     js.jar
     sharkassignment-historyrelated-1.2_1.jar
     sharkassignment-standard-1.2_1.jar
     sharkassignment-xpdlstraightparticipantmapping-1.2_1.jar
     sharkauthentication-ldap-1.2_1.jar
     sharkcaching-lru-1.2_1.jar
     sharkclientapi-1.2_1.jar
     sharkcommonapi-1.2_1.jar
     sharkcorbaadmin-1.2_1.jar
     sharkcorbaclientapi-1.2_1.jar
     sharkcorbaserver-1.2_1.jar
     sharkcorbawhandler-1.2_1.jar
     sharkeventaudit-notifying-1.2_1.jar
     sharkeventaudit-smtp-1.2_1.jar
     sharkinternalapi-1.2_1.jar
     sharkinteroperability-wfxml-1.2_1.jar
     sharkkernel-standard-1.2_1.jar
     sharklimitagent-standard-1.2_1.jar
     sharklimitagent-timer-1.2_1.jar
     sharklogging-standard-1.2_1.jar
     sharkprocesslocking-memory-1.2_1.jar
     sharkrepositorypersistence-filesystem-1.2_1.jar
     sharkscripting-standard-1.2_1.jar
     sharksecurity-standard-1.2_1.jar
     sharktoolagent-standard-1.2_1.jar
     sharkusergroup-ldap-1.2_1.jar
     sharkutilities-common-1.2_1.jar
     sharkutilities-map-1.2_1.jar
     sharkutilities-misc-1.2_1.jar
     sharkwebservice-asap-1.2_1.jar
     sharkwebservice-asapapi-1.2_1.jar
     sharkwebservice-asaputils-1.2_1.jar
     sharkwebservice-wfxml-1.2_1.jar
     sharkwebservice-wfxmlapi-1.2_1.jar
     sharkwebservice-wfxmlutils-1.2_1.jar
     sharkxpdl-standard-1.2_1.jar
     wrd-1.2_1.jar
  NOTE: these jars based on a build from version 1.2_1 may be found attached
     in https://issues.apache.org/jira/browse/OFBIZ-552
     For an updated version some changes to the integration code in the
     shark component may be necessary.
  TO BUILD: once the jars are in place you can build from the
     ofbiz/framework/shark directory, or you can add it to the build
     list in the ofbiz/build.xml file in the framework-builds file list.
  TO DEPLOY: once the build is done the Shark container must be setup in the
     ofbiz-containers.xml file or other containers file being used.
     The shark-container container should be un-commented.
  TO DEPLOY, PART 2: to get the component to load on startup, and get the webapp
     in place and such the shark component needs to be uncommented in the
     framework/component-load.xml file.

  You may experiment online with Jawe XPDL editor:
  http://www.enhydra.org/workflow/jawe/index.html
  There is an example XPDL file in https://issues.apache.org/jira/browse/OFBIZ-552
  it came from http://www.wfmc.org/standards/docs/xpdl_sample/sample%20workflow%20process.xpdl
  For the moment Shark engine in OFBiz refuses to load it (OK in Jawe)

-=- Web Presentation: ________________________________________________________________________________________________________________________________________________

-JPublish/EdenLib (Apache):
  NOTE: these were removed for library compatibility reasons, not for license
        reasons; working these back in may be tricky
  http://sourceforge.net/projects/jpublish
  http://edenlib.sourceforge.net/
  framework/webapp/lib:
    JPublish.jar
    EdenLib.jar
  TO BUILD comment out exclude: framework/webapp/build.xml:
    org/ofbiz/webapp/view/GenericViewRenderer.java
    org/ofbiz/webapp/view/JPublishViewHandler.java
    org/ofbiz/webapp/view/JPublishWrapper.java
    org/ofbiz/webapp/view/FopPdfViewHandler.java
    org/ofbiz/webapp/ftl/FreeMarkerViewHandler.java
    org/ofbiz/webapp/ftl/FreeMarkerViewRenderer.java
    org/ofbiz/webapp/ftl/JpCacheIncludeTransform.java
  AND uncomment the jpublish type section portions of:
    org/ofbiz/webapp/region/Section.java

-=- Scripting: ________________________________________________________________________________________________________________________________________________

-JavaScript/Rhino (NPL 1.1):
  http://www.mozilla.org/js
  TO BUILD comment out exclude: base/build.xml:org/ofbiz/base/util/OfbizJsBsfEngine.java

-applets (Netscape javascript plugin : Sun Binary Code License Agreement - BCLA)
  Developpers : http://wp.netscape.com/eng/mozilla/3.0/handbook/javascript/packages.htm
  This link is also interesting : http://forum.java.sun.com/thread.jspa?threadID=516303&tstart=225
  NOTE: applications/product/src/ShipmentScaleApplet.java needs  netscape.javascript.JSObject
     If you're using the Sun JDK/JRE 1.4 or greater, the jar is located under jre/lib and it's called plugin.jar.
     You may also find it in the old Undersun SVN server in the specialized/libraries component directory.
  TO BUILD: Copy plugin.jar in framework/base/lib. This seems only needed under Windows.


-=- Reporting: ________________________________________________________________________________________________________________________________________________

-JasperReports (LGPL):
  http://sourceforge.net/projects/jasperreports
  TO BUILD comment out excludes:
    framework/webapp/build.xml:org/ofbiz/webapp/view/JasperReportsPdfViewHandler.java,org/ofbiz/webapp/view/JasperReportsXmlViewHandler.java
    applications/content/build.xml:org/ofbiz/content/report/JREntityListIteratorDataSource.java,org/ofbiz/content/report/JRMapCollectionDataSource.java

- JIMI (used by FOP ):
  http://java.sun.com/products/jimi
    FOP may require a library called JIMI to print certain graphical formats such as GIFs.  Jimi is a Sun library which cannot
    be included in OFBIZ due to licensing incompatibility, but you can download it yourself at: http://java.sun.com/products/jimi/
    and rename the ZIP file that comes with it as jimi-xxx.jar, then copy it into the same directory as fop.jar, which at this time
    is ${ofbiz.home}/framework/webapp/lib/

-=- POS _______________________________________________________________________________________________________________________________________________________

-GTK Swing (LGPL):
  http://sourceforge.net/projects/gtkswing/
  TO DEPLOY: base/config/pos-containers.xml:org.gtk.java.swing.plaf.gtk.GtkLookAndFeel for look and feel
-JavaPOS hardware drivers
  TO DEPLOY: specialpurpose/pos/lib/

  Epson Printer TM-T88III (Proprietay licence) needs jpos18-controls.jar (version specific)
  https://www.epson-pos.com/cgi-bin/sdssm/main/td_login.jsp
     epsonJposService180.jar
     epsonJposServiceCommon.jar

 Star (Proprietay licence)
 http://www.star-micronics.co.jp/service/s_print/starjavapos_win32-linux-macosx_yyyymmdd.zip.htm
     starjavapos.jar


-=- Office (Word, etc) File Handling __________________________________________________________________________________________________________________________

-OpenOffice UNO (LGPL)
  http://udk.openoffice.org/
  applications/content/lib/uno:
    XFlatXml.jar
    XMergeBridge.jar
    XSLTFilter.jar
    XSLTValidate.jar
    htmlsoff.jar
    java_uno.jar
    java_uno_accessbridge.jar
    juh.jar
    jurt.jar
    jut.jar
    officebean.jar
    ridl.jar
    unoil.jar
  TO BUILD comment out exclude: applications/content/build.xml:org/ofbiz/content/openoffice/*

-=- Accounting: Payment Processing ____________________________________________________________________________________________________________________________

-CyberSource
  applications/accounting/lib/cybersource:
    cybsclients.jar
    cybssecurity.jar
  TO BUILD comment out exclude: applications/accounting/build.xml:org/ofbiz/accounting/thirdparty/cybersource/**

-Securepay
  applications/accounting/lib/cybersource:
	Base64.jar
	securepayxmlapi_obf.jar
	xercesImpl-2.4.0.jar
	xmlParserAPIs-2.4.0.jar
  TO BUILD comment out exclude: applications/accounting/build.xml:org/ofbiz/accounting/thirdparty/securepay/**

-WorldPay
  applications/accounting/lib/worldpay:
    config
    config/currency.properties
    config/keystore
    config/keystore/wcc
    config/keystore/wcc/public-1.key
    config/keystore/wcc/revision
    cryptix-lib
    cryptix-lib/Cryptix.properties
    cryptix.jar
    ijce-lib
    ijce-lib/IJCE.properties
    ijce-lib/java.security.fallback
    ijce-lib/TargetHelp.html
    readme.txt
    select.jar
    select.properties
  TO BUILD comment out exclude: applications/accounting/build.xml:org/ofbiz/accounting/thirdparty/worldpay/**
