Product Support RecentChanges

SuperContainer

Contents

  1. Licensing
    1. Limitations of demo mode
    2. Cost / registration for plugin
    3. Upgrading from Workgroup to Enterprise
  2. Deployment and installation
    1. How to install plugins for various configurations
    2. What is the best way to get up and running with SuperContainer
    3. Manually Installing SuperContainer 2.0 and higher
    4. SuperContainer for hosting providers
    5. List of hosting providers
    6. Enabling OS X Core Image resizing
    7. Plugin auto-update info
    8. Compatability matrix
    9. Configuring where SuperContainer saves files
    10. Uninstalling SuperContainer
  3. Troubleshooting
    1. Image files are not resizing
    2. Seeing the same document for all records
    3. How to handle "ERROR" response from plugin
    4. List all locations of log files
    5. Providing the correct value to SCSetBaseURL
    6. Problems installing Tomcat
    7. Uploading package files
    8. Thumbnails Are NOT Generating
    9. Out of Memory
    10. Same preview image after deleting a file and uploading new file
    11. Standalone Mode on OS X Crashing
    12. Registration is gone after restart
    13. NAS Storage permissions problems
    14. FileMaker crashing, Java issues
    15. SuperContainerServer.jar crashes
    16. Dude, where are my files?!
  4. Web publishing
    1. Using IFRAME with PHP / XSLT
  5. Security
    1. Security concepts in SuperContainer
    2. Embedding username and password in SuperContainer URL
    3. Security issue with loading plugin in IWP
    4. Using Apache's or IIS' SSL or Authentication settings
    5. Redirecting SuperContainer request from Apache or IIS
  6. Usage tips
    1. Question about naming strategies. Address the FAQ of why everything is stored in folders
    2. Editing documents and using the plugin to re-upload them
    3. Single record linking to multiple web viewers (ie. multiple URL's for a single record)
    4. Using SuperContainer with portals
    5. Using RawData URL to include images on public web site with an IMG tag.
    6. Viewing multiple page PDFs within the web viewer (use RawData url)
    7. Discuss umask setting in order to make files uploaded by SuperContainer readable / writeable, or else having a web.xml setting to configure that and then do it in the java code.
    8. Industry-specific tips
    9. Customizing the appearance of SuperContainer
    10. Using image transparency with SuperContainer
    11. Storing the filename of an uploaded file in a FileMaker field
    12. Preview TIFF images
    13. Using SCScanDirectory()
    14. Why can't SuperContainer store multiple files in a single directory?

Licensing

Limitations of demo mode

While running in demo mode, SuperContainer Server will run for two hours each time you start it. If the demo period expires, you may simply quit and restart the SuperContainer Server to renew the two hour demo period. When you are ready to purchase a license, just replace the demo license key with your permanent license key to get rid of the two hour timeout.

Cost / registration for plugin

There is no cost for the plugin; it is included with the purchase price of SuperContainer. There are no registration functions necessary.

Upgrading from Workgroup to Enterprise

If you would like to upgrade from a Workgroup license, first purchase an Enterprise license, and then contact us and we will credit the original charge for the Workgroup license. We are planning on upgrading our online store at some point to make this a more automated process.

Deployment and installation

How to install plugins for various configurations

See Plugin installation

What is the best way to get up and running with SuperContainer

Use SuperContainerServer.jar if you just want to put together a proof of concept, or if you're demoing SuperContainer. The standalone mode is also great to use while developing.

Manually Installing SuperContainer 2.0 and higher

SuperContainer 2.0 comes with a bundled installer. If you'd prefer to run the installer manually, you can do the following:

  1. Determine your INSTALLATION_PATH
  1. Copy the SuperContainer folder to your INSTALLATION_PATH. Only copy the directory called 'SuperContainer', not the entire SuperContainer_2.0 directory.
  2. Optionally, modify the tomcat configuration files to serve SuperContainer content on port 80
    1. Determine your TOMCAT_CONFIG_FILE path
    1. Add the appropriate lines to mount the SuperContainer webapp

SuperContainer for hosting providers

You can run SuperContainer version 1.72 or later for your clients in Tomcat by following these steps:

List of hosting providers

The following companies have told us that they are set up or willing to configure their servers to host SuperContainer. They are listed in order of when they first contacted us:

Enabling OS X Core Image resizing

In it's normal configuration, SuperContainer can generate thumbnail images of JPEGs, PNGs, GIF files, and most TIFF files. It will not generate thumbnails for PDF files, CMYK JPEG or TIFF files, RAW files, or Photoshop files.

There's a mac-specific feature that lets SuperContainer use native OS X image processing libraries for its image handling. This means it can generate thumbnails of PDFs, as well as just about any other image type you throw at it. This only works if you're running SuperContainer server in standalone mode on an OS X box. It will not work on a Windows server, or when running in Tomcat. It doesn't matter what the client machines are using, however.

Just create a new file at the following location:

/Library/Preferences/com.prosc.supercontainer.properties

The contents of the file should be the following line:

coreImageEnabled true

And then restart SuperContainer. Thumbnails will now be generated using OS X image libs, and PDF will appear as thumbnails instead of icons.

Plugin auto-update info

See the section on Plugin autoupdate

Compatability matrix

Accessing SuperContainer from FileMaker Pro

Version 7Version 8Version 8.5Version 9Version 10
FileMaker Pro: Access with a Web Viewer--Y Y Y
FileMaker Pro: Using optional pluginY Y Y Y Y

Web Publishing Engine, including optional plugin (requires SuperContainer Enterprise License)

Version 7Version 8Version 8.0v4Version 9Version 10
FileMaker Pro Server, Custom Web Publishing---Y Y
FileMaker Pro Server Advanced, Instant Web Publishing--Y*Y Y
FileMaker Pro Server Advanced, Custom Web PublishingY Y Y*Y Y


Note: * = FileMaker Server / Server Advanced 8.0v4 on OS X will not work with the optional SuperContainer Companion Plugin. It will work on Windows, or on 8.0v1 - 8.0v3

SuperContainer is fully compatible and tested to work with FileMaker 10

Configuring where SuperContainer saves files

By default, SuperContainer saves files in /Users/Shared/SuperContainer on Mac OS X and C:\Documents and Settings\SuperContainer on Windows. You can set this to any path you want, such as an external drive or network volume. If you are running in standalone mode (ie. double-clicking on SuperContainerServer.jar), that can be configured by clicking 'options'. If you are running in Tomcat or with FileMaker Server, you can configure that by editing the SuperContainer/WEB-INF/web.xml file. Change the 'macintoshFilesPath' or 'windowsFilesPath' setting to where you want the files to be stored. Be sure to configure file permissions appropriately for the folder you're storing to, especially for network volumes.

Uninstalling SuperContainer

SuperContainer saves its preferences in a file on your computer (when running in standalone mode by double-clicking the .jar file). On a mac, this is located at /Library/Preferences/com.prosc.supercontainer.plist. Remove this file to remove any stored preferences.

Troubleshooting

Image files are not resizing

In it's normal configuration, SuperContainer can generate thumbnail images of JPEGs, PNGs, GIF files, and most TIFF files. It will not generate thumbnails for PDF files, CMYK JPEG or TIFF files, RAW files, or Photoshop files. If you are running the SuperContainer Server on OS X, you can enable OS X Core Image processing to resize more file types. See the 'Enabling OS X Core Image resizing' section above for instructions on doing this.

Seeing the same document for all records

If you're having a problem with all of your records pointing to the same SuperContainer file, and you see that replacing it in one record replaces it in all other records, it's because your URL is not unique for each record. Include the primary key, or some other unique value, into the Web Viewer URL for each record, and then each record will be associated with its own separate file

How to handle "ERROR" response from plugin

If you try to call a plugin function, and you get a result of "ERROR", then call the SCGetLastError function to get a text description of what happened. It is always a good idea to have your scripts check the result of all plugin calls to see if an error occurred.

List all locations of log files

When troubleshooting a problem that you're having, we may ask you to send us a copy of your log files. There are several different log files for the different components of SuperContainer, and they are located in different places depending on whether you are running on Windows or Mac.

Providing the correct value to SCSetBaseURL

When calling SCSetBaseURL, you should include the portion of the URL up to and including the 'Files' portion, ie:
SCSetBaseURL("http://yourServer:portNumber/SuperContainer/Files")

When calling other plugin functions, just pass in the portion of the URL that comes after the 'Files' portion, ie:
SCGetContainer("Images/41")

Problems installing Tomcat

Some customers have reported seeing this error message when trying to start Tomcat, after downloading and installing it as a Windows Service:

The Apache Tomcat service terminated with service-specific error 0 (0x0)

This is not directly a SuperContainer problem, it is a problem with Tomcat. This can be caused by having Java 6 installed, instead of Java 5, if you are using Tomcat 5.5. Try downloading and installing Java 5 from www.java.com to see if that fixes the problem.

Uploading package files

SuperContainer 2: supports upload of package files.

SuperContainer 1: Some OS X files, such as rtfd documents, are not really files, they are folders which are presented as a single file icon by OS X. These files cannot be uploaded through a web browser unless they are first compressed, such as a into a .zip or .sit file.

Thumbnails Are NOT Generating

If you've customized the path were SuperContainer saves files, and lets assume that you're saving to a folder at the top level of an external drive.
Ex. save path /Volumes/External Drive/SuperContainer/
And you've only given write privileges to the SuperContainer directory you may experience problems with preview generation. The reason is that SuperContainer save the previews in the "thumbnails" directory at the same level as the directory where SuperContainer is writing the actual files. And if SuperContainer does not have write permissions it will fail in creating the "thumbnails" folder, thus failing to generate a preview. There are two solutions, first give write permissions to SuperContainer so that the following structure is possible:
/Volumes/External Drive/SuperContainer/
/Volumes/External Drive/thumbnails/
Second solution is to point SuperContainer to the sub folder of the custom directory, like so: point SuperContainer to /Volumes/External Drive/SuperContainer/Files for example, so that the "thumbnails" folder is created like so: /Volumes/External Drive/SuperContainer/thumbnails.

Out of Memory

When resizing large images, SuperContainer may run out of memory. If you're running the SuperContainerServer.jar, you can launch it from the terminal with additional arguments which increase the maximum memory used by SuperContainer:

cd /path/toSuperContainer
java -Xmx600m -jar SuperContainerServer.jar

If you're running SuperContainer in Tomcat, add this line to the top of /Library/apache-tomcat-5.5.23/bin/catalina.sh, right below the #!/bin/sh

JAVA_OPTS="-Xmx512m"

Same preview image after deleting a file and uploading new file

change Java Temporary Internet Files setting to NOT keep temporary files on the machine.

Standalone Mode on OS X Crashing

Newer versions of OS X use Java version 6 by default. Due to 64-bit issues, SuperContainer CoreImage support does not work correctly in Java 6. The workaround is to launch SuperContainerServer.jar using Java 5 instead. Use the following command to launch SuperContainer in Java 5 (substituting the correct path in the first step):

cd /path/to/SuperContainer
/System/Library/Frameworks/JavaVM.framework/Versions/1.5/Commands/java -jar SuperContainerServer.jar

Registration is gone after restart

There is a possibility of a permissions problem with the registration information that is written to Java Preferences
Mac: remove /Library/Preferences/com.prosc.supercontainer.plist file and re-register
Windows: remove the registration keys from HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Prefs/com/prosc/supercontainer/model

NAS Storage permissions problems

Use UNC notation and refer to server by IP address

FileMaker crashing, Java issues

This from Kirk Bowman's email:

  1. I had a Java install that was not listed under Add/Remove Programs. I was able to remove it with this tool which I found on the Java site.
    <http://support.microsoft.com/default.aspx?scid=kb;en-us;290301>
    <http://java.com/en/download/help/uninstall_java.xml>
  2. I had a second Java Install which was from a trial copy of Crystal Reports. This is the install Jesse noticed in the logs I sent. I removed it manually.

Once they were removed, I installed JRE 6 Update 7 (for FMS9 compatibility) and the crashes have stopped on Windows with the SuperContainer applet.

SuperContainerServer.jar crashes

This crash may happen when 64 bit Java is used, since the core image C libs are compiled for 32 bit they won't work with 64 bit Java, the solution is to use 32 bit Java.

Dude, where are my files?!

On a Mac, if you configure SuperContainer to store images in a mounted
volume, and one day it mysteriously stops seeing all the files it had
previously created, but otherwise seems to be working normal, there's a good
chance that someone tried to operate it while the volume was not mounted.

What SC does if you give it a path that doesn't exist, is it makes that path
for you. This is a useful feature in most cases, but if the volume you are
targeting is not mounted (on a Mac) SC will make a directory with the same
name as the volume in /Volumes. Then next time the volume actually is
mounted, the sym link in /Volumes gets a 1 appended to it. Fortunately this
is exceedingly simple to fix.

Mount the volume, copy any files that were uploaded into the imposter folder
to the proper location in the volume, unmount the volume, delete the folder
and remount the volume. Done.

Jeremiah Small

Web publishing

Using IFRAME with PHP / XSLT

To include SuperContainer in your Custom Web Publishing site, just use a FRAME or an IFRAME with the same URL that you would use for your FileMaker Web Viewer.

Security

Security concepts in SuperContainer

There are several options available to protect the contents of SuperContainer. Here are some possibilities:

http://yourIpAddress:portNumber/SuperContainer/Files/Client1/Images/39
http://yourIpAddress:portNumber/SuperContainer/Files/Client1/Images/40

To these:

http://yourIpAddress:portNumber/SuperContainer/Files/Client1/Images/rjx11mp/39
http://yourIpAddress:portNumber/SuperContainer/Files/Client1/Images/82crlqq/40

Now, malicious users cannot access unauthorized resources by simply incrementing the record ID.

Remember that you can combine these approaches as well - for example, using the built-in SuperContainer password with the random URL technique. Also see below for tips on SSL encryption.

Embedding username and password in SuperContainer URL

If you've specified a username and password that are required to access SuperContainer, you can include them in your Web Viewer URL like this:

http://username:password@yourServer:8080/SuperContainer/Files

Note that this behavior may not work in new versions of Microsoft Internet Explorer. See [http://support.microsoft.com/default.aspx?scid=kb;[LN];834489 this article] for more information. If you are having trouble with IE, you can:

Security issue with loading plugin in IWP

The demo file that comes with SuperContainer disables many of the plugin functions when they are being accessed through Instant Web Publishing. For an explanation, read the Security issues with Web Publishing article.

Using Apache's or IIS' SSL or Authentication settings

redirecting SuperContainer request from Apache or IIS

Redirecting SuperContainer request from Apache or IIS

redirecting SuperContainer request from Apache or IIS

Usage tips

Question about naming strategies. Address the FAQ of why everything is stored in folders

FIX! Fill this in

Editing documents and using the plugin to re-upload them

FIX! Fill this in

Single record linking to multiple web viewers (ie. multiple URL's for a single record)

For the purposes of this example assume that we have a contact record that has to files attached to it, one file is the picture of the contact and the other file is contact biography Word file.

In order to have both files linked to the same record they both need to have some common piece of information, such as a record ID. As well, they both need a differentiating attribute, file type is a good candidate.

Example URLs:
http://serverAddress:portNumber/SuperContainer/Files/recordID/FileType

http://192.168.2.1:8020/SuperContainer/Files/12/image
http://192.168.2.1:8020/SuperContainer/Files/12/document
or
http://192.168.2.1:8020/SuperContainer/Files/12/contact_image
http://192.168.2.1:8020/SuperContainer/Files/12/contact_bio

Using SuperContainer with portals

FIX! Fill this in

Using RawData URL to include images on public web site with an IMG tag.

FIX! Fill this in

Viewing multiple page PDFs within the web viewer (use RawData url)

FIX! Fill this in

Discuss umask setting in order to make files uploaded by SuperContainer readable / writeable, or else having a web.xml setting to configure that and then do it in the java code.

FIX! Fill this in

Industry-specific tips

Customizing the appearance of SuperContainer

FIX! Fill this in

Using image transparency with SuperContainer

To use image transparency with SuperContainer, such as with a .png file, you must add "?style=noapplet" to the end of your supercontainer URL. Using this mode, you will not have drag and drop capabilities, so if you need this, you can have one web viewer on one layout without this parameter for dragging and dropping, and then the other web viewer on the layout that needs transparency. Consider that SuperContainer will not automatically detect width and height in this mode, and so you will also need to add "width=x&height=y".

Example: http://yourServer/SuperContainer/Files/path/to/files?style=applet&width=250&height=275

Storing the filename of an uploaded file in a FileMaker field

If you want to store the name of an uploaded file into a FileMaker field, first ask yourself whether it's really necessary. The way that SuperContainer is designed, FileMaker does not need to know the filename in order for the user to upload, download, view, print, or delete the associated document. However, FileMaker does need the filename in order to do searches on it.

If you decide that you need to store the filename in a field, there are two approaches, which both involve the optional SuperContainer Companion Plugin.

Preview TIFF images

Run SuperContainer on a Mac in standalone mode, by executing SuperContainerServer.jar file

Using SCScanDirectory()

Set Variable [ $setBaseURL ; SCSetBaseURL() ]

Set Variable [ $files ; SCScanDirectory( pathToDir ) ]

Set Variable [ $counter ; 1 ]
Loop
Set Variable [ $upload ; SCSetContainer( folderPath ; MiddleValues ( $files ; $counter ; 1 ) ) ]
if [ $upload = "ERROR" ]
	Show Custom Dialog [ "EROR" ; SCLastError ]
End If
Set Variable [ $counter ; $counter + 1 ]
Exit Loop If [ $counter = ValueCount ( $files ) ]
End Loop

Why can't SuperContainer store multiple files in a single directory?

One of the original design goals of SuperContainer was that it would work without requiring any plugins. This led to a series of decisions:

Some of our customers do know the names of the files that they are storing, and it seems natural to them to store many files in a single folder. In this case, we make the following recommendations: