This chapter provides troubleshooting for known issues and a list of known restrictions for the usage of Stardust.
For known issues concerning upgrades from earlier version, also refer to chapter Upgrading to Later Versions.
If you run into timeouts when you are using the Benchmark daemon, this might happen
due to low batch size values. In that case increase the timeout value of the
daemon queue via the property benchmark.daemon.BatchSize in your
server-side carnot.properties file.
Additionally make sure that the default transaction timeout for your Daemon queue is at least equal to the value of property benchmark.daemon.Periodicity.
Please find details on properties benchmark.daemon.Periodicity and benchmark.daemon.BatchSize in section Daemon of chapter Server Side Properties.
A common problem in Eclipse environments installed via the old-style Eclipse installation
is the running out of PermGenSpace. When using a Sun VM, you can increase the size of the
permanent generation memory. The default maximum is 64 megabytes, but
more may be needed depending on your plug-in configuration and use. The
maximum permanent generation size is increased by using the -XX:MaxPermSize=<memory
size> argument. Note that this argument may not be available for all
VM versions and platforms, please consult your VM documentation for more
details.
If an out of memory error occurs while running the modeler please
increase the heap size available to Eclipse. To do this edit the
eclipse.ini file, residing in your
Eclipse folder.
Now set the minimal and maximal heap size, for example:
-vmargs -Xms128m -Xmx512m -XX:MaxPermSize=128m
Hereby the -Xms option specifies the stack space and -Xmx
the maximum heap size. MaxPermSize specifies the maximum
PermGen size. PermGen means "Permanent Generation" and it is a part of
memory where all permanent objects are stored.
Note that these settings are already provided per default in case you have installed Eclipse via the new Eclipse installer. Please refer to https://www.eclipse.org/downloads/installer.php for details.
In case you got a PermGen space error while running a server, you have to assign more memory to the server itself. In the launch configuration of your server add the following VM arguments:
-Xms128m -Xmx1024m -XX:MaxPermSize=256m
These are the minimum requirements, the values are increasable. Please test which value applies to your requirements.
To change the launch configuration accordingly perform the following steps:
-Xms128m -Xmx1024m -XX:MaxPermSize=256m
Figure: Setting Server Arguments for Tomcat
In case you run out of memory while you are working with an external server, the memory can be increased by adding some arguments in specific batch files or Java option environment variables. Please refer to the documentation of the server you are using for detailed information.
Failing of a server restart when working with referenced models might happen in the following case:
In case you get a java.lang.NoClassDefFoundError: javax.ws.rs.NotFoundException
during server start-up with JBoss 7.1, make sure to upgrade the shipped RESTEasy
stack to version 3.x.
Upgrading to the new RESTEasy stack version prevents that the
Stardust jax-rs 2.0 is overwritten by the JBoss 1.0 jax-rs API during deployment,
which otherwise happens due to issue
https://issues.jboss.org/browse/WFLY-1304.
Note that the ActiveMQ message server currently does not work with Java 8.
If you face an error during server startup that properties could not be loaded due to
a missing carnot.properties file, make sure that the option to automatically
build projects is enabled (Project > Build Automatically). In case the
option is disabled, the project sources will not be compiled and the classes are not
copied to the required locations.
If the Stardust Portal is not provided in Dynamic Web Project Dialog drop-down list
in the Configuration section, check for the right setting in the
Dynamic web module_version. Note that for the time being only version
2.5 is supported. For details refer to chapter
Creating a Dynamic Web Project in Eclipse of the
Rapid Application Development guide.
Sometimes it might happen that your database created in the Rapid Application environment is incomplete. In this case try one of the following or a combination:
In some cases, e.g. after a non graceful shutdown, it might occur that your Jackrabbit repository content is corrupt. If it does not contain important content to be lost, remove the complete repository to make it created newly.
If you use an audit trail database in RAD that has been created with Stardust
version earlier than 9.0, you have to deselect and select the database from the server
configuration page. Republishing the server updates the Tomcat server.xml
file with the new resource definition entry for embedded database usage.
The output list for multiple instance activities may not be shown correctly you don not move the mouse pointer out of the entered field.
In case you implement a process interface in a different model, make sure to import data that is used in the process interface into the new model per reference. Creating data with the same Id is not sufficient and data values passed by the process interface will not be passed into the implementing process. Only data referenced from the model defining the process interface can be accessed correctly. No modeling validation is displayed to warn of this behavior.
Process attachments do not work in a scenario where a sub-process is invoked that is an implementation of a process interface and is defined in a different model fragment. In other words, documents uploaded to the root process should be visible in the sub-process and vice-versa. This works if the sub-process is defined in the same model as the root process and if the "Unique per root Process Instance" flag is set for the sub-process' Process Attachments. However, this won't work if the sub-process is in a different model. To achieve this, delete "Process Attachments" data from the consumer model and then copy (drag and drop) "Process Attachments" data from the provider model to consumer model. Then, deploy both the models.
Overwriting models, where the ID of a model element having instances (i.e. an activity having activity instances) was changed may lead to corrupted (but recoverable) audit trails. Please avoid modification of element IDs in overwrite scenarios.
The shared session approach is a way to let an external JSP application interact with Stardust and the process data. This is no longer a recommended approach as several standard-compliant technology stacks are provided as outlined in the Process-based UI Mashups concept chapter.
The usage of a shared session
includes leveraging of object names which might not be stable and introduces
common class-loading issues. The external JSP application must not request any
object which relates (either due to inheritance or member attribute) to classes
from the JEE Stack (Servlets, JSF-classes etc.), otherwise CallNotFoundExceptions
will occur if the libraries from the external JSP application differ from those
bundled with the Stardust Portal. For example the usage of an external JSP
application powered by RichFaces is not possible in shared-session mode as those
JSF library classes will clash with those provided by the Stardust Portal.
In case invocation of xsd attributes fails, you can change the
behavior of the xpath validation. Per default, a strict xpath validation
will be performed on XSD schemas. To provide a lenient validation,
you can set the property XPath.StrictEvaluation in your carnot.properties file
to false. Please refer to section
XSD Schema Validation
of the chapter XPDL Representation of Structured Data Types
for detailed information.
In case a model has a reference to an external structured type definition that is also referenced by other models, a change of this structured type definition can cause problems in some of these models. If you change an XSD which is referenced by multiple models, you must make sure that it is still valid for all other referencing models. We recommend to give the XSD file an unique name for every model version to prevent invalid XSDs.
Mapping types, which are different, but which are both represented as Number
in JavaScript, can cause a hidden type mismatch. This can be avoided by using
the expression toFixed(0).
For example use the following expression, if you map a structured data
element with type int to an element with the type double:
DemoStructType.DoubleTest = DemoStructType.IntegerTest.toFixed(0);
Please refer to the section Supported XSD Types for information on how specific XSD types are mapped to JavaScript types.
In case of structured data type xsd:time, the date (not time) returned by the engine is relative to the
current date on server and not the date which is given as input to the structured data type.
For example, for structured data type xsd:time, the date/time is specified as 01-July-2012:06:20:20. If you
verify the same via out data path, 02-Aug-2012:06:20:20 is returned. Here it assumes that current date is 02-Aug-2012.
Thus, all times returned by the engine are relative to the start of the server current day (midnight) adjusted
for the server time zone and daylight saving time.
In case a language bundle defined in the modeler cannot be deleted, use the following workaround:
Pasting fully-qualified class names into text box for Serializable Data name is not possible in Message Transformation Application. It works when selecting the class via browsing.
You may notice some performance issues while changing the properties of Message
Transformation Application. This is due to the automatic validation process of JSF,
JSP and JavaScript.
This issue is not related to Stardust, and it will persist even if you turn off Stardust validation. (Eclipse-> Window-> Preferences-> Process Manager-> Enable auto validation). You may take following steps to resolve it:

