JMDB - Java Movie Database V1.x versions
http://www.jmdb.de/
[LAST UPDATE: 2010-04-01]

Please send bug reports and suggestions to: report 'at' jmdb.de!
You may also want to look into the community board (see JMDB website).


1. Introduction
2. What you need
3. Where to get the files
4. Installation of other used programs
5. Installation and starting JMDB
6. Using JMDB
7. Contacting the autors
8. Disclaimer


************************************************************
**********            1. Introduction             **********
************************************************************

First of all: We are NOT IMDb! We don't have any connection to IMDb.
              JMDB (or "Java Movie Database") is the name of our own
              program that only USES data files from IMDb.

Java Movie Database is a Java based application for searching and getting
information about movies, actors and all that has to do with these.

The information is nearly (some files are not processed) the same as you
can get when using the IMDb web page at http://www.imdb.com.

The difference is that JMDB is an alternative form of navigating through
this information, is able to run on a stand-alone PC just as in a network
environment.

Another advantage is that you can write your own programs to use the same
locally installed database you have after running JMDB (but keep the 
copyright (READ "COPYIMDB.TXT") from IMDb in mind).



License
=======
You may, without charge, royalty, or other payment, copy and 
distribute copies of this program and derivative works of this work 
in source or binary form provided. that:
(1) you appropriately publish on each copy an appropriate 
copyright notice; (2) faithfully reproduce all prior copyright 
included in the original work; and (3) agree to indemnify and 
hold all prior authors, copyright holders and licensors of the 
work harmless from and against all damages arising from use of 
or the inability to use the work.



Copyright
=========
The Java Movie Database (JMDB) is copyrighted by the authors of the program.
We release the source code later to the public, if it's ready to do so.
All other parts are under protection by the copyrights of the owners of
that parts.

Please note that the Internet Movie Lists and the database files, which
are generated by the Java Movie Database, are protected by the Internet
Movie Database (IMDb) copying policy. This policy can be found in the
file "COPYIMDB.TXT"; also any Internet Movie List contains a copy of this 
policy.

Among other restrictions, the policy prohibits the CD-ROM distribution
of the Internet Movie Lists or the database files created by the
Java Movie Database



Warranty
========
EXCEPT AS OTHERWISE RESTRICTED BY LAW, THIS WORK IS PROVIDED
WITHOUT ANY EXPRESSED OR IMPLIED WARRANTIES OF ANY KIND, INCLUDING
BUT NOT LIMITED TO, ANY IMPLIED WARRANTIES OF FITNESS FOR A
PARTICULAR PURPOSE, MERCHANTABILITY OR TITLE.  EXCEPT AS
OTHERWISE PROVIDED BY LAW, NO AUTHOR, COPYRIGHT HOLDER OR
LICENSOR SHALL BE LIABLE TO YOU FOR DAMAGES OF ANY KIND, EVEN IF
THEY HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.



************************************************************
**********            2. What you need            **********
************************************************************

1. this package or alternatively a newer one ;)
2. the database MySQL 3.23.xx or newer
3. a Java 1.3 runtime library (JRE 1.3) or newer
4. a Java JDBC driver (from MySQL AB) for the connection to MySQL
   (Version 3.x.x is currently NOT supported - so get V2.x.x)
   The driver is normally included in the JMDB package, but you
   may want to update, if there is a newer driver available.
5. the IMDb text files
6. one or more computers capable of running the above

As you can see, you basically must be able to run MySQL and Java.
This means that you can run it on most platforms, including
Windows, Linux, any Unix, OS/2 (incl. eCS).



************************************************************
**********       3. Where to get the files        **********
************************************************************

3.1 JAVA MOVIE DATABASE:
------------------------
You can download JMDB and get information about it at:
http://www.jmdb.de/.


3.2 DATABASE:
-------------
JMDB does support MySQL and also the PostgreSQL database using
it's own abstraction layer.

