27 April 2016

1. Other

1.1. ENOVIA 2015x+ - Load Page Into Content

In ENOVIA 2015x and above, it can be problematic to load a page into the "content" frame and at the same time hide some of the user interface related to page headers etc.

Example shown in screenshot below.

image
Figure 1. Load page example

For example if you have loaded an object specific page, you might have the categories to the left and some extended page header area above. This is exemplified in the screenshot below.

image
Figure 2. Object page

Simply having the Target Location setting on the command set to content will not result in that the extra area highlighted above is made hidden.

TVC contains a JSP page that will help to work around this problem. Instead of calling your page directly, you can do as shown in the example below:

MQL<1>pri command TVXHomePage;
command TVXHomePage
  description
  label 'TVX Home Page'
  href '${ROOT_DIR}/tvc/core/enovia/LoadContentPage.jsp?page=tvc-action/tvxPersonalTopPanel/foo.jsp?panel=tvc:toppanel:tvx:common:toppanel:personal/PersonalHomePage.xml'
  setting Target Location value content
  user all
  nothidden
  created 4/26/2016 3:18:57 PM
  modified 4/27/2016 10:02:42 AM

E.g. you can load the page ${ROOT_DIR}/tvc/core/enovia/LoadContentPage.jsp that first will reset the view before loading the page as provided via the page parameter.

1.2. Dialog window behavior

In Enovia 2015x OOTB , emxNavigator.jsp?isPopup=true is used to open popup windows.

From TVC - 2018.4.0 onwards, the requests for opening popup windows are redirected to emxNavigatorDialog.jsp In 2015x some FP versions work fine with new method of redirection to emxNavigatorDialog.jsp, while some FP versions work fine with old method of emxNavigator.jsp If for a specific enovia version the new method is not required then below configuration can be used to go back to the old method.

The old method of opening dialog windows can be activated globally by setting tvc.core.dialog.forward to NAVIGATOR.

tvc.core.dialog.forward accepts following values:

Value Description

NAVIGATOR

It uses the emxNavigator.jsp to open popup windows.

DIALOG

It uses emxNavigatorDialog.jsp to open popup windows.

URL

It opens the URL in the popup directly without navigating through emxNavigatorDialog.jsp or emxNavigator.jsp

Example using tvc.properties:

tvc.core.dialog.forward=NAVIGATOR

Example using web.xml:

<init-param>
    <param-name>tvc.core.dialog.forward</param-name>
    <param-value>NAVIGATOR</param-value>
</init-param>

1.3. User cache (com.technia.tvc.core.db.UserUtils)

The user cache is caching the roles and groups available with the default settings below if a role or group is not found in the cache it will be added incrementally There are a couple of properties to control the behavior of the user cache listed below.

Property Description Default Value

tvc.core.cache.user.mode

Cache is loaded during tvc initialization

onStart

tvc.core.cache.user.enabled

Use cache or always query database for role or group

true

tvc.core.cache.user.role.filter.name

Name pattern to filter what roles are initially cached on start up

*

tvc.core.cache.user.role.filter.where

Where clause to filter what roles are initially cached on start up

name nmatch ctx* && name nmatch *PRJ

tvc.core.cache.user.group.filter.name

Name pattern to filter what groups are initially cached on start up

*

tvc.core.cache.user.group.filter.where

Where clause to filter what groups are initially cached on start up

1.3.1. PerosonInfo cache (com.technia.tvc.core.db.model.PersonInfo)

The PersonInfo class is responsible for retrieving a person’s information from the database and caching it. The following property is to control the behavior of the PerosonInfo cache.

Property Description Default Value

tvc.core.db.personInfo.useCache

Use cache or always query database for person information

true

1.4. Recent objects

Recent objects is a filter that can be used to store recently visited objects. It is configured via servlet filter in the web.xml

<filter>
	<filter-name>RecentObjectFilter</filter-name>
    <filter-class>com.technia.tvc.core.gui.recentobject.http.RecentObjectFilter</filter-class>
</filter>
<filter-mapping>
	<filter-name>RecentObjectFilter</filter-name>
	<url-pattern>/common/emxTree.jsp</url-pattern>
</filter-mapping>

There are some settings to control the recent objects below:

Property Description Default Value

tvc.core.recentobject.handler

What handler to use to store recent objects. There are two built in handlers, dataobject and set

dataobject

tvc.core.recentobject.limit

The limit of how many recent objects should be stored

20

tvc.core.recentobject.handler.set.name

When using the set handler the name of the set to be stored

Recent Objects

tvc.core.recentobject.handler.class

Defining a custom RecentObjectHandler by implementing com.technia.tvc.core.gui.recentobject.RecentObjectHandler

There is a built in loader defined that can be used to populate a structure browser table with recent objects com.technia.tvc.structurebrowser.recentobject.loader.RecentObjectLoader