Figure: Setting properties of Message Transformation Application
Note that you may not get any warning or error message related to the syntax and the semantics of the model in the Problems view after disabling the Automatic validation. However, you can do a one time validation after completing the model by using following method:
Note that this solution applies to other cases also, where performance
is affected by the automatic validation. (For example, in
Message Parsing and Message serialization).
In case you use a formal parameter of type Java-bound Enumeration Primitive data in a Process Interface, the WSDL generator fails to create a WSDL document. Note that in general Primitive Enumeration types are not supported as formal parameters in case of SOAP and REST external process invocation. Use a structured data type embedding the required Enumeration type instead.
Note that Primitive Enumeration types are not supported as formal parameters in case of SOAP and REST external process invocation. Use a structured data type embedding the required Enumeration type instead.
If a provider model has a structured data type, but no document data defining this structured data, it cannot be used in a consumer model as document type.
As a workaround, define a document data in the provider model having a metadata type defined by the structured type, which should be used as a document type in the consumer model. By doing so, during provider model deployment the structured data type will be written as a document type to the JCR repository. Hence, later the document type reference from the consumer model can be resolved.
If you add application parameters in the Modeling perspective using a Firefox browser, it might happen that the parameter list is not updated. Please clear your browser cache in that case. Note that the whole cache should be deleted from beginning of time.
Note that you need to add Jython and bsf-engines jars to your classpath to
use Script Invocation applications with running Python. You can retrieve the
org.python.jython-standalone.2.7-b1 jar from Maven Central, e.g.
https://maven-repository.com/artifact/org.python/jython-standalone/2.7-b1.
The org.apache.bsf.bsf-engines.3.1 jar file requires customization.
For details please refer the project's Web page
https://commons.apache.org/bsf
accordingly.
This issue will be fixed in one of the next releases by adding these jars to the product.
A runtime upgrade operation keeps only the grants of the active model, or, if no active model exists, of the last deployed model, from each partition.
Please make sure that all your database indexes and statistics are up-to-date before starting an runtime upgrade job. Otherwise you might face performance issues, e.g. when using an Oracle database, where the cost-based optimizer (CBO) relies on current statistics. If the statistics are out-of-date, the CBO might generate inappropriate access paths leading to bad performance.
If you edit the provided stardust-product-nls.jar or any other language bundle jar and put it in the
WEB-INF/lib folder of your Web project, other Portal jars still might take precedence over this jar file
and the changes do not apply to the Portal. In this case rename the jar file starting with an "a", e.g.
a-stardust-product-nls.jar.
If you experience partially loaded or improperly formatted pages, clear your Browser cache.
Opening another Portal URL with the same host name and the same context root as the original
one is not possible in the same browser.
For example using myhost:8080/ipp and myhost:9090/ipp in
two different tabs in one browser does not work.
Reports using a large amount of data might cause issues like OutOfMemoryErrors. It is recommended to:
Please refer to section Handling Reports consuming a large Amount of Data of the Reporting - Introduction chapter for more details.
In case you get an UnexpectedRollbackException when you try to retrieve a report in
the Preview tab in the Reporting perspective, adjust the transaction timeout
for reporting requests.
Set the property Carnot.Spring.TxTimeout.Reporting in your carnot.properties
file to an appropriate value.
It explicitly sets the transaction timeout for reporting requests in seconds.
If this property is not set, the default transaction timeout of the chosen JTA Transaction Manager applies.
If you expand a repository folder having a number of child nodes that exceeds a maximum number of about 500 and you are using a JBoss server, the following Exception might occur:
JBWEB000065: HTTP Status 500 - JBWEB002004: More than the maximum number of request parameters (GET plus POST) for a single request (512) were detected. Any parameters beyond this limit have been ignored. To change this limit, set the maxParameterCount attribute on the Connector.
To resolve this issue, add the following property to your JBoss configuration:
<system-properties> <property name="org.apache.tomcat.util.http.Parameters.MAX_COUNT" value="1000"/> </system-properties>
An incorrect Login skin might be displayed if you use a custom skin, which was applied in a version earlier than 4.0. In this case re-select the custom skin in the Portal Configuration to apply internal changes for default skin preferences.
Color can be set for the category by entering the hex code for that color in the Internet Explorer.
Note that the general browser refresh by F5 is not supported for the Stardust Portal and could lead to information loss in some cases. Use the provided Portal refresh functionality to refresh your views.
If you click F5 nevertheless and you have a view open with an External Web Application, a Confirm Reload warning message appears. Close it with No in order to retain the current state.
All file uploads fail in the Stardust Web Portals when a filter is used for Single Sign On. The following exception is thrown in that case:
org.eclipse.stardust.common.error.InternalException: No caller principal available. Implicit login attempt aborted.
To make a file upload possible, add the following context-parameter to your
web.xml file:
<context-param>
<param-name>com.icesoft.faces.forceLifecycleOnCallingThread</param-name>
<param-value>true</param-value>
</context-param>
A possible reason is that the ICEfaces upload servlet uses a separate,
non-JSF thread to load the content. Since the Single Sign On filter uses
ThreadLocals to set security context, that information is not
available on the new thread. The flag above forces ICEfaces to use the
conservative threading model and use the same thread for the upload as well.
Please refer to
http://jira.icefaces.org/browse/ICE-4539 for detailed information.
In case a session timeout occurs with principal login and you are using WebLogic as application server, deactivate the keep alive option for WebLogic as described in section Deactivating the KeepAlive option of chapter WebLogic.
Note that in case Stardust is configured to use the LDAP Login Provider and internal security, a user is allowed to login without providing a password. You can either modify the LDAP server to disallow empty passwords or use the following code snippet to avoid the LoginFailedException, if you are using the LDAP Login Provider example. For LDAP example, please refer to the LDAP Synchronization Provider chapter of the Examples section. Modify your LDAP Login Provider class with the following code snippet.
public class LDAPLoginProvider implements ExternalLoginProvider
{
public static final Logger trace = LogManager.getLogger(LDAPLoginProvider.class);
public ExternalLoginResult login(String id, String password, Map properties)
{
if(password == null || StringUtils.isEmpty(password))
{
throw new LoginFailedException(
BpmRuntimeError.LOGIN_LDAP_INVALID_USER_PASSWORD.raise(),
LoginFailedException.AUTHORIZATION_FAILURE);
}
return LDAPAdapter.instance().login(id, password, properties);
}
}
Performance issue and timeout may occur when searching for processes that include case process instances. It happens if the All Processes option is selected and the total count is not available in the summary of the search result table. This happens in two cases:
UnsupportedOperationException To avoid any issues, the summary displayed at the top of the table will change as described in section Issues with pagination and records displayed for process search results including cases of chapter Searching for Processes and Activities in the End User Handbooks.
In case a specific process does not appear in your startable process list as expected, please check if a manual trigger is missing in this process to trigger the process.
Using session-scoped managed beans for interactive JSF activities might lead to corrupt process data as it is possible to open several activities of the same kind at the same time. Use Spring-based beans declared with a portalTab scope instead. For details refer to chapter Integrating JSF Applications of the System Integration.
In case of deployment of a model with a process, the process would be displayed in the Process Overview, Worklist etc. But the filter list for process won't display the process. Here the process can be:
To view this process in the filter list for process, you need to logout and login again. This problem occurs because the filter list for processes is cached and hence the process is not available in it. Once you logout and login again, the filter list gets updated with the deployed model.
GUI.eagerNextActivityActivation,
GUI.nextActivityPollIterations and GUI.nextActivityPollDelay
properties, can cause minor waiting time due to the search for the next activity.
You can change these parameters in your carnot.properties file
to adjust to your custom requirements. Refer to chapter
Client Side Properties of the
Operation Guide
for details on these properties.false).repository-home folder or create a new one.web.xml file contains the necessary context
parameters needed for uploading files, as described in the WebLogic chapter of the Deployment Guide.-Dorg.apache.el.parser.COERCE_TO_ZERO=false as start parameter
to the JBoss JVM start.The MySQL 5.6 installation comes with the MySql Connector/J in version 5.1.34.
If you deploy this JAR into JBoss as a module and include it in the standalone.xml
file, you are facing a DuplicateServiceException.
This is a known issue for JBoss versions earlier than 8
(Module for MySQL JDBC driver with version 5.1.30+ needs <driver-class> in standalone.xml).
As a workaround you can define a specific driver-class in the standalone.xml
in the driver section as follows:
<driver name="mysql" module="com.mysql"> <driver-class>com.mysql.jdbc.Driver</driver-class> <xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class> </driver>
For details please refer to section Restrictions for a Deployment with MySQL Version 5.6 in the JBoss chapter of the Deployment Guide.
Issues occur when you use an MSSQL XA driver and you do not have enabled the usage of prepared statements. Use prepared statements in combination with a native MSSQL XA driver to avoid these issues.
In case you use a language with multi-byte character sets, like Chinese or
Japanese, you might face deployment issues with MSSQL.
To avoid these issues, set the server-side property Audittrail.EnforceUnicode
in your carnot.properties file to true.
Please refer to section
Enforcing Unicode Usage
of chapter
MSSQL Audit Trail Database Setup for details on the impact of this property.
In case you use a language with multi-byte character sets, like Chinese or Japanese, you might face deployment issues with MySQL. To avoid these issues, explicitly inform the driver that the database Strings are UTF-8 encoded. Please refer to section Enforcing Unicode Usage of chapter MySQL Audit Trail Database Setup for details on how to extend the URL properties for different application servers accordingly.
Using MySQL sequences with the default configuration (CachingSequenceGenerator)
can cause the sequence to go out of sync on transaction rollback while having other concurrent
threads committing OIDs from this sequence.
In that case use the NonXADataSourceSequenceGenerator class provided by Stardust.
Set the property AuditTrail.SequenceGenerator to
org.eclipse.stardust.engine.core.persistence.jdbc.sequence.NonXADataSourceSequenceGenerator
in your carnot.properties file. You also have to configure an additional DataSource. This
additional DataSource does not participate in transactions
and will only handle access on the sequence table. It has to use the same schema and can use the same
credentials as the existing AuditTrail DataSource.
For example:
# MYSQL_SEQ required sequence generator and data source. AuditTrail.SequenceGenerator = org.eclipse.stardust.engine.core.persistence.jdbc.sequence.NonXADataSourceSequenceGenerator AuditTrail.Sequence.DriverClass = com.mysql.jdbc.Driver AuditTrail.Sequence.URL = jdbc:mysql://localhost:3306/ipp_9_0_x AuditTrail.Sequence.User = carnot AuditTrail.Sequence.Password = ag
In some cases, running process instance queries or reporting requests against an audit
trail containing process instances having descriptors on uninitialized
structured data values may be very slow for Derby databases. Please make sure that you use prepared statements to
improve the performance. Per default, property AuditTrail.UsePreparedStatements is set to
true to use prepared statements. If the property has another value assigned in your
carnot.properties file, set it to true. For details on using this property refer to section
Using Prepared Statements of chapter
Database Access Tuning of the
Operation Guide.
If you like to connect to the engine in an EJB tunneling environment with
WebLogic, use the TunnelingSessionFactory provided by Stardust
to avoid connection issues.
To use this session factory, set the following property in your
client-side carnot.properties file:
Secure.Session.Factory = org.eclipse.stardust.engine.api.ejb2.TunnelingSessionFactory
WebLogic by default intercepts HTTP basic authentication calls and tries to
authenticate the credentials against its own security realm. As the user and password is
not configured in WebLogic, the Web service call might never reach the Stardust Web
application. To avoid this, set the following parameter in the <security-configuration>
section of the config.xml file of your WebLogic domain:
<enforce-valid-basic-auth-credentials>false</enforce-valid-basic-auth-credentials>
Note that if you run the WebLogic domain in production mode, you cannot start the
managed server because it regards the <enforce-valid-basic-auth-credentials>
tag as invalid. In that case add a WebLogic server-specific argument to get the managed
server to disable the schema validation for config.xml.
For example, modify the following line
in bin/startweblogic.cmd of your WebLogic domain from:
set SAVE_JAVA_OPTS=%JAVA_OPTIONS%
to
set SAVE_JAVA_OPTS=%JAVA_OPTIONS% -Dweblogic.configuration.schemaValidationEnabled=false
If you perform a standard Stardust portal WAR deployment on WebLogic, the produced log might miss some details like bootstrapping information from the Spring Framework or route tracing from the Camel Context.
To provide a proper logging, copy the slf4j-api-1.5.11.jar and
slf4j-log4j12-1.5.11.jar libraries to the lib folder of your
WebLogic domain.
To fix the memory consumption issue in com.hazelcast.impl.base.SystemLogService, specify the java parameter as
hazelcast.system.log.enabled=false.
It is not recommended to change the property
xxxService.Guarded to switch off the security check for the
service.
Changing the value to false introduces a high risk of
executing services without having a permission and
hence might cause a severe security hole in the deployment!
For details on this property, please refer to the Service section of chapter Server Side Properties.
If the modifyUser API is invoked in mixed mode
(external and internal Authentication) to change the password
and user information of an existing user, no Exception is thrown.
The user information remains unchanged even though a successful response is provided.
The BatchUpdateException occurs in case a system user is used to retrieve a Stardust service and this system user has not been
excluded for session tracking.
To avoid session tracking for system users, please provide the property Carnot.AuditTrail.Session.NoSessionTracking = motu
within the carnot.properties file.
To avoid problems during the invocation of parallel activities in a process
definition, especially after an AND-split, set the property
AuditTrail.UseLockTables in your carnot.properties
file to true. Please refer to the entry
AuditTrail.UseLockTables in the chapter
Client Side Properties, residing in the
operation guide, for information on this property.
To avoid deadlock situations, set the property AuditTrail.InterceptJdbcCalls
in your carnot.properties file to true. Please refer to the entry
AuditTrail.InterceptJdbcCalls in the chapter
Client Side Properties, residing in the
operation guide, for information on this property.
Note that you might get problems when using the following MySQL versions:
All versions in between the ones mentioned above provide more stability.
During model deployment, the model is split into several chunks of Strings that are
stored in the STRING_DATA table. In case such a chunk ends with a backslash, the INSERT
statement fails with an SQL exception on MySQL. To avoid this problem, make sure that property
AuditTrail.UsePreparedStatements is set to true> in your carnot.properties
file (this is the default value) to use prepared statements.
AuditTrail.UsePreparedStatements = true
Now the string chunk is added as bind value and the model can be deployed without any problem.
In MySQL with property AuditTrail.UsePreparedStatements=false backslashes in strings are stripped.
For more information, please visit this link.
MySQL does not consider (some) errors as errors, if they happen on the second or subsequent row of a multi-row insert. Only if it happens on the first row, it is an error. To change this behavior so that every error is really an error, set:
SET SQL_MODE='STRICT_ALL_TABLES'
However, after the lock folder is refreshed, locking is working without problems again.
Concurrent versioning operations in Jackrabbit are failing sporadically and throw exceptions due to a Jackrabbit issue. For more information, please refer to https://issues.apache.org/jira/browse/JCR-3422.
If you encounter a problem as described in ticket JCR-2712 please contact the Stardust Support.
If you encounter a problem as described in ticket JCR-2554 please contact the Stardust Support.
Note that the following archive Sysconsole commands with model deletion should only be performed in maintenance windows without workflow, otherwise this might lead to inconsistency in the audit trail:
archive -deadModelsarchive -model oidFor details on the Sysconsole archive command, refer to section Audit Trail Archive Administration of chapter The Sysconsole Command.
Due to a bug in Maven version 3.0.4, you might face
problems using this version while downloading dependencies from behind a proxy.
In this case either switch to Maven version 3.0.3 or download the following jar:
http://repo.maven.apache.org/maven2/org/apache/maven/wagon/wagon-http-lightweight/2.2/wagon-http-lightweight-2.2.jar
and add it to the lib/ext folder in your Maven installation.
If you experience any problems in using the Stardust archetype catalog
or in building Maven projects using M2Eclipse, this might be due to the fact
that your M2Eclipse is configured to use the embedded Maven version that ships
with it. Unless you configured it accordingly, this Maven version uses another
settings.xml which does not contain the credentials and repositories
required to access the archetype catalog and the artifacts in the repository.
To solve this problem, change the Maven version used by M2Eclipse to a correctly
configured Maven version. To set the location of your Maven installation do the
following:

After creating a new project based on archetypes, a missing HttpServlet class error is displayed in the Problems view due to an issue with the m2e-wtp Eclipse plugin. The plugin enables the JavaServer Faces project facet, because it identifies JSF dependencies, and thus also applies additional files to the project. To avoid this issue, do the following:

Note that to view the internationalized entry of the Rename option from the context menu of model and model elements, you need to download the GEF language bundle, as it is not, by default, part of the Eclipse Mars installation. Refer the following links to download the language bundle:
Stardust Portal is not provided for Dynamic Web module version 3.0.
You need to use Dynamic web module_version 2.5.
For the time being only these versions are supported. For details refer to chapter
Creating a Dynamic Web Project in Eclipse of the
Rapid Application Development guide.
For the time being, the internal Web browser is not supported. Use your default external Web browser, which you can set in the Windows preferences.
Currently there is no automated facility for upgrading the libraries contained in existing Dynamic Web Projects with Process Manager facets to the most recent Stardust version. In that case you have to upgrade the Process Manager facets manually as described in detail in the section Upgrading Process Manager Facets of the chapter Creating a Dynamic Web Project in Eclipse.
Intermediate events can be modeled in the Modeling perspective only and are not compatible with the Eclipse-based modeler. Models containing intermediate events may cause inconsistency warnings and errors when opened in the Eclipse-based modeler, which may prevent direct deployment from the Eclipse-based modeler.
However, it is possible to import these models in Eclipse and edit model elements other than intermediate events, but no change should be performed on activities with intermediate events including transitions.
The limit of the list size which can be used with the new feature without running into transactional errors or performance issues depends on the layout of the runtime environment. For the standard setup on a small machine (4 cores) list sizes up to 10000 entries have been tested before running into transactional problems.
Primitive Enumeration types are not supported to be used as formal parameters for SOAP and REST external process invocation calls. Use a structured data type embedding the required Enumeration type instead.
For the time being, to use a Structured Data Type as Document Type, you need to create a Structured Data Type as well as a data object for the Structured Data Type. For details refer to chapter Document Types in the Concepts section.
Currently the following XSD types will be converted as in the following table for the usage in Message Transformation applications or transition conditions:
| XSD Type | Java type | JavaScript type |
|---|---|---|
| anySimpleType | java.lang.String | String |
| anyURI | java.lang.String | String |
| base64Binary | java.lang.String | String |
| boolean | java.lang.Long | Number |
| byte | java.lang.Byte | Number |
| date | java.lang.Long | Number |
| dateTime | java.lang.Long | Number |
| decimal | java.lang.String | String |
| double | java.lang.Double | Number |
| duration | org.eclipse.stardust.common.Period | String |
| ENTITIES | java.lang.String | String |
| ENTITY | java.lang.String | String |
| float | java.lang.Float | Number |
| gDay | java.lang.String | String |
| gMonth | java.lang.String | String |
| gMonthDay | java.lang.String | String |
| gYear | java.lang.String | String |
| gYearMonth | java.lang.String | String |
| hexBinary | java.lang.String | String |
| ID | java.lang.String | String |
| IDREF | java.lang.String | String |
| IDREFS | java.lang.String | String |
| int | java.lang.Integer | Number |
| integer | java.lang.Integer | Number |
| language | java.lang.String | String |
| long | java.lang.Long | Number |
| Name | java.lang.String | String |
| NCName | java.lang.String | String |
| negativeInteger | java.lang.Integer | Number |
| NMTOKEN | java.lang.String | String |
| NMTOKENS | java.lang.String | String |
| nonNegativeInteger | java.lang.Integer | Number |
| nonPositiveInteger | java.lang.Integer | Number |
| normalizedString | java.lang.String | String |
| NOTATION | java.lang.String | String |
| positiveInteger | java.lang.Integer | Number |
| QName | java.lang.String | String |
| short | java.lang.Short | Number |
| string | java.lang.String | String |
| time | java.lang.Long | Number |
| token | java.lang.String | String |
| unsignedByte | java.lang.Byte | Number |
| unsignedInt | java.lang.Integer | Number |
| unsignedLong | java.lang.Long | Number |
| unsignedShort | java.lang.Short | Number |
Please note that decimal xsd types are mapped as String values and thus are compared like Strings in transition conditions. To avoid this, use a Number typecast, e.g.:
Number(StructData1.decimal) > Number(StructData.decimal2)
Note that Activity State Change Event handling is not supported with a source state N/A
in combination with a target state created.
The usage of structured type definitions of another model in the local definition of structured types, which is supported in the Portal Modeling perspective, is not supported yet in the Eclipse modeler. For the time being, we recommend not to use the Eclipse modeler once you are using structured data types having embedded cross-model structured data types or parameter interface definitions that use cross-model structured data types.
The primitive data type Calendar can cause problems when used in queries.
This type is mainly required for the predefined Business Date data, which consists as
timestamp plus timezone and can be used in queries without causing problems.
For other data we recommend to use type Timestamp instead.
In general models produced or modified by the Stardust modeler can be
edited with other tools that supports XPDL 1.0
standard. However, the Stardust modeler is maintaining
specific information for most of the model elements in an ExtendedAttribute
with the name "CarnotExt".
In certain cases, these elements may refer to standard identifiers. For example the diagram information is stored exclusively in the extended attribute, however it has references to workflow objects defined in the standard XPDL part.
A concrete example is the carnot:Symbol
(Kind="ACTIVITY"). This symbol has a live reference to the actual
activity, and namely the field ModelElement contains the Id of
the activity that it refers to. Similarly affected are carnot:Connection
(Kind="TRANSITION") that refers a transition as well as the carnot:Symbols
with the kind "DATA", "ROLE", "APPLICATION" or "PROCESS".
When modifying the Id of a workflow element or
deleting the element that is referenced by such a diagram symbol, please
take care to synchronize the respective reference (attribute
"ModelElement") in the carnot:Symbol or carnot:Connection.
If such synchronization is not performed then dangling references may
result or references can point to an element of a different type. In the
latter case, the Stardust modeler will no longer be
able to load the model due to ClassCastExceptions.
Following are the limitations for the manual activity converted to JSF application activity in previous versions of Stardust:
Some identifiers, which can be used in structured data types, are not supported in JavaScript. The following identifiers are not supported:
whereby underscores, digits or dots not used as first character are supported (e.g. first_data, data1, data.dot).
In case you use identifiers containing hyphens or dots in JavaScript, like in message transformations or transition conditions, you can set the identifier in square brackets and quotation marks as a workaround. Refer to section Restrictions on identifiers of chapter Message Transformation Application Type and section Restrictions on identifiers of chapter Working with Transitions respectively for details.
A Document properties map is described by a schema set as DocumentType. Note that no automatic validation is provided of the map against the schema defined by DocumentType. Therefore, when validating the schema manually against the map of meta-data, a collision may occur due to the properties set by the Stardust Portal. It is recommended not to use them in order to avoid collision.
The following list documents all document properties that Stardust Portal attaches to a document:
The following restrictions exist in the Portal UI HTML5 Framework Application Shell:
Worklist will not refresh itself automatically when the View is activated by tab switch or by clicking on it. It will refresh only when any activity was previously activated from the Worklist View. Note that this is not related to auto-refresh settings of worklist configuration. The auto-refresh settings would still refresh at specified time interval.
The API is not yet available via WebServices API for Multi model audit trail setup.
Due to the synchronous operation of a relocation, spawning into multiple activities, e.g. as resulted from an AND split, might not work as expected in the following scenario:
Please refer to chapter Relocating Activities in the Programming Guide for details.
The Modeling perspective currently has the following restrictions:
Switching the primary implementation for a running process has the following restrictions:
As long as a process instance is executed transiently, pull events, i.e. events triggered by the event daemon, are not processed. Instead a warning is logged whenever a transient process instance having a pull trigger event bound is written to the in-memory storage. This can be the case for example if its transaction is committed. The according log message looks as follows:
Event binding 'Event binding [oid = 1, type = 2, model oid = 2, object oid = 1, handler oid = 2]' applies to a transient process instance and will therefore not be processed by the event daemon.
For the time being, you need to append _field to each variable in the code
editor of a technical rule in the Rules Management perspective. Refer
to chapter
Defining Technical Rules for details.
With the default configuration as shipped, the usage of JPA is supported only on JBoss.
Making the EntityManager and EntityManagerFactories available in the JNDI scope of the Stardust Process Engine for other application servers is not impossible but will impose some restrictions when packaging and configuring your enterprise application. Please contact the Stardust Support team if you have the need to integrate JPA on these application server platforms.
In JBoss, the EntityManager and EntityManagerFactories can be bound
in the global JNDI by setting the following properties in the
persistence.xml file:
<property name="jboss.entity.manager.jndi.name" value="java:/DemoProject_JPA" /> <property name="jboss.entity.manager.factory.jndi.name" value="java:/DemoProject_JPA_factory" />
Note that Structured data list values are not supported for Data Clusters as they would require more than one entry in the data slot.
As MySQL/MSSQL always performs a case insensitive String comparison, the
usage of the Boolean parameter caseSensitive in a
DataFilter
query will have no effect when using MySQL/MSSQL.
Note that property AuditTrail.UsePreparedStatements with a value set to
false should only be used for debugging purposes. In production
scenarios please use values true or mixed instead.
With the implementation of Document Type concept, the document properties map is described by a schema set as DocumentType. No automatic validation is provided of the map against the schema defined by DocumentType. Therefore, when validating the schema manually against the map of meta-data; collision may occur due to the properties set by the Stardust Portal. It is recommended to not to use them in order to avoid collision.
Following is the list of document properties that Stardust Portal attaches to a document.
The following modifications need to be applied in the JBoss 7.1 server:
Due to an issue, the JBoss default JSF implementation cannot be changed as
param WAR_BUNDLES_JSF_IMPL is not working in JBoss 7.1.1.
(WAR file using WAR_BUNDLES_JSF_IMPL embedded in an EAR file fails deployment).
It is caused by the issue:
(JSF Version retrieved from deployment unit instead of top level deployment unit)
As a workaround, rename the .tld files in the
com/sun/jsf-impl/main module in jsf-impl-2.1.7-jbossorg-2.jar/META-INF
to e.g. *-tmp.tld.
While deploying JBoss 7.1 for EJB 3, the following exception may occur:
org.jboss.msc.service.ServiceNotFoundException: Service
service jboss.ejb.default-resource-adapter-name-service not found
For a successful deployment, add the following under <subsystem xmlns="urn:jboss:Domain:ejb3:1.4">
of the standalone.xml file:
<mdb> <resource-adapter-ref resource-adapter-name="hornetq-ra"/> <bean-instance-pool-ref pool-name="mdb-strict-max-pool"/> </mdb>
Full text search for document meta-data
properties is only possible if they are modeled as xsd:string.
Filtering the CMIS DMS Provider repository is currently restricted to filter searches by Document name only.
The following restrictions apply to the relocation functionality:
Active activities are aborted and only one activity can be defined to be the starting activity for the new process instance.
The history of the original process instance is available and identifiable only indirectly via the link feature in the Stardust portal.
UI Mashup applications have the following restrictions:
The following XSD types are not supported for a Business Object Instance search:
| XSD Type | Short Name |
|---|---|
| date | Date |
| dateTime | Date and Time |
| double | Scientific high precision |
| float | Scientific regular precision |
When audit trail import / export functionality is configured to be active, for some runtime platforms, interactions involving asynchronous engine operations may be delayed.