-> MySQL
   MySQL can be downloaded from:
   http://www.mysql.com/ (click on "Downloads (GA)" and then 
   "MySQL Community Server" to get to the free one).

   Note for OS/2 users: 
   --------------------
   For the latest OS/2 versions of PostgreSQL you can alternativly
   check out Paul Smedley's website (OS2Ports of Unix Applications)
   or hobbes):
   http://smedley.info/os2ports/
   ...or (for older ports by Yuri Dario)
   http://yware.dnsalias.com/yuri/mysql2/

   You may need latest OS/2 WarpIn-Installer for WPI files
   http://www.xworkplace.org/


-> PostgreSQL
   PostgreSQL can be downloaded from:
   http://www.postgresql.org/

   Note for OS/2 users: 
   --------------------
   For the latest OS/2 versions of PostgreSQL you can alternativly
   check out Paul Smedley's website (OS2Ports of Unix Applications)
   or hobbes):
   http://smedley.info/os2ports/
   or (for older ports)
   http://hobbes.nmsu.edu/h-search.php?key=postgres


3.3 JDBC DRIVER:
----------------
JMDB comes with tested JDBC drivers for all supported databases
so you normally don't have to upgrade them and can normally skip
this section.
If you want to download newer drivers you can do it but we don't
support this.

-> MySQL JDBC drivers
   The V5.x.x drivers are supported!

   You can get the latest (V3.x.x/V5.x.x) MySQL JDBC Driver
   (Type 4) called Connector/J from MySQL AB at:
   http://www.mysql.com/downloads/connector/j/


-> PostgreSQL JDBC drivers
   The PostgreSQL driver for PostgreSQL 8.x has been rewritten.
   After the changes applied to JMDB version 1.40 it's finally
   possible to use the latest drivers again.

   If you still want to try newer drivers than shipped with the
   application you can get them here:
   http://jdbc.postgresql.org/


3.4 JAVA RUNTIME:
-----------------
A Java runtime can be downloaded at:
http://java.sun.com/javase/downloads/
http://www.ibm.com/developerworks/java/
http://www.goldencode.com/
and others

Note for OS/2 and eCS users: 
----------------------------
A Java/JRE 1.4.x and later is available from Golden Code Development 
(http://www.goldencode.com/). Java from Innotek GmbH is now only available
through eComStation as Innotek GmbH was bought by Sun which was finally bought
by Oracle.

The difference between GoldenCode Java and Innotek Java:
 - Golden Code has developed a native Java for OS/2 and eCS
      Plus.: Native and fast application environment
      Minus: Other errors than the Windows Java version
             No updates since a long time.
             You have to pay for it...but it's native


 - Innotek uses the Windows Java package and uses Odin technology to 
   make it work under OS/2 and eCS
      Plus.: It has the same bugs as the Windows version ;)
      Minus: Maybe the bad taste no beeing a native version.
             Speed: Is a little bit slower but not really noticeable
             No updates since a long time. The latest one is even not
             linked on their website (links follow).
             --> Java v1.4.2_09 JRE:
                 http://download.innotek.de/javaos2/142_09/install.exe
             --> Java v1.4.2_09 JDK (includes JRE):
                 http://download.innotek.de/javaos2/142_09/install_sdk.exe

      Note: Some made a Java 1.5.0_XX release working on OS/2 and eCS!

The IBM OS/2 JRE 1.3(.1) is not free but is shipped with eComStation.
You have to subscribe to IBM Software Choice which offers you more than 
just the JRE or you can buy the eComStation (short eCS) from 
Serenity Systems/Mensys NL.
The eComStation is a basic OS/2 Warp(Server) with included JRE 1.3 and 
Innotek Java 1.4.2!

eComStation........: http://www.ecomstation.com/
                     http://www.mensys.nl/
                     or
                     http://www.serenity-systems.com/
IBM Software Choice: http://service.software.ibm.com/asd-bin/doc/index.htm


3.5 INTERNET MOVIE DATABASE:
----------------------------
The Internet Movie Database (IMDb) is reachable at:
http://www.imdb.com

You can find an Internet Movie Database (IMDb) FAQ at:
http://us.imdb.com/FAQ

The FTP sites for the text files are listed here:
http://us.imdb.com/interfaces

You can alternativly click at "Index" (at the bottom of the main) and 
"Interfaces" when you are at the main page of IMDb.

