After upgrading to V5.X, convert stream rules to use JSP tags rather than directives
Symptom
When upgrading an application to V5.X that was originally developed in V4.1, you may encounter runtime errors from rules that generate HTML code (such as harness, section, flow action, and HTML property rules.).
Errors vary depending upon the problem encountered. You can eliminate these errors by editing the rules.
Solution
Explanation
Beginning with V4.2, JavaServer Pages (JSP) tags are available as an alternative to proprietary Process Commander directives for HTML generation.
However, by default in V4.2, new rules that contain HTML or XML code (such as harness rules, section rules, flow action rules, and XML rules) used directives rather than JSP tags. The Generate for field (on the HTML tab of the rule form) is set to HTML
rather than JSP
to achieve this default behavior.
Beginning with V5.1, the default value of the Generate for field is set to JSP
rather than HTML
, so JavaServer Page tags are included in the automatically-generated HTML code.
Rules created in V4.2 or later operate correctly in V5.X regardless of whether JSP tags or HTML directives are used. There is no requirement to convert them to JSP or to resave such rules.
However, your upgraded V4.1 application may contain rules that you created in Version 4.1, where the JSP option was not available. If you open such a rule in Version 5.1, the Generate for field is set to JSP
, by default.
If you save such a rule in V5.1 with the JSP default, then at runtime the system cannot correctly evaluate any directives, with unpredictable results (and probably many errors).
Workaround
In V5.1, when you save a stream-based rule form that has Generate for field set to JSP
but also contains curly brace characters { and }, a warning appears. Review such rules to determine whether the rule contains directives. If so, you must either change the Generate for setting to HTML or convert the rule to use only JSP tags.
Because in 2005 JavaServer Pages are a popular, open-source standard, use of JSP tags rather than proprietary HTML directives is the recommended approach.