This documentation is for Live Forms 7.3 Not for you? Earlier documentation is available too.

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 99 Next »

configuration parameters are located in three places:

  1. frevvo-config.properties - This file contains properties that define global customizations that apply to the frevvo.war and the frevvo connector warfiles (Database  Connector, Box, Filesystem, SharePoint). For example, you can provide the client secret information for the Google Connector with a property in this file. You will have to create it if you are using the frevvo tomcat bundle. When used in a container that is not tomcat,  the System Admin can add properties to this file for a simpler way to override parameters in the container web.xml file. See below for more information.
  2. <frevvo-home>\tomcat\conf\Catalina\localhost\frevvo.xml - recommended file to override context-parameters in the web.xml file when using the tomcat container.
  3. WEB-INF\web.xml - this configuration file is included in the <frevvo-home>\tomcat\webapps\frevvo.war zipfile. Modifications to this file require unzipping/rezipping the frevvo.war file after the modifications have been made. See below for the instructions.

The parameters that are most commonly modified and discussed in the sections below can be added to <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml or in the the frevvo-config.properties file that you create in the <frevvo-home>\tomcat conf directory. The less commonly modified parameters are in web.xml. Any parameter in web.xml can be duplicated in frevvo.xml and the value in frevvo.xml takes precedence over the value in web.xml. If you plan to override the web.xml context parameter values and you are using the frevvo Tomcat bundle, we suggest doing so in frevvo.xml. This keeps all your modified parameters in one place and makes it easy to upgrade frevvo to newer releases.

A frevvo-config.properties file in a deployment of the frevvo tomcat bundle can be used to define the configuration parameters discussed below as properties in this file. It can also define global properties to customize frevvo connector warfiles (Database Connector, Box, SharePoint, Google, Filesystem). The configuration properties in the frevvo-config.properties file will override the frevvo.xml and web.xml files.

Modifying the frevvo.xml file.

Follow these steps to add/modify context parameters in the frevvo.xml file. If you are using tomcat, making your configuration changes here, will make it easier when you upgrade :

  1. Stop if it is running.
  2. Navigate to <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml.
  3. Open the file with a text editor.
  4. The installation tasks listed below will reference the frevvo.xml and web.xml files when appropriate. You can configure anything in frevvo.xml that you can configure in web.xml. When you add parameters to the file, use the same syntax as the ones already there. Here is an example of a parameter to control the Maximum Size of Attachments that users can upload.
<Parameter name="frevvo.attachment.maxsize" value="10485760" override="false"/> 

      5. Save the file after all your changes are made. Restart .

Modifying the web.xml file

The web.xml file is included in the <frevvo-home>\tomcat\webapps\frevvo.war. The frevvo.war must be unzipped/rezipped after modifications have been made as outlined in the steps below:

  1. Stop  if it is running. 
  2. Unpack the frevvo.war file to a temporary location of your choice: e.g. c:\tmp\frevvo-war. Change the file extension from .war to .zip if necessary.
  3. Edit c:\tmp\frevvo-war\WEB-INF\web.xml.
  4. Make the desired configuration changes - see appropriate sections of this page for information on specific parameters. Save the changes to the web.xml file. 
  5. Rezip all the files in the c:\tmp\frevvo-war directory, even the ones you did not edit — if you change directories or zip them differently, Live Forms may not load correctly:

    This is the correct structure for the frevvo.war zipfile.

  6. Make sure you create the zipfile with the directory structure as shown in the image above. It is an easy mistake to include the containing directory in the zipfile. If you do this, Live Forms may not load correctly. Zip will often give your zipfile a .zip extension. Make sure you change this to a .war extension. 

  7. Copy the updated frevvo.war file to <frevvo-home>tomcat\webapps.
  8. Restart your  server.

On this page:

frevvo Properties File

You can configure your  deployment  in the frevvo-config.properties, frevvo.xml or web.xml files.  Parameters in the frevvo-config.properties will override the frevvo.xml file which will override the web.xml file. 

The frevvo-config.properties is a standard java properties file. All of the context-parameters currently found in web.xml or any valid context parameter can be configured in this file.

frevvo Tomcat Bundle

In the frevvo tomcat bundle, the frevvo-config.properties file should be created in the <frevvo-home>\tomcat\conf directory. The path to the frevvo-config.properties file is specified in the <frevvo-home>\tomcat\bin\sentenv.bat.sh files

set CATALINA_OPTS=%CATALINA_OPTS% -Dspring.config.location="file:///%CATALINA_HOME%/conf/,file:///%CATALINA_HOME%/conf/frevvo-config.properties"

Here is an example of a frevvo-config.properties file that provides the client id and secret for the Box connector, the URL and the metadata prefix for the Filesystem connector, a property to turn on/off the Insight Server and a property to turn on DEBUG level logging for the frevvo.log and any logfiles for frevvo connectors. The values in this file will override the default parameters in the <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml file or the web.xml included in the frevvo war.

frevvo.box.connector.client.id=bttkldgy9r5td0kdu57v0h6h2gotjf03
frevvo.box.connector.client.secret=EM08T1IjiMFuyCP5OJWm5QPyTz0qcL4A 
frevvo.filesystem.connector.url=http(s)://<your server>:port/filesystem 
frevvo.filesystem.connector.metadata.prefix=md 
insight.enabled=true insight.service.url=http(s)://<your server>:port/insight 
frevvo.sharepoint.connector.url=http(s)://<your server>:port/sharepoint 
logging.level.=DEBUG

Refer to the Tomcat Logfiles topic for more information about using the properties in this file to turn on DEBUG level logging for the frevvo log and the logfiles for any frevvo connectors you might be running.

Containers ,other than tomcat, may not have a mechanism like the frevvo.xml file where configuration changes can be made without having to manually expand files, change the web.xml and re-war it. Creating the frevvo-config.properties file and making the changes there provide a simple way for the System Administrator to mange configuration issues. For example, system administrators might prefer to distribute only one frevvo-config.properties file rather than deal with many different ones for a deployment  across multiple nodes and clusters.

Let's, say you are using the Weblogic Server and you need to set the frevvo.link.default.url to http://mycompany.com and move the Data Sources panel to the top of the designer. 

  1. Create the frevvo-config.properties file. Refer to frevvo-config.properties location for information about where the file should reside. The context-parameters follow a simple context-parameter=value syntax (shown below) in the frevvo-config.properties file:

frevvo.link.default.url=http://frevvo.com/ 
frevvo.data.sources.top=true

Updating the frevvo-config.properties requires server re-start.

frevvo-config.properties location

There are 3 choices for the frevvo-config.properties file location. You can:
  1. Expand the war, edit/create the /WEB-INF/frevvo-config.properties, re-zip the war. This is essentially the same as editing the web.xml directly. 
  2. Create the file in the current working directory of the container you are using.  will pick it up by default.
  3. Place the frevvo-config.properties somewhere in the file system (outside the frevvo.war) and then add  -Dspring.config.location=file:Drive:/path to frevvo-config.properties in the java executable call. For example, add it to <frevvo-home>\tomcat\bin\setenv.bat, setenv.sh or service.bat if you are using the tomcat container. Here is an example of the <frevvo-home>\tomcat\bin\setenv.bat file with the added parameter:

set CATALINA_OPTS=%CATALINA_OPTS% -Dspring.config.location="file:///%CATALINA_HOME%/conf/,file:///%CATALINA_HOME%/conf/frevvo-config.properties"