The text files you must have before running JMDB are at one of the following sites:
ftp://ftp.fu-berlin.de/pub/misc/movies/database/
ftp://ftp.funet.fi/pub/mirrors/ftp.imdb.com/pub/
ftp://ftp.sunet.se/pub/tv+movies/imdb/

The IMDb FTP server is no longer available (ftp://ftp.imdb.com/pub/interfaces/).


You can use the following ascii text files at the moment for JMDB. 
They are compressed in tar-GNUZip format (.tgz) when you download 
them but you DON'T have to decompress them, because JMDB does it
automatically:

actors.list
actresses.list
aka-names.list
aka-titles.list
alternate-versions.list    (since v1.40)
biographies.list
business.list
certificates.list
cinematographers.list
color-info.list
composers.list
costume-designers.list
countries.list
crazy-credits.list         (since v1.40)
directors.list
distributors.list
editors.list
genres.list
german-aka-titles.list     (outdated and shouldn't be used - last update May 2005 -
                            using this file causes errors written to IMDb_Error.log)
goofs.list
italian-aka-titles.list    (outdated and shouldn't be used  - last update Dec. 2000 -
                            using this file causes errors written to IMDb_Error.log)
keywords.list
language.list
literature.list            (since v1.40)
locations.list             (since v1.40)
miscellaneous.list
movies-links.list
movies.list                ( -- required -- )
mpaa-ratings-reasons.list
plot.list
producers.list
production-companies.list
production-designers.list
quotes.list
ratings.list
release-dates.list
running-times.list
taglines.list
technical.list
trivia.list
writers.list



************************************************************
********** 4. Installation of other used programs **********
************************************************************

4.1a MySQL:
----------
Install MySQL as described in the documentation of MySQL.
Then you (may) have to add the correct user rights so that the user
that will run JMDB has the privileges to connect to the database.

NOTE: You only have to change this if you DON'T run MySQL on
      the same machine as JMDB. If you run both on the same computer
      normally you don't have to change the user/access settings at all.
      Just use the defaults:
      User: root
      Password: root  (or no password at all)



WARNING: There may be changes due to newer releases so it's always
         a good idea to check the table structure!
         Newer versions of MySQL will most likely need updated
         INSERT-Statements.
         Within the console you can type the following lines to show
         the current table structure:
		use mysql;
		describe user;

To insert new rights try this command from a MySQL 3.23 client
running as root:

Insert into user (Host, User, Password, Select_priv, Insert_priv,
Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv,
Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv,
Index_priv, Alter_priv) values("%","username",PASSWORD("password"),"Y",
"Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y");


MySQL 5.0 needs this line:

INSERT INTO `user` VALUES ('%','username',PASSWORD('password'),'Y',
'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y',
'Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0);

You have to replace 'USERNAME' and 'PASSWORD' with the correct values.

4.1b PostgreSQL:
----------------
Just follow the normal PostgreSQL installation.
If you want to access the database from another computer follow
the information you can find in the PostgreSQL documentation.


4.2 Java Runtime:
-----------------
Install it so that you can run java with the command "java" from the
command line.


4.3 IMDb text files:
--------------------
Download all files (*.gz) into one directory. You can decompress
them (*.list), but this is NOT needed. JMDB can read the compressed
files directly!

4.3a - Windows users can use WinZip to extract the files.
4.3b - OS/2 users have to get GZIP.EXE V1.2.4 (18. Aug 1993) from hobbes
       ("http://hobbes.nmsu.edu/h-search.php?key=gz124_16.zip")
       Attention:
       ----------
       When using GZIP with "-d" parameter to uncompress, GZIP automatically
       deletes the source file.



************************************************************
**********   5. Installation and starting JMDB    **********
************************************************************

BASIC INSTALL DESCRIPTION:
--------------------------
- Decompress all the IMDb data files (*.list) into one directory or
  import the compressed *.list.gz files. 
  Both works without problems! 
  The import is NOT faster when you extract the files!

- Install JMDB with using the Install Package or decompress all the
  files of the JMDB zip file into one directory, for
  example /usr/local/bin/jmdb (Unix) or C:\JMDB (OS/2 or Windows).

- To continue you have to start the MySQL Server (MYSQLD.EXE)
  JMDB needs a connetion to the installed database.
  The MySQL Server should be running before you start JMDB!!!

- Start JMDB.

  Windows user..: After installation, wou'll find an icon on your desktop and
                  a new Group in the Start Menu. If you have not used the Installer,
                  run startwin.bat or startwindebug.bat in the JMDB directory. 
  OS/2 user.....: Run instos2.cmd: It can create WPS Objects for JMDB and can
                  also create the files named "startos2.cmd" and "startos2debug.cmd",
                  which you can run.
                  Run startos2.cmd or startos2debug.cmd alternatively after editing.
                  If you used WarpIN, it should have automatically created the 
                  desktop icons and startup scripts
  Linux/Mac user: Run startlinux shell script to start JMDB.

  Desktop icons for Windows and OS/2 can be found in the graphics
  subdirectory.

- The first thing you have to do is to set the correct paths and user
  information in the "File" -> "Setup" window.
  If there is no CFG available, this dialog is automatically shown.
  OS/2 and Windows users running MySQL/PostgreSQL and JMDB on the 
  same computer (as localhost) can remove the password from the 
  "DB Setup" pageframe!
  You can test if the connection works by selecting the "Test Connection"
  button.
  MySQL default user.....: root
  PostgreSQL default user: postgres

   --> Several Linux distributions may use other default users and passwords!!!

- When you have setup JMDB and you have a working MySQL Server running 
  you have to convert the IMDb text files into a MySQL database. 
  Use "File" -> "Create Database" for this.
  This will take SEVERAL HOURS and only has to be done once!
  So start this at night, when you don't use you PC or you don't need
  the full power of it.
  NOTE:  Even on a fast AMD Athlon 2500+ (1.8 GHz) it takes 2.5 hours to 
         convert all IMDb list files (MySQL 3.23, other may even need longer).
         
- You can also "CANCEL" the converter and restart the converter later!
  It will resume at the last file you where converting.

- When database conversion is finished, you can use the database. Try a
  "File" -> "New Search" for example.
  The IMDb text files are not used any more, so you can delete them from
  your harddisk to save space (~400 MB for the compressed files).

- About ~1200 MB+ is needed for the database (MySQL 3.23.58 MyISAM Engine),
  MySQL 5.0.x uses 2600 MB+ (InnoDB Engine)


OS/2 INSTALL DESCRIPTION:
-------------------------
There are two ways to install JMDB (*.WPI/EXE and *.ZIP).

a) If you have installed WarpIN (the ulimative OS/2 software installer),
   you should get the JMDB*.WPI archive.
   All you have to do is double click onto this archive.
   After that you can follow the steps shown on screen.
   There's also a version available with the WarpIn Installer included.

b) When you have got the *.ZIP archive, you have to create a directory,
   where you want to install JMDB.
   Move the file to that directory and unzip the file:
   UNZIP JMDB*.ZIP
   or
   PKUNZIP2 -d JMDB*.ZIP   // '-d' is needed to create the directory
                              structure stored in .ZIP file
   
   When you have unzipped the JMDB*.ZIP file, you can start the file
   INSTOS2.CMD.
   It searches for an installed Java Runtime Environment 1.3(.1) (JRE 1.3(.1)), 
   the DB driver in current directory creates a WPS Folder named
   "Java Movie Database" which contains some program objects. 
   It also creates the file STARTOS2.CMD and STARTOS2DEBUG.CMD

For the rest have a look at the BASIC INSTALL DESCRIPTION.



************************************************************
**********             6. Using JMDB              **********
************************************************************

We hope you discover the functionality of JMDB by simply using it.

Most windows have a "Help" button. All you have to know when USING the
program is in that help file, which you can alternatively read with any
html-Browser. The file is located in the "doc"-Directory.



************************************************************
**********       7. Contacting the autors         **********
************************************************************

The autors of this software are:
Uwe Freese     : program design, layout and creator of most things that
                 have nothing to do with SQL and the database itself,
                 webpage, testing MySQL on a linux machine
Juergen Ulbts  : data import/export, resume mode, querys, table design, 
                 program design, OS/2 support (testing, development,
                 install scripts)

If you have bug reports or suggestions for future releases,
look at the JMDB site for contacting us: http://www.jmdb.de/



************************************************************
**********             8. Disclaimer              **********
************************************************************

Many thanks go to the following people:
---------------------------------------
Many thanks go to our beta testers for giving hints and making suggestions.

Sergi Tur Badenas    - Spanish translation
Olof Hjalmarsson and - Swedish translation
Johnny Johannesson
Vladimir Frelikh     - Russian translation
Marko Bastovanovic   - Bugreports and also the Serbian translation
Roland Bouwmans      - Dutch translation
Jean-Claude Vignoli  - French translation, bugreport and testing
Vittorio Monaco      - Italian translation
Marco Turci          - Bugreports and MySQL 4/5 performance improvement suggestions
James Nicolson       - For his initial .app bundle package for Mac OS X
Kai Schulte          - For his tests of the .app bundle on his MacBook after lunch
                       at the cafeteria of the university. :)
                       Many thanks also for showing me the Growl package! I'll
                       include support ASAP.