The value of frevvo.config can be a full path (e.g. Drive:/pathtomyfrevvo-config.properties), a path in the war (e.g. /WEB-INF/myfrevvo-config.properties) or a url (e.g. http://config/cluster1/myfrevvo-config.properties). Be sure to include the frevvo-config.properties file name in the path statement.      

Changing the admin password

  • Login to your  server as user "admin", password "admin".
  • On the page that is displayed, click the "Manage Tenants" link.
  • Click the icon to manage tenant named "d (Default tenant)"
  • Click "Manage Users"
  • Click the  icon for the admin user. This displays a profile form.
  • Change the password as desired and submit the form.

Email configuration

The forgot password functionality and form submissions sent via email both require proper configuration of ' smtp component.

  1. Edit <frevvo-home>\tomcat\conf\Catalina\localhost\frevvo.xml
  2. Configure the Mail mail/frevvoDS Resource

Here is a sample mail/frevvoDS resource configuration for Apache Tomcat 6.x:

<Resource 
            auth="Container"
            factory="org.apache.naming.factory.MailSessionFactory"
            type="javax.mail.Session"
            name="mail/frevvoDS" 
            mail.smtp.host="{your.smtp.host}"
            mail.smtp.port="{your.smtp.port}"
            mail.smtp.auth="true"
            mail.smtp.starttls.enable="true"
            mail.smtp.user="{your.smtp.user}"
            mail.smtp.password="{your.smtp.password}"
            mail.debug="false"/>

The frevvo.xml file contains a few other parameters that effect emails sent from :

<Parameter name="frevvo.mail.from.email" value="" override="false"/>
<Parameter name="frevvo.mail.debug" value="false" override="false"/>
<Parameter name="frevvo.mail.bounce.email" value="" override="false"/>

Although there is a parameter to set up a from email address, it is recommended that you use the frevvo UI to set up the from email and display name. Here's how it works:

  1. If you enter an email address in the frevvo.xml parameter and leave the Email address fields on the Edit Tenant screen blank - Doc action emails will use the frevvo.xml from email value and task notification will use tenant admin's email address.
  2. If you enter a value into the Email address fields on the Edit tenant page - Doc action and task notification emails will use this value. The value in the frevvo.xml file is overridden. 

If you want to use the frevvo.xml value for Doc action emails, leave the tenant from email address blank. This would mean flow task notifications will use tenant admin's email address. 

Debug sends more debugging info to the tomcat log files. And bounce.email sets an address to receive emails that cannot be delivered to the to email recipients. 

If your email server does not use TLS connection security, change mail.smtp.starttls.enable from true to false.

 mail.smtp.starttls.enable="false"

If you are using tomcat, emails sent are tracked in the <frevvo-home>\tomcat\logs\frevvo.log file when the INFO log level is enabled. Look for an entry like "Sending email to <email address> with subject <the subject of your email>. If an error occurs when sending, the message "Could not send email to <email address> with subject <the subject of your email> including the actual exception that caused the problem will be logged.

If the SMTP server requires traffic to be sent over SSL, add the following properties in the mail resource configuration, and then specify values for them:

mail.smtp.socketFactory.port="465"
mail.smtp.socketFactory.class="javax.net.ssl.SSLSocketFactory"
mail.smtp.socketFactory.fallback="false"

Default the Tenant Login

 is a multi-tenant application. See the administration section on Manage Tenants. However, it is possible that all you need is a single tenant. If this is your case, it simplifies the  server login if you default the @<tenantname> so the user only needs to enter their username to login. Customers who default the tenant login normally would also customize the placeholder on the login screen. Please read that topic for details.

There are two files where the changes to default the tenant login to your tenant name can be made: web.xml or the frevvo.xml. The recommended approach is to add the configuration parameters to the frevvo.xm;l file as it keeps all your modified parameters in one place and makes it easy to upgrade to newer releases.  Since the file is outside the frevvo war, you avoid the unzip/rezip of the of the frevvo.war that is needed if you make the changes in web.xml. Examples containing the context parameters for both files are shown below.

To make the changes in <frevvo-home>\tomcat\webapps\frevvo\WEB-INF\web.xml file, follow these steps. At step4, uncomment the frevvo.default.login.tenent.id parameter and set the param-value to the name of your one tenant.

Here is how the parameter appears after editing for a tenant named ssotest:

<context-param>
        <param-name>frevvo.default.login.tenant.id</param-name>
        <param-value>ssotest</param-value>
        <description>Default Tenant</description>
</context-param>

Restart your  server and the next time you login you will only need to enter your username and password.

These config parameters can also be configured in the <frevvo-home>\tomcat\conf\Catalina\localhost\frevvo.xml instead of web.xml. Add this parameter to the frevvo.xml file (recommended). Be sure to change the "your_tenant_id" to the name of your tenant 

<Parameter name="frevvo.default.login.tenant.id" value="your_tenant_id" override="false"/>

In-house customers, logging in as the ' server superuser admin, must still login with username admin@d.

Customizing the placeholder on the login screen

You may want to customize the user@tenant placeholder on the login screen to reflect the name of your tenant to minimize confusion for your users or to remove the @tenant from the placeholder if you have defaulted the tenant login. 


In-house customers can change the default placeholder on the login screen by modifying the values for the frevvo.login.username.placeholder context parameter. These context parameters are found in the web.xml file located in the frevvo.war. If you prefer not to unzip the war file you can add them to the frevvo.xml file instead. Making the changes here makes it easier when you are upgrading your version.

Follow these steps to change the placeholder value in the frevvo.xml file:

  1. Stop Live Forms if it is running.
  2. Navigate to <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml.
  3. Open the file with a text editor.
  4. Add the parameter(s) shown below with your modified values in between the double quotes to the frevvo war settings section then save the file.

    <Parameter name="frevvo.login.username.placeholder" value="user@mycompany" override="false"/>
  5. Restart .

You can unzip the <frevvo-home>\tomcat\webapps\frevvo.war file and add the parameters to web.xml file instead of making the changes in the frevvo.xml file.

  • Follow the steps listed above to unzip the <frevvo-home>\tomcat\webapps\frevvo.war.
  • Locate and uncomment the frevvo,login,username,placeholder context parameter in the file.
  • Edit it with desired placeholder at step 4.
  •  Complete the remainder of the steps listed above.

<context-param>
        <description>Value displayed as a place holder in the username control on login pages</description>
	    <param-name>frevvo.login.username.placeholder</param-name>
	    <param-value>user@frevvo.com</param-value>
</context-param>

Insight Data Batch Job Configuration Parameters

If you are using the frevvo tomcat bundle, the Insight Data Batch job is already configured. You will notice the insight.war web app located in the <frevvo-home>\tomcat\webapps directory.  Insight.war is a web app that contains a batch process that extracts all the latest submissions from  and creates Solr Documents for them. The indexed submission data from the batch is stored in <frevvo-home>\data\solr directory and is used by the Reports feature. The batch job is automatically run when you upgrade but it can also be run manually if necessary.

If it is determined that the Insight Data batch job needs to be run

  • Cloud customers must contact frevvo to request the batch process for your tenant.
  • In-house customers can use the Manage Insights Data function to manually run the batch process.

Configuration parameters for Insight are located in two files:

  1. <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml
  2. <frevvo-home>\tomcat\conf\localhost\catalina\insight.xml

The parameters in the frevvo.xml file are:

<!-- Insight settings --> 
	<Parameter name="insight.enabled" value="true" override="false"/>
    <Parameter name="insight.service.url" value="http://localhost:8082/insight" override="false"/>
  • The "Insight.enabled" parameter with a value of true enables Insight Data batch job by default.

    The Insight Data batch job MUST be enabled for submissions, the Task List and Report features to work. Do NOT disable it if you are using any of these features.

  • The "Insight.service.url" parameter specifies the location of the insight.war file. In the unlikely scenario, where the insight.war file is not located ion the same server as , the <your server:<port>> in this parameter can be changed to point to the location of the insight.war.

The parameters in the <frevvo-home>\tomcat\conf\catalina\localhost\insights.xml file are:

<!-- 
        insight war settings 
    -->    
    <Parameter name="index.submission.batch.size" value="100" override="false"/>
    <Parameter name="index.submission.thread.pool.size" value="10" override="false"/>
    <!--  
    <Parameter name="index.submission.start.date" value="" override="false"/>
    -->

During the Insight batch process, submission rows are read into memory. 

In a multi-tenant installation, the batch process uses one thread per tenant. It is also possible that you may not be interested in data before a certain date.

  • The "index.submission.batch.size parameter" specifies the number of rows read into memory during the batch process. The default value is 100.
  • The "index.submission.thread.pool.size" parameter specifies the maximum number of threads.
  • The "index.submission.start.date" parameter can be set to a date in the YYYY-MM-DD format. The batch will then exclude any submissions before this date.

Submission View configuration

There are some configuration parameters available to in-house customers that affect the Submission view.

Turn Off the Legacy Submission View

Add this parameter with a value of false to the frevvo war settings section of the <frevvo-home>\tomcat\conf\Catalina\localhost\frevvo.xml file to turn off the Legacy Submission view in the designers and when users access submissions using Shared Items. If the Legacy view is disabled, the Saved Fields tab in the Setup Searchable fields wizard is hidden in the designers and the Export of submissions to Excel feature is no longer available. The default value is false.

<Parameter name="frevvo.deprecated.submissions.view.enabled" value="false" override="false"/> 

Forms Home Page when the Legacy Submissions View is turned off.

If the Legacy view is disabled, the Saved Fields tab in the Setup Searchable fields wizard is hidden in the designers.

Set a Maximum Number for Searchable Fields

Add this parameter with the value of the maximum number of searchable fields you want to allow per form or flow to the frevvo war settings section of the <frevvo-home>\tomcat\conf\Catalina\localhost\frevvo.xml file. The default value is 20.

<Parameter name="frevvo.max.searchable.fields" value="20" override="false"/> 

In the Searchable fields wizard in the forms editor, designers see a message when an attempt is made to add a searchable field that would exceed this max number.

The message appears on the lower right of the screen and disappears after a short time. Any fields in excess of the max configured will not be allowed.

Show/Hide the Delete Submissions Button

Add this parameter with a value of false to the frevvo war settings section of the <frevvo-home>\tomcat\conf\Catalina\localhost\frevvo.xml file to hide the Delete button on the Submission Table. If configured, the Delete button in the Legacy Submission view is also hidden. The default value is true.

<Parameter name="frevvo.submission.delete.buttons" value="false" override="false"/> 



Add this parameter with a value of false to the frevvo war settings section of the <frevvo-home>\tomcat\conf\Catalina\localhost\frevvo.xml file to disable the Submission Edit link in the on the submission details popup everywhere it is displayed. If configured, the link is disabled for the Legacy Submission view as weel. The default value is true.

<Parameter name="frevvo.submission.edit.link" value="false" override="false"/> 

Administration of reCAPTCHA Keys

provides a default reCAPTCHA key. No other configuration steps are required for on-premise customers that choose to use the default key. This default reCAPTCHA key is:

  • NOT configured to a particular host/domain server
  • NOT configured for Google to perform any host/domain name checking on the challenge step. However,  will perform a host/domain verification on the verification step so that any attempts at site key spoofing are blocked.
  • Considered secure.

In-house customers who want the maximum possible protection from form spamming, will need to create their own reCAPTCHA key and configure to their domain (example.com).

Follow these steps:

  1. You will need a google account.
  2. Follow the instructions on this Google site to register your domain and create the site and secret keys.
    1. You can also choose "Domain Name Validation" on this key to have Google check the domain on the challenge step.
  3. Copy the site and secret keys from the Registration page for your site
  4. Add the frevvo.reCAPTCHA.sitekey and the frevvo.reCAPTCHA.secretkey parameters to the <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml file.

    <Parameter name="frevvo.recaptcha.sitekey" value="<your custom site key here>" override="false"/>
    <Parameter name="frevvo.recaptcha.secretkey" value="<your custom secret key here>" override="false"/>
    <Parameter name="frevvo.recaptcha.hostcheck" value="true or false" override="false"/>

The frevvo.recaptcha.hostcheck parameter controls the domain/host verification on the verification step that is done by . The values for this parameter can be set to true or false. If you use a custom key with Domain Name Validation configured, add this parameter to the frevvo.xml file with a value of false. Otherwise, add it to the frevvo.xml with a value of true

Proxy Server configuration

If your company uses a proxy server for internet traffic please see proxy configuration. This is often the cause of the following error message:

  • Unable to contact license server
  • Unable to renew license. Your license will expire in <n> day(s)

External URLs

Sometimes running  behind a proxy server can cause unintended changes to the form server's external URLs. The following configuration parameters address this issue. These parameters can be added to frevvo war settings section of the <frevvo-home>\tomcat\conf\Catalina\localhost\frevvo.xml file. 

  • frevvo.forms.server.external.url - If set, all share dialogs for forms and flows will use this as the external URL. Use the syntax shown in the example. change the <myexternalhost>and <port> to your external server name and the port that you are using for  on this server. 

    <Parameter name="frevvo.forms.server.external.url" value="http://<myexternalhost>:<port>" override="false"/>
  • frevvo.internal.baseurl - If set, all URLs used internally by the form server will use this base url. This may be needed when using frevvo.forms.server.external.url if that external url is not also accessible from the form server machine. Use the syntax shown in the example. change the value "http://localhost:8082"  to the server name and port of your  server.

    <Parameter name="frevvo.internal.baseurl" value="http://localhost:8082" override="false"/>

Default Port

By default the  tomcat bundle is configured to bind to port 8082. You can change the port by:

  1. Editing the  <frevvo-home>/tomcat/conf/server.xml file.
  2. Search for this line in the file:

    <Connector port="8082" protocol="org.apache.coyote.http11.Http11NioProtocol"
     
  3. Change the Connector port

Browser Support

 does not support BETA versions of browsers and there is often a delay so that we can test newly released browser versions before they are supported. In previous releases,  was configured to use a list of supported browsers. An error message and a link to override the error would display if the system was accessed using an unsupported browser. Supported Browsers for Version 5.3 can be found here but by default this version will not warn users if they access the system using an uncertified browser. If you want your users to get a warning, you can configure a list of allowed browsers using the the frevvo.supported.browsers parameter in the web.xml or frevvo.xml (recommended) files if you are using  in-house. 

To do this, you will have to edit the file: <frevvo-home>\tomcat\webapps\frevvo\WEB-INF\web.xml. If you choose to make this change in web.xml, you will have to extract it from the <frevvo-home>\tomcat\webapps\frevvo.war zipfile. The steps to do this are explained here

Once you have unzipped the frevvo.war file, please find the following context parameter: In version 5.3, this parameter is commented out. Be sure to uncomment the parameter using the <!-- --> comment characters. Here is what it looks like initially:

<context-param>   
   <param-name>frevvo.supported.browsers</param-name>   
   <param-value>*</param-value>   
   <description>Supported browsers - array of allowed user agents</description>  
</context-param>

Add the user agent for the browsers you want to support '''in lower case only'''. For example, to allow Firefox 5 users to access the system, add 'firefox/5' (without the quotes) to the param-value. If you want to allow all versions of Firefox, add the string 'firefox' (without the quotes) to the param-value. It will match all versions of the Firefox browser. Microsoft's IE9 browser update 9.0.8112.16421 Update versions 9.0.3(Kb2586448) will result in an unsupported browser exception even with msie9.0 in the web.xml file. The solution is to add the string 'msie'  without any version number to the support browser list. Internet Explorer 11 requires the use agent identifier , trident/7. 

<context-param>
   <param-name>frevvo.supported.browsers</param-name>
   <param-value>firefox/2,firefox/3,firefox/4,msie 6.0,msie 7.0,msie 8.0,msie 9.0,trident/7,applewebkit,camino,httpclient,zend_http_client,formsapi</param-value> 
   <description>Supported browsers - array of allowed user agents</description> 
</context-param>

Save the file. Rezip the frevvo.war file as explained here. We recommend restarting the Server if possible. Once the server is restarted, Firefox 5 will now be a supported browser in your deployment along with all the others listed in the example.

You can also configure this parameter in <frevvo-home>\tomcat\conf\Catalina\localhost\frevvo.xml - which is the recommended approach when using the tomcat container. Here is what the parameter looks like in the frevvo.xml file. In this example, only the Internet Explorer browser is allowed. Using any other browser will result in the warning message to the user.

<Parameter name="frevvo.supported.browsers" value="msie, trident/7" override="false"/>

Tomcat Manager

The tomcat manager is accessible in the bundle at  http://<server-name>:8082/manager/html. The default Tomcat Manager user name/password are preset to frevvo/frevvo. If you wish to change the password, you may do so by editing the file <frevvo-home>\tomcat\conf\tomcat-users.xml.

Tomcat SSL

 can be configured to handle HTTPS connections from users. The  tomcat bundle you downloaded from www.frevvo.com is pre-configured with a self-signed certificate for development and testing. This self-signed certificate enables  to handle HTTPS connections out of the box. However before deploying your forms to production you may want to replace this with your own certificate.

The HTTPS connector on port 8443 is enabled by default. If you want to disable it, edit the <frevvo-home>/tomcat/conf/server.xml and comment out the HTTPS connector:

<!-- HTTPS Connector
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true"
        maxThreads="150" scheme="https" secure="true" clientAuth="false"
        sslProtocol="TLS" keystoreFile="${catalina.home}/conf/keystore" keystorePass="password"
        connectionTimeout="20000" maxHttpHeaderSize="32768"
        useBodyEncodingForURI="true" />
-->

Additional info on how to use SSL on tomcat can be found on the Apache/Tomcat website. Also refer to this article: How to solve javax.net ssl. SSLHandshakeException?

Currently you must not disable 's http port. In a future release this will be allowed. Disabling ' http port will cause your form server to malfunction as  requires this port. For most cases it is sufficient to share the https version of your form/flow's Url and leave http open. However, if you want to force all form usage to be over https and feel it is not enough to simply share the https form Urls (as a user can switch to http as long as that port is open), we recommend that you deploy  behind an Apache or IIS server. Close the http port on Apache or IIS but leave tomcat's http port open so that  can POST back to itself when needed over http but no one outside can access it.

External Access -> Proxy (Apache/IIS...) -> frevvo (tomcat)

Tomcat Logfiles

By default, the  server writes useful logging information to a daily logging file located here: <frevvo-home>/tomcat/logs. You will see the logfiles listed below in <frevvo-home>/tomcat/logs. The current date appends to the logfile name for all the files:

  • catalina.YYYY-MM-DD.log  - this log captures the stderr and stdout of the tomcat process including startup/shutdown messages. This is usually a small file.
  • frevvo_YYYY-MM-DD.log - all  messages are logged to this file. A new log with the current date appended to it is created daily.
  • localhost.YYYY.MM.DD.log - this tomcat logfile should be empty.
  • localhost_access_log.YYYY - MM - DD.txt - is used to log all HTTP accesses to Tomcat. It is enabled by the following entry in <frevvo-home>/tomcat/conf/server.xml. Comment out the statement below to turn off logging to this file if it is not needed.
  • insight.log - this file contains logging from the Insight service. You will see entries from running the Insight Batch Job in this file.
  • host-manager.MM-DD-YYYY.log - this logfile is part of the tomcat distribution and is empty by default. It is a log file for the host-manager web application that is used to manage virtual hosts in tomcat. The host manager web-app is typically not needed because  is preconfigured. Messages are written to this log only if the host-manager web application is being used.
  • manager.MM-DD.YYYY.log - this logfile is part of the tomcat distribution and is empty by default - this is the log file for the tomcat manager web application which is used to check the status of web apps, memory usage etc. Messages are written to this log only if the manager web app is being used.

There will be three additional logfiles when running Tomcat as a Windows service:

  • frevvoforms - stderr.YYYYMMDD and frevvoforms - stdout.YYYYMMDD for standard error messages and standard output stream, respectively. This is the default Tomcat behavior.
  • commons-daemon.YYYY-MM-DD.log for Windows Service errors

Debugging log file levels

By default  log levels are set to INFO.  Loglevels are changed by adding properties to the <frevvo-home>\tomcat\conf\frevvo-config.properties file. Changing the loglevel to DEBUG provides more information when troubleshootng. You can change the loglevel for:

If you want to delete the logs, stop  then delete the logfiles. They will be recreated on start up.   

Changing the logging level for the Live Forms log

A common troubleshooting technique is to change the loglevel to DEBUG to collect more information

Follow these steps:

  1. Create/Edit the frevvo-config.properties file in <frevvo-home>\tomcat\conf
  2. Add the frevvo.logging.level=DEBUG property to the file. NOTE: the syntax of the property is frevvo(dot)logging(dot)level=DEBUG
  3. Save the file
  4. Restart .

frevvo-config.properties file
frevvo.logging.level=DEBUG

Changing the logging level for the Live Forms AND Connector logs

Add the logging.level. property with a value of DEBUG to the <frevvo-home>\tomcat\conf\frevvo-config.properties file to change the loglevel for the frevvo.log. the insight log(s) AND for the logs for any connectors (Database, Google, Filesystem, Box and SharePoint) you are running.

To configure debug level logging for the frevvo.log and any connector logfiles:

  1. Create/Edit the frevvo-config.properties file in <frevvo-home>\tomcat\conf
  2. Add the logging.level.=DEBUG property to the file. NOTE: the syntax of the property is logging(dot)level(dot)=DEBUG
  3. Save the file
  4. Restart .

frevvo-config.properties - This property turns on DEBUG level logging for the frevvo.log and any connector logs
logging.level.=DEBUG

Changing the logging level for a Specific Connector log

The Database, Google, Filesystem, Box and SharePoint connectors each generate their own logs in the <frevvo-home>\tomcat\logs directory of the frevvo tomcat bundle. The log files are named <connector name>.YYYY-MM-DD. The connector logs are automatically rotated daily. Generating separate logfiles make it much easier to search for errors when troubleshooting connector issues. 

 

The connectors are designed to use the frevvo-config.properties file. The log for the Image Silo connector is the only exception.

To configure debug level logging for just one connector log:

  1. Create/Edit a frevvo-config.properties file in <frevvo-home>\tomcat\conf
  2. Add the logging.level.com.frevvo.connectors.<connector name>=DEBUG property to the file. NOTE: the syntax of the property is logging(dot)level(dot)com(dot)frevvo(dot)connectors(dot)<connector name>=DEBUG
  3. Save the file

The image shows examples of the properties to add to the frevvo-config.properties file to turn on DEBUG level logging for specific connector(s) (Database, Google, Box, Filesystem, SharePoint) logfiles. Add the appropriate property to turn on DEBUG level logging for a specific connector logfile.

logging.level.com.frevvo.connector.database=DEBUG
logging.level.com.frevvo.connector.box=DEBUG
logging.level.com.frevvo.connector.file=DEBUG
logging.level.com.frevvo.connector.google=DEBUG
logging.level.com.frevvo.connector.sp=DEBUG

The Standalone version of the Database Connector creates the database log along with some other logs in \database-home>\database-connector-2.5.x\logs directory. Add the logging.level.com.frevvo.connectors.database=DEBUG property to the <db-home>\C:\database-connector-2.5.x\config\dbconnector.properties file to turn on DEBUG level logging.

Creating logfiles in JSON format

If you want to create the connector logs in JSON format, add the spring.profiles.include=logging-json property to the frevvo-config.properties file. This property creates json logfiles for all of the frevvo spring boot based connectors - Database, Box, Filesystem, Google and SharePoint. Support for the frevvo.log file will be added in a future release. Creating the logfiles in the same format will make searching across all logs easier.

frevvo-config.properties - This property will create logs in JSON format for all connector logs
spring.profiles.include=logging-json 

Loglevels

Loglevels are : TRACE, DEBUG, INFO, WARN, ERROR, OFF. ALL.  They are case -sensitive so be sure to type them in upper case.  The logging level is cumulative as shown below. Refer to this website for a description of the loglevels and some guidelines for using them.

  • OFF = turns all logging off
  • ERROR = ERROR 
  • WARN = WARN + ERROR,  
  • INFO = INFO + WARN + ERROR,
  • DEBUG = DEBUG + INFO + WARN + ERROR,  
  • TRACE = DEBUG + INFO + WARN +  ERROR
  • ALL= turns all logging on

Configuring the logging level for catalina.log, localhost.log, host-manager.log, manager.log and local_access.log is done in <frevvo-home>/tomcat/conf/logging.properties

Using Debug Mode to see logged in users

If the log level is set to DEBUG, then you will see user login and logout information in the <frevvo-home>\frevvo\tomcat\logs\frevvo.log file. Examples of log entries are shown below. Search for “Server num users” in the log file to quickly see the number of currently logged in/out users. Note the first log entry below shows the number of users currently logged in. Showing the list of currently logged in users via the UI to the  superuser and tenant admins is planned for a future release.

User login:
10:01:40.813 |-DEBUG [http-nio-8082-exec-1] [       c.f.u.UsersMonitor] - Tenant (qa): login: num users: 1. Server num users: 1
--Number of currently logged in users
10:01:40.816 |-INFO  [http-nio-8082-exec-1] [           c.f.b.d.DBUtil] - Getting User info for customer: fd tenant: qa
---User who is logging in

User Logout:
10:02:03.287 |-DEBUG [http-nio-8082-exec-5] [       c.f.u.UsersMonitor] - Tenant (qa): logout: num users: 0. Server num users: 0
10:02:03.287 |-DEBUG [http-nio-8082-exec-5] [f.f.w.SessionFormsListener] - Forcing a Subject qa@fd logout on session expiration ... 
---User who is logging out

Log Messages in the Live Forms log

The <frevvo-home>\tomcat\lib\logback.xml file in the tomcat bundle is embedded in the frevvo.war. It contains a logback pattern that will log the tenant.idsubject.idcorrelation.idsession.idowner.idapplication.id, and type.id (formtype or flowtype) for all log messages.The logback.xml file is in the <frevvo-home>\tomcat\webapps\frevvo.war file and should not be changed. The pattern in the logback.xml file in the frevvo.war is shown below.

<pattern><![CDATA[%d{HH:mm:ss.SSS} |-%-5level [%20.21thread{5}] [%25.26logger{5}] [%X{tenant.id} %X{subject.id}] [%X{correlation.id} %X{session.id}] [%X{owner.id} %X{application.id} %X{type.id}] - %msg%n]]></pattern>

This additional information can be extremely helpful when troubleshooting errors particularly in the frevvo cloud environment. The example shows an INFO message that specifies the tenant, mycompany and the userid, max, associated with the entry:

22:05:12.471 |-INFO  [http-nio-8082-exec-1] [   c.f.u.HttpClientHolder] [mycompany max] [f7ec10f5-bd0e-4a3d-b848-9192e646a62d 61E88E450BC436C4087C136DB94F0DC2] [  ] - Installing HTTPClient credential for user maryann and scope BASIC 'frevvo Trac'@dev.frevvo.com

The logback.xml file also controls logging for frevvo connector war files added to tomcat/webapps directory. The values in logback.xml can be overridden with properties defined in the frevvo-config.properties property file discussed below.

See the Connector Logging topic for information about the mechanism used for frevvo connector logfiles.

JMX Monitoring Enabled

JMX (Java Management Extensions) is enabled by default in the tomcat bundle.The following JMX options were added to the <frevvo-home>\tomcat\bin\setenv.bat,sh files. The <server>:<port> values default to localhost:9010.

Dcom.sun.management.jmxremote.local.only=false 
Dcom.sun.management.jmxremote.authenticate=false 
Dcom.sun.management.jmxremote.port=9010 
Dcom.sun.management.jmxremote.rmi.port=9010 
Dcom.sun.management.jmxremote.ssl=false 
Djava.rmi.server.hostname=localhost

Information can be accessed with jConsole, or a similar tool.

Session Timeout

's default web browser session timeout is 30 minutes. If a user is logged into the  server to design forms, or to view their task list, or is using a  form and filling in values but has not yet submitted the form, the session will expire after 480 minutes of inactivity. When the session expires the designer will have to re-login to  to continue designing forms and form users will have to get a new instance of the form and re-enter the values.

If the maximum number of concurrent users are logged in simultaneously, and any of them are idle for more than 480 minutes, the next person who tries to log in will be able to do so successfully.

The session timeout can be changed by editing <frevvo-home>\frevvo\tomcat\webapps\frevvo\WEB-INF\web.xml. The session timeout setting unit is minutes. For example, to change from an 480 minutes (8 hr) session timeout to a 1 hour timeout change 480 to 60.

<session-config>
    <session-timeout>480</session-timeout>
</session-config>

The default  server session timeout can be overridden for each tenant. See the Edit Tenant topic for more information.

Tomcat session-config parameters can not be overridden in frevvo.xml.

When a session times out, for example when a person is using a form and then pauses for longer than the configured <session-timeout>, they will see the following error the next time they enter a value into the form.

The following screen displays when a user tries to submit a form from a timed out session.

Editing Submissions

Designer users can view/edit submissions by clicking the edit link on the submissions panel. Non designer users can view/edit submissions by clicking on the Shared Items tab if they have been granted permission to do so by the designer via the Access Control feature. The frevvo.submission.edit .link parameter must be set to the default value of true, for the edit link to be visible to any  user. To disable the edit link on the submission panel, change the default value of true to false for the frevvo.submissions.edit.link configuration parameter in <frevvo-home>/WEB-INF/web.xml file. The web.xml file must be unzipped from the frevvo.war before it can be edited. Follow the instructions above to unzip, modify and rezip the war file.

<context-param>  
    <param-name>frevvo.submission.edit.link</param-name> 
    <param-value>false</param-value> 
    <description>Show a link to edit the submission.</description> 
</context-param>

You can add the frevvo.submission.edit.link configuration property to the <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml file instead of the web.xml file as discussed above. Here is an example that will disable submission editing when added to the frevvo war settings section of frevvo.xml:

<Parameter name="frevvo.submission.edit.link" value="false" override="false"/>

When the frevvo.submission.edit.link parameter has a value of false, the edit link is not visible on form submission panels.

Live Forms as a windows service

You will have to edit frevvo/tomcat/bin/service.bat line 123 to increase the Java Heap and Permgen spaces. Here is an example of the line you need to edit in that file:

"%EXECUTABLE%" //US//%SERVICE_NAME% ++JvmOptions "-XX:MaxPermSize=128m 
-Djava.io.tmpdir=%CATALINA_BASE%\temp;
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;
-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties" 
--JvmMs 128 --JvmMx 512

See the documentation on Tomcat Windows Service for more details.

TIFF Image Generator

Several  connector wizards, such as the Email and the PaperVision/ImageSilo wizards, allow you to select the form image attached to submission emails and stored into PaperVision/ImageSilo to be in TIFF image format. If the TIFF option doesn't appear in the wizard's Send Snapshot dropdown, then you have not yet installed the necessary TIFF image generator software.

  1. Download the JavaTM Advanced Imaging Image I/O Tools installer for your machine platform here. Your machine must be running the Java Runtime Environment. For example on a windows platform:
    1. Download and run jai_imageio-1_1-lib-windows-i586-jre.exe

  2. Execute the installer on your machine. This automatically copies the libraries necessary to create TIFF images into your java installation directory.
  3. Restart the  server.

You will now see the TIFF option in Send Snapshot dropdown. Form additional installation details and for various hardware platforms, please refer to the Java Image I/O Installation Guide.

Installing this generator on a system running an installed JDK, with the JDK_Home environment variable set, will not work.

Signature Date/Time

Digital Signatures require no configuration. However you can control the format of the date stamp that appears when forms are signed. These two parameters in <frevvo-home>\tomcat\webapps\frevvo\WEB-INF\web.xml are for signature configuration. The first you should never need to change.

<context-param>
  <param-name>frevvo.signature.class</param-name>
  <param-value>com.frevvo.signature.DefaultSignature</param-value>
  <description>Digital signature class name</description>
</context-param>
<context-param>
  <param-name>frevvo.signature.date.format</param-name>
  <param-value>d MMM yyyy, z</param-value>
  <description>Default date format for display</description>
</context-param>

Timezones

 concanocolizes all form submission data to UTC. In other words no matter which timezone you are in when you submit a form with a date, date/time, or time control, the form server will convert and store those values in UTC. If your form submission data is not correctly converted and stored in UTC then you likely have to update the timezones in your installed JRE/JDK. Oracle provides a timezone update tool. Run the TZUpdater tool with the following command: java -jar tzupdate.jar -u

See Oracle's Timezone Updater Tool for full details. 

Using Live Forms with reverse-proxies/SSL-accelerators

If your goal is to use   behind a reverse-proxy/load-balancer/SSL-accelerator you need to modify configuration settings to /tomcat to make sure  generate correct external urls.

When using a reverse-proxy, the external host, IP and/or port visible to browsers may be different than the host, IP and/or port seen by Tomcat. This causes a problem since  will generate urls in pages and forms that are either completely invalid, which is an easy case to spot since forms will not render at all, or valid by bypassing the reverse-proxy altogether, which are harder to identify except for side effects such as forms not resizing properly, or blocked by browser security restrictions.

no longer supports the web.xml parameters for frevvo.xforwarded.protocol.header, frevvo.xforwarded.host.header, and frevvo.xforwarded.port.headers. The general recommendation is to rely on the Servlet Container for handling dynamic proxies. A better approach is to use tomcat's RemoteIp Valve instead.  Please see this documentation on the Apache Tomcat website for information about the RemotIp valve functionality. This tomcat valve has been incorporated nto our tomcat bundle.

 <Valve className="org.apache.catalina.valves.RemoteIpValve"
            internalProxies=".*" 
            remoteIpHeader="x-forwarded-for" 
            proxiesHeader ="x-forwarded-by" 
            protocolHeader="x-forwarded-proto" />

Moving users to a different tenant

This section describes how to move a user to a different tenant. In the steps below, we will move the user john from a source tenant (will use tenant d) to a target tenant (will use mytenant as the target name).

  1. If the target tenant does not exist, create it by following these steps. For the sake of this document, I will assume the target tenant id to be mytenant
  2. Login to the target tenant as an admin and create a user with the same id as the user in the original tenant. In this example, the user id is john in the tenant mytenant.
  3. Transfer the applications to the new user account in the target tenant
    1. Login to the source tenant as a tenant admin. For instance admin@d
    2. Navigate to Manage > Manage Users.
    3. Login as the user you want to move. 
    4. Navigate to the user's applications page. 
    5. Download each application for that user and save to a folder in your file system. 
    6. Logout
    7. Login as the user in the new tenant: john@mytenannt.
    8. Upload the applications you've downloaded in the previous steps. 
  4. Move the submissions in the submissions repository. You need to run these steps in the database where you persist the  submissions. Please back up your database before moving forward
    1. Login to your database.
    2. Edit the script shown below to:
      1. Replace the word john with the id of the user you are migrating.
      2. Replace the tenant id d with the id of the source tenant. The default tenant in  is called d so if you are moving the user as part of an upgrade from 3.4.x chances are that your source tenant is d
      3. Replace the word mytenant with the name of your target tenant 
    3. Run the script shown below in your  submissions database.

update formsubmission
set tenantid='mytenant'
where id in (
select fs.id from formsubmission fs, formsubmissiontype fst 
where 
fs.formsubmissiontype_formtype_id = fst.id
and fst.ownerid='john'
and fs.tenantid='d'
)update formsubmissiontype
set tenantid='mytenant'
where ownerid='john'
and tenantid='d'

Verification:

  1. Login as the user in the new tenant.
  2. Verify that the submissions are properly being loaded for all forms. In the submissions repository page make sure to adjust the initial and end dates to a window of time that you know have submissions for that specific form.
  3. Update references to the forms. After going trough the steps above, the URL to the forms owned by the user will be different than what they were originally. You need to update all references to the forms in published links and pages where the form should be embedded.

Show/Hide Share Dialog Options

You can customize the options that appear in the Share dialog by editing the following web.xml parameter or adding it to an override in frevvo.xml. Remove any option from <param-value> that you want to hide from the share dialog.

<context-param> 
    <param-name>frevvo.share.options</param-name> 
    <param-value>embed-script,embed-link,link,page,google-gadget,raw-iframe,raw-link</param-value>
    <description>Which share dialog options to show</description>
</context-param>

Hide the "forgot password" button on the login screen

 in-house customers that wish to hide the "forgot password" field on the login screen can do so by changing the value of the frevvo.login.forgot.password.enabled context parameter in the web.xml file. This is only relevant to tenants using the  Default Security manager and could be helpful if you are using LDAP without SSO. To hide the field, edit <frevvo-home>\tomcat\webapps\frevvo\WEB-INF\web.xml. Uncomment the frevvo.login.forgot.password.enabled  parameter and set the param-value to false. 

<context-param>
     <param-name>frevvo.login.forgot.password.enabled</param-name>
     <param-value>true</param-value>
     <description>Show Forgot Password button on login screen</description>
</context-param>

 You can also add it to an override in frevvo.xml.

<Parameter name="frevvo.login.forgot.password.enabled" value="false" override="false"/>

Moving Data Sources to the Top of the Designer

You can make the Data Sources panel in the Designer appear at the top of the left properties pane via the context parameter: frevvo.data.sources.top. Add the parameter with a value of true, as shown below, to the <frevvo-home>\tomcat\conf\Catalina\localhost\frevvo.xml file. 

<Parameter name="frevvo.data.sources.top" value="true" override="false"/>

Here is an example of how to edit the web.xml file to add the configuration parameter. Be sure to rezip the frevvo.war file, as described above, when the changes are complete.

<context-param>
    <param-name>frevvo.data.sources.top</param-name>
    <param-value>true</param-value>
    <description>Move Data Source to the top></description>
</context-param>

Remember any parameter in web.xml can be duplicated in frevvo.xml and the value in frevvo.xml takes precedence over the value in web.xml. If you plan to override the web.xml context parameter values and you are using the frevvo Tomcat bundle, we suggest doing so in frevvo.xml.

Show/Hide the "New from XSD" Button 

You can show/hide the "New from XSD" button form designer Data Sources tab via the context parameter: frevvo.data.sources.add to the <frevvo-home>\tomcat\conf\Catalina\localhost\frevvo.xml file. The default is true. Set it to false to hide "New from XSD" button. Here is an example: 

<Parameter name="frevvo.data.sources.add" value="false" override="true"/>

Here is an example of the configuration parameter added to the web.xml file. Be sure to rezip the frevvo.war file, as described above, when the changes are complete. 

<context-param>
<param-name>frevvo.data.sources.add</param-name>
<param-value>false</param-value>
<description>Hide New from XSD button></description>
</context-param>

Remember any parameter in web.xml can be duplicated in frevvo.xml and the value in frevvo.xml takes precedence over the value in web.xml. If you plan to override the web.xml context parameter values and you are using the frevvo Tomcat bundle, we suggest doing so in frevvo.xml.   

Configure Palette Controls in the designer

You can configure the palette to display only the controls that you need or to change the position of the controls in the palette by adding the context parameter:frevvo.palette.controls in the <frevvo-home>\tomcat\conf\Catalina\localhost\frevvo.xml file. The Strings must match exactly but they can be in any order. Remove the name of any controls that you don't want. In all cases, half of the configured amount of controls will display on the left side of the palette and the remaining controls on the right, based on the order in which they are listed in the context paramater. Here is an example showing a designer palette configured with only nine controls; 

<Parameter name="frevvo.palette.controls" value="Dropdown,Radio,Checkbox,Section,Repeat,Tabs,Panel,Table,Message" override="false"/>

 The frevvo.palette.controls parameter exists in the web.xml file. Here is an example of the modified configuration parameter that will display only ten controls. Be sure to unzip/rezip the frevvo.war file, as described above, when the changes are complete.  

<context-param>
<param-name>frevvo.palette.controls</param-name>
<param-value>Dropdown,Radio,Checkbox,Section,Repeat,Tabs,Panel,Table,Message</param-value>
<description>Which controls are displayed in the palette</description>
</context-param>

This image shows the Data Sources section moved to the top, the "New from XSD" button hidden and the palette configured for only ten controls. Remember any parameter in web.xml can be duplicated in frevvo.xml and the value in frevvo.xml takes precedence over the value in web.xml. If you plan to override the web.xml context parameter values and you are using the frevvo Tomcat bundle, we suggest doing so in frevvo.xml.

Modifying Content Types for the Upload Control

The content types supported by  are configured through web.xml using the context parameter: frevvo.upload.file.types. A mime type that is not working for a certain content type can be added to the web.xml file for on-premise customers. Follow the steps above to unzip/rezip the <frevvo-home>/tomcat/webapps/frevvo.war file after the edits to the web.xml file are complete.

The context parameter, frevvo.upload.file.types is located in the <!-- Upload Control File Types and Corresponding Mime Types --> section of the web.xml file.

<context-param> <param-name>frevvo.upload.file.types</param-name>
      <param-value>pdf,MS Word,MS Excel,MS PowerPoint,MS Access,gif,jpeg,png,tiff,rtf,tar,zip,gzip,xml,bmp</param-value>
      <description>Upload Control File Types for restricting upload by type</description> 
</context-param>

In addition, there are context parameters for each supported mime type that corresponds to each context type. For example, the context param that has the mime types corresponding to MS Word is: frevvo.upload.file.type.ms_word.mimes. Note the naming convention for the context type part of the parameter - lower case and spaces replaced with _ 

<context-param>   
     <param-name>frevvo.upload.file.type.ms_word.mimes</param-name>   
     <param-value>application/msword</param-value>   
     <description>Allowed mimes for this type (comma separated).  Type names is lower cased and spaces replaced with _.</description> 
</context-param>

Edits to the <!-- Upload Control File Types and Corresponding Mime Types --> section of the web.xml file should be reported to  customer support to ensure future releases include the added mime type in the web.xml file of future releases.

As a preferable alternative, the additional mime type can be typed into the Other Mime/Ex field on the Upload control property pane. Refer to Upload control for more information.   

Rule Validation Timeout 

Rule validation is executed in a thread pool with a timeout. You can change the rule validation timeout value with the context param in web.xml - "frevvo.rule.validation.timeout". The default value is 2000 milliseconds. If validation javascript execution exceeds this timeout value, the Rule Validator will show : 

Form or Rule Level Validation Issue: Validation Failed Rule validation timed out, possibly due to unparseable rule JavaScript.

Show/Hide PageBreaks

The show/hide pagebreaks icon   on the Form Designer toolbar is a toggle to make PageBreak controls in your form on visible/invisible. When you drag a PageBreak control from the palette onto the canvas it will be visible.If you save then edit the form/flow, the PageBreak controls will be visible in the designers.

If you want to change the default behavior, i.e. - make them invisible when you add/edit the form/flow, modify the frevvo.designer.showPageBreaks context parameter in the web.xml file. This parameter defaults to true. Setting it to false will hide PageBreaks by default in the designer. 

Follow the steps here to unzip the <frevvo-home>\tomcat\webapps\frevvo.war. Modify this context parameter at step 4. Complete the remainder of the steps listed above.

 <context-param>
        <param-name>frevvo.designer.showPageBreaks</param-name>
        <param-value>false</param-value>
        <description>Show page breaks by default in the designer</description>
 </context-param>

If you want to avoid the unzip/rezip steps, follow these steps to add the parameter in the frevvo.xml file:

  1. Stop Live Forms if it is running.
  2. Navigate to <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml.
  3. Open the file with a text editor.
  4. Add the parameter shown below to the frevvo war settings section in the file. A true value shows the PageBreak controls while a false value hides them by default in the designer.

<Parameter name="frevvo.designer.showPageBreaks" value="true" override="false"/>

       4. Save the file after your changes are made. 

       5. Restart Live Forms.

Save on Navigation

You can configure the Save on Navigation feature if you want to see an entry in the Audit Trail each time the flow navigates to a different step or you want to save the last saved step in a screenflow to the Task List for all of your workflows. If you want to select this feature for individual flows, then check the Save on Navigate property on the Flows Property panel for each one.

 To configure the Save to Navigation feature for all workflows, you must add the content parameter in the <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml file or you can unzip the <frevvo-home>\tomcat\webapps\frevvo.war file and add the parameter to web.xml. If you are using the  Tomcat bundle, we suggest making this change in frevvo.xml. This keeps all your modified parameters in one place and makes it easy to upgrade  to newer releases.

Follow these steps to turn on the Save on Navigation feature in the frevvo.xml file:

  1. Stop Live Forms if it is running.
  2. Navigate to <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml.
  3. Open the file with a text editor.
  4. Add the parameter shown below to the frevvo war settings section in the file. A true value turns on the Save to Navigation feature while a false value turns it off. False is the default.

<Parameter name="frevvo.flows.save.on.navigation" value="true" override="false"/>

       4. Save the file after all your changes are made. 

       5. Restart Live Forms. 

If you choose to turn on this feature using the web.xml file, the context parameter that you must modify is shown.

<context-param>
     <description>Perform save on navigation</description>
     <param-name>frevvo.flows.save.on.navigation</param-name>
     <param-value>true</param-value>
</context-param>

The default value is false.

Disable Form Save in PDF Mapping

The prompt and save of the form prior to additional pdf mapping can be controlled by a web.xml context parameter named: frevvo.form.save.on.mapping. The parameter defaults to true. If set to false, the designer will not be prompted to save the existing pdf form before continuing pdf mapping and the editing instance will not be saved. This parameter applies only to forms, not flows.

Follow the steps here to unzip the <frevvo-home>\tomcat\webapps\frevvo.war. Modify this context parameter at step 4. Complete the remainder of the steps listed above.

 <context-param>
     <param-name>frevvo.form.save.on.mapping</param-name>
     <param-value>true</param-value>
     <description>prompt and save form before PDF mapping</description>
 </context-param>

XSS Cleaning

 uses a whitelist approach to filter out XSS attacks. Only whitelisted tags will work if you are using HTML in labels, help, hint, etc. Although the whitelist allows a full range of text and structural body HTML, it will restrict you from using some tags like the HTML comment. 

You can optionally turn off XSS cleaning for all of  or for control labels by setting two context parameters to false: 

  • frevvo.xss.clean=false - this parameter removes all xss (cross site scripting) cleaning product wide.
  • frevvo.xss.clean.labels=false -  this parameter removes all xss cleaning for control labels only.
To turn off XSS cleaning for all relevant fields including labels in all of , set both parameters to false. To turn off cleaning for labels only, set frevvo.xss.clean to true and frevvo.xss.clean.labels to false.

Customers should carefully consider the ramifications of removing the XSS scrubbing. Harmful markup can potentially be used for XSS attacks.

If you are using tomcat, the context parameters can be added to the frevvo.xml file which is located in the <frevvo-home>\tomcat\conf\catalina\localhost\ directory. Follow these steps:  

  1. Stop Live Forms if it is running.
  2. Navigate to <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml.
  3. Open the file with a text editor.
  4. Add the parameter(s) shown below to the frevvo war settings section then save the file.
  5. Restart .
<Parameter name="frevvo.xss.clean" value="false" override="true"/>
<Parameter name="frevvo.xss.clean.labels" value="false" override="true"/>

You can unzip the <frevvo-home>\tomcat\webapps\frevvo.war file and add the parameters to web.xml file instead. Follow the steps to unzip the <frevvo-home>\tomcat\webapps\frevvo.war. Modify these context parameters at step 4. Complete the remainder of the steps listed above.

The default value for the context parameters is true. To turn off XSS cleaning, change the values to false. 

<!-- XSS Cleaning -->
    <context-param>
        <param-name>frevvo.xss.clean</param-name>
        <param-value>true</param-value>
        <description>Clean all relevant fields of potentially harmful markup that could be used for XSS attacks</description>
    </context-param>
    <context-param>
        <param-name>frevvo.xss.clean.labels</param-name>
        <param-value>true</param-value>
        <description>Clean all labels of potentially harmful markup that could be used for XSS attacks. frevvo.xss.clean must also be true.</description>
    </context-param>

Max Size for Attachments

You can set an upper bound limit server wide for the maximum size of an attachment that can be uploaded via the Upload Control by adding the frevvo.attachment.maxsize context parameter in the  web.xml file. See Modifying the web.xml file above for the details. The same result can be accomplished by overriding the property in the container level by modifying the frevvo.xml.file. This is the recommended approach as frevvo.xml is directly editable while the web.xml file is included in the frevvo.war zipfile that has to be extracted, modified and rezipped after the changes are made.

This parameter also applies to attachments included in submissions that are stored on box.com using the Box connector.

To add the parameter to frevvo.xml:

  1. Stop .
  2. Locate the frevvo.xml file under the frevvo installation. If you are using the tomcat bundle, it will be in <frevvo-home>\tomcat\conf\catalina\localhost.
  3. Add the line:
<Parameter name="frevvo.attachment.maxsize" value="10485760" override="false"/>

      3. Replace the value,102400 in this example, with the maximum size of the attachment that you want. The value must be entered in bytes. The default value is 10485760 bytes.

      4. Restart .

If you are using MySQL, and you upload a large image or you are using a workflow that contains a large pdf, , you may see this error:

The default value of the max_allowed_packet parameter in your MySQL server may not be large enough. Refer to this website for detailed information about the MySql configuration parameter. Increasing the max_allowed_packet variable setting in your MySQL Server from the default (1M) to something like 16M (16777125) fixes the issue. To fix the issue temporarily, run the following commands:
  • mysql -u root
  • set global max_allowed_packet=16777216
To permanently set it, choose one of the two methods listed below:
  • You can add the parameter  - max_allowed_packet=16M to the mysqld command line or (mysqld_safe command line) as shown: 
 mysqld --max_allowed_packet=16M 
  • Edit the MySql configuration file (my.ini on Windows/ my.cnf on Mac OS) and add max_allowed_packet=16777216 to the [mysqld] section. 
[mysqld]
max_allowed_packet = 16M
  • Restart MySQL.
  • Restart frevvo. 
  • The setting will permanently take effect.

On Mac OS, you can access the my.cnf file by typing

    • sudo vi /etc/my.cnf

 The location of the my.ini/my.cnf file varies by configuration.

Send Signatures to ImageSilo

The pve connector by default does not send handwritten signature images to ImageSilo. This can be overridden by setting frevvo.send.signature.xml to true in web.xml in pve.war. Follow these steps:

  1. Stop .
  2. Unzip the <frevvo-home>\ext\connectors\pve.war file.
  3. Modify \Web-INF\web.xml, change the value of the frevvo.send.signature.xml context parameter to true.  

    <context-param>
    		<param-name>frevvo.send.signature.xml</param-name>
    		<param-value>false</param-value>
    	</context-param>wwwww

     

  4. Rezip the pve.war file.
  5. Copy the modified file to <frevvo-home>\ext\connectors
  6. Start .

Clustered Form Servers

 supports clustered form servers for both high availablity / load balancing and fault tolerance. Please refer to Cluster Configuration for requirements and tasks associated with installation and configuration of clustered form servers.

Customize the Default Reject Email

In-house customers can change the default text for the rejection email subject and body by modifying the values for the frevvo.task.reject.notification.email subject and frevvo.task.reject.notification.email.message context parameters. These context parameters are found in the web.xml file located in the frevvo.war. If you prefer not to unzip the war file you can add them to the frevvo.xml file instead. Changes will be reflected in flows created after modifications are complete.

Follow these steps to change the default values in the frevvo.xml file:

  1. Stop Live Forms if it is running.
  2. Navigate to <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml.
  3. Open the file with a text editor.
  4. Add the parameter(s) shown below with your modified values in between the double quotes to the frevvo war settings section then save the file.

    <Parameter name="frevvo.task.reject.notification.email.subject" value="" override="false"/>
    <Parameter name="frevvo.task.reject.notification.email.message" value="" override="false"/>
  5. Restart .
  6. Create a new flow to see the changes.

You can unzip the <frevvo-home>\tomcat\webapps\frevvo.war file and add the parameters to web.xml file instead of making the changes in the frevvo.xml file.

Follow the steps to unzip the <frevvo-home>\tomcat\webapps\frevvo.war. Modify the value in these context parameters at step 4. Complete the remainder of the steps listed above. Create a new workflow to see the changes.

<context-param>
        <description>The default subject for REJECT task notification</description>
        <param-name>frevvo.task.reject.notification.email.subject</param-name>
        <param-value>You have a new task for {flow.name}</param-value>
    </context-param>
    <context-param>
        <description>The default message for task REJECT notification actions</description>
        <param-name>frevvo.task.reject.notification.email.message</param-name>
        <param-value>&lt;p&gt;This workflow was rejected back to you for further action.&lt;/p&gt;&lt;p&gt;The work flow was rejected by {subject.first.name} {subject.last.name} at step: {flow.activity.name}. The reason was: {flow.activity.reject.reason}.&lt;/p&gt;&lt;p&gt;You can access this task at: {task.perform.url}&lt;/p&gt;</param-value>
    </context-param>

Skew error when logging into an Azure SAML tenant

Users logging into a Azure SAML tenant may encounter the error "Access Denied.  Authorization Required". Examination of the frevvo.log shows the following entry:

Response issue time is either too old or with date in the future, skew 60, time 2016-06-01T05:49:25.330Z

This error is typically caused by a clock synchronization issue between the SP (frevvo) and the Idp (Azure) or a genuine delay in the connection. If you get this error, you can change the value of the context parameter, com.frevvo.security.saml.response.skew, to specify the time in seconds allowed between the request and the response from Azure to a value greater than the default value of 60 seocnds.

If you are using the tomcat bundle, the configuration parameter - com.frevvo.security.saml.response.skew - can be added to the <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml file. This is the recommended location.

Follow these steps:

  1. Stop Live Forms if it is running.
  2. Navigate to <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml.
  3. Open the file with a text editor.
  4. Add the parameter shown below with a value greater than the default value of 60 seconds. to the frevvo war settings section. The example shown increases the timer to 120 seconds.

    <Parameter name="com.frevvo.security.saml.response.skew" value="120" override="false"/>


  5. Save the file.

  6. Restart .
  7. Retry the login.

You can unzip the <frevvo-home>\tomcat\webapps\frevvo.war file and add the parameters to web.xml file instead of making the changes in the frevvo.xml file.

Follow the steps to unzip the <frevvo-home>\tomcat\webapps\frevvo.war. Add the com.frevvo.security.saml.response.skew context parameter shown below at step 4. Complete the remainder of the steps listed above.

<context-param>
		<description>frevvo Version</description>
		<param-name>com.frevvo.security.saml.response.skew</param-name>
		<param-value>120</param-value>
	</context-param>

Configure the max size for Images in your form/flow

In-house customers can change the maximum size for images uploaded to forms/flows using the Image control in the designers by modifying the values for the frevvo.asset.maxsize context parameter. The default value is set to 2097152 bytes. Any uploaded file that exceeds the value in this parameter displays an error message to the designer so they can take corrective action.

The error message will not display for video files that exceed the specified limit.

This context parameter is found in the web.xml file located in the frevvo.war or it can be added to the frevvo.xml file. Adding it to frevvo.xml is the recommended approach as it keeps all your configured parameters in an easily accessible file and makes upgrades easier.

Follow these steps to add the parameter to the frevvo.xml file:

  1. Stop Live Forms if it is running.
  2. Navigate to <frevvo-home>\tomcat\conf\catalina\localhost\frevvo.xml.
  3. Open the file with a text editor.
  4. Add the parameter shown below to the frevvo war settings section. Change the value in between the double quotes to the maximum allowable image size in bytes.

  5. Save the file.
     

  6. Restart

    <Parameter name="frevvo.asset.maxsize" value="2097152" override="false"/>


You can unzip the <frevvo-home>\tomcat\webapps\frevvo.war file and change the value for the parameter in the web.xml file instead of making the changes in the frevvo.xml file.

  1. Stop if it is running.
     
  2. Follow the steps to  unzip the <frevvo-home>\tomcat\webapps\frevvo.war .
  3. Modify the value in the frevvo.asset.maxsize context parameters at step 4.

    <context-param>
    	<param-name>frevvo.asset.maxsize</param-name>
    	<param-value>2097152</param-value>
    	<description>Max number of bytes allowed for form assets in image and video controls</description>
    </context-param>
  4. Complete the remainder of the steps listed above.
  5. Restart .

Changing the Default Task Notification Email Message

If you want to change the default task notification email for your  server, add this parameter in your \frevvo\tomcat\conf\Catalina\localhost\frevvo.xml file in the frevvo war section:

<Parameter name="frevvo.task.notification.email.message" value="You can access your task list by clicking: {task.perform.url}" override="false"/>

Change the value in this parameter to anything you want. The task.perform.url template {task.perform.url} is a built-in template in  and it will always point the user directly to the task.

If you do not want the link in your task notification emails to go there, you can remove it. If you want the email notification link to point to the user's frevvo server's task list URL, then change the  {task.perform.url} template to {task.list.url}.

The default message can include form control templates in addition to the built-in templates. 

Security Vulnerabilities

The following security vulnerablities have been addressed as follows:

  • Information Disclosure - resolved with the tomcat upgrade to version 8.5.16
  • Man in the middle - This has to do with executing the CGI Servlet. This servlet is disabled in the frevvo Apache tomcat distribution. Customers who choose to enable the servlet are responsible for ensuring security viz. adding filter etc.
  • Version Disclosures - Resolved by configuring the ErrorReportValve in \frevvo\tomcat\conf\server.xml file (in the Host section) as described in this Apache tomcat website. The parameter that needs to be modified is:

    <Valve className="org.apache.catalina.valves.ErrorReportValve" showServerInfo="false"/>
  • X-Frame-Options Header Not Set - Resolved by modification at the tomcat level. In-house customers can uncomment the HttpHeaderSecurityFilter provided in the tomcat web.xml. The filter is documented Apache tomcat website. Specify the appropriate X-Frame-Options value in the antiClickJackingOption parameter - (SAMEORIGIN or ALLOW-FROM).

    Setting this parameter to SAMEORIGIN may interfere when embedding frevvo forms/flows in your website. Use  ALLOW-FROM instead.

    Click the appropriate link below for filter examples.

    Example of filter with SAMEORIGIN
    <filter>
            <filter-name>httpHeaderSecurity</filter-name>
            <filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</filter-class>
    		<init-param>
    			<param-name>antiClickJackingOption</param-name>
    			<param-value>SAMEORIGIN</param-value>
    		</init-param>
            <async-supported>true</async-supported>
    </filter>
    
    <filter-mapping>
            <filter-name>httpHeaderSecurity</filter-name>
            <url-pattern>/*</url-pattern>
            <dispatcher>REQUEST</dispatcher>
    </filter-mapping>
    
    Example of filter with ALLOW-FROM for embedded forms
    <filter>
            <filter-name>httpHeaderSecurity</filter-name>
            <filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</filter-class>
    		<init-param>
    			<param-name>antiClickJackingOption</param-name>
    			<param-value>ALLOW-FROM</param-value>
    		</init-param>
    		<init-param> 
                <param-name>antiClickJackingUri</param-name> 
                <param-value> http://example.com:80/*</param-value> 
            </init-param>
            <async-supported>true</async-supported>
    </filter>
    
    <filter-mapping>
            <filter-name>httpHeaderSecurity</filter-name>
            <url-pattern>/*</url-pattern>
            <dispatcher>REQUEST</dispatcher>
    </filter-mapping> 


  • Admin user name exposure in URLs - Resolved by the feature to not expose the user id in URLs.

Geolocation

As of June 22, 2016 Google Maps V3 no longer supports keyless access. New on-premise installations planning on using the  Geolocation feature must obtain a Google Maps API key. This may involve registering with Google and then creating an application and then a key. Refer to this Google Maps API blog article for a discussion of the changes and here for the google api pricing plans.

follow these Steps to obtain the Google Maps API key:

  1. Go to this Google Maps API website
  2. Login with your google account
  3. Click on Get a Key button
  4. Select project, copy key value
  5. Create/edit the <frevvo-home>\ tomcat\conf\frevvo-config.properties file. Add the frevvo-google.maps.apikey property with your api key as the value

    frevvo.google.maps.apikey=AIzaSyCa3fRtM53VB1aHZjbCHTh1al7RWo22l78
  6. Start the Insight server then .

See the Geolocation topic for details about how to display the map in your form/flow and the this Rules example if you want to show additional location information.

 

 

<Parameter name="frevvo.recaptcha.sitekey" value="<your custom site key here>" override="false"/>
<Parameter name="frevvo.recaptcha.secretkey" value="<your custom secret key here>" override="false"/>
<Parameter name="frevvo.recaptcha.hostcheck" value="true or false" override="false"/>
  • No labels