Jan Weiss            - For his updates on the linux start script and his tests
                       of the Mac OS X .app bundle.
Holger Cremer        - For his tests to get Derby (aka Java DB) and SQLite working.
Delfi Reinoso        - Suggestions, bugreports and testing
Vittorio Monaco      - Italian translation
Christian Hennecke   - For your time as alpha and betatester.


Paul Smedley         - Thank you for taking the time to port all those cool apps
                       to eComStation (eCS) and OS/2, like MySQL, PostgreSQL
                       and all the other applicatons.
Yuri Dario           - Thank you for porting the older MySQL version to eComStation (OS/2)!
Lorne Sunley         - Thank you for porting the older PostgreSQL version to eComStation (OS/2)!
Mark Matthew         - Thank you for the Java MySQL-JDBC driver!
Thorsten Thielen     - Many thanks to you and the german TeamOS/2 groups
Ulrich Moeller,
Paul Ratcliffe,..    - Thank you for WarpIN (eCS & OS/2 Installer) and XWorkplace
                       plus fixes to both projects!
Bruno Lowagie and
Paulo Soares         - Thank you for the free Java iText PDF library!
                       http://www.lowagie.com/iText/
                       The library is used to export the details of persons and movies
                       into a PDF file!
Linus Torwald        - Thank you for Linux!


============================================================
*** Then many thanks to all other individuals we forgot! ***
============================================================




Many thanks go to the following companies/groups:
-------------------------------------------------
IMDb              - Many thanks to all people working for the 
                    'Internet Movie Database'!
                    Without your effort in collecting information about the 
                    movie industry and providing the information as text files,
                    our program wouldn't exist.
MySQL AB          - Thank you for developing MySQL!
PostgreSQL.org    - Thank you to the PostgreSQL community!
Sun Microsystems  - Thank you for developing JAVA and providing us with
                    the JDK and JREs!
IBM Corporation   - Thank you for the JDK, the JRE, Visual Age for Java!
                    Please continue the development of Visual Age for Java
                    (especially the OS/2 version).
                    Then "buy" some marketing guys from Microsoft, so you can
                    sell your good products (OS/2; Visual Age Series) instead
                    of placing it in the darkest room you can find in the 
                    Austin headquarter.
                    I hope the guys from Serenity Systems will make a better
                    marketing job, so eCS (OS/2) will be a success.
                    Many thanks you allow Serenity Systems to 
                    sell OS/2 as eComStation (eCS).
Serenity Systems/
Mensys NL         - Many thanks for eComStation
OS2.ORG & TeamOS/2- Thank you for all the news
Golden Code Dev.  - Thanks for the OS/2 Java 1.4.x package
Innotek GmbH      - Thanks for the free OS/2 Java 1.4.x package


=================================================================
*** Then many thanks to all other companies/groups we forgot! ***
=================================================================



TRADEMARKS:
-----------
IMDb is a trademark of the Internet Movie Database
Java is a trademark of Sun Microsystems.
Windows is a trademark of Microsoft Corporation.
OS/2 is a trademark of IBM Corporation.
eComStation and eCS is a trademark of Serenity Systems.
