Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
Info |
---|
The following are |
...
the steps and issues when installing Joget Workflow Enterprise Edition |
...
v5 on other Java EE application servers. Please |
...
do contribute to this article with your experiences. |
...
...
1. There is an issue with JSP parsing for certain functions https://www.ibm.com/developerworks/community/forums/html/topic?id=77777777-0000-0000-0000-000014934503. This causes a JSP compilation issue in jw/WEB-INF/jsp/console/app/processView.jsp.
Caused by: javax.el.ELException: Function 'fn:escapeXml' not found at org.apache.el.lang.ExpressionBuilder.visit(ExpressionBuilder.java:197) at org.apache.el.parser.SimpleNode.accept(SimpleNode.java:151) at org.apache.el.lang.ExpressionBuilder.prepare(ExpressionBuilder.java:155) at org.apache.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:173) at org.apache.el.lang.ExpressionBuilder.createValueExpression(ExpressionBuilder.java:216) at org.apache.el.ExpressionFactoryImpl.createValueExpression(ExpressionFactoryImpl.java:67) at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:777) at com.ibm._jsp._processView._jspx_meth_c_forEach_0(_processView.java:4001) at com.ibm._jsp._processView._jspService(_processView.java:404)
Code Block |
---|
Caused by: javax.el.ELException: Function 'fn:escapeXml' not found
at org.apache.el.lang.ExpressionBuilder.visit(ExpressionBuilder.java:197)
at org.apache.el.parser.SimpleNode.accept(SimpleNode.java:151)
at org.apache.el.lang.ExpressionBuilder.prepare(ExpressionBuilder.java:155)
at org.apache.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:173)
at org.apache.el.lang.ExpressionBuilder.createValueExpression(ExpressionBuilder.java:216)
at org.apache.el.ExpressionFactoryImpl.createValueExpression(ExpressionFactoryImpl.java:67)
at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:777)
at com.ibm._jsp._processView._jspx_meth_c_forEach_0(_processView.java:4001)
at com.ibm._jsp._processView._jspService(_processView.java:404)
|
In jw.war, replace that file with the updated one attached here. This change will be included in 4.0.12 onwards.
2. Deploy the updated jw and jwdesigner WARs
1. There is an exception when deploying jw.war due to invalid content in jw/WEB-INF/web.xml
Code Block |
---|
Exception while deploying the app [jw] : org.xml.sax.SAXParseException; lineNumber: 112; columnNumber: 24; Deployment descriptor file WEB-INF/web.xml in archive [jw]. cvc-complex-type.2.4.a: Invalid content was found starting with element 'tracking-mode'. One of '{"http://java.sun.com/xml/ns/j2ee":session-timeout}' is expected. org.xml.sax.SAXParseException; lineNumber: 112; columnNumber: 24; Deployment descriptor file WEB-INF/web.xml in archive [jw]. cvc-complex-type.2.4.a: Invalid content was found starting with element 'tracking-mode'. One of '{"http://java.sun.com/xml/ns/j2ee":session-timeout}' is expected. at com.sun.enterprise.deployment.io.DeploymentDescriptorFile.read(DeploymentDescriptorFile.java:324)
at com.sun.enterprise.deployment.io.DeploymentDescriptorFile.read(DeploymentDescriptorFile.java:245)
at com.sun.enterprise.deployment.archivist.Archivist.readStandardDeploymentDescriptor(Archivist.java:665)
|
Modify the web.xml to comment or remove the tracking-mode tag i.e.
Code Block |
---|
<!--
<session-config>
<tracking-mode>COOKIE</tracking-mode>
</session-config>
-->
</session-config> -->
|
...
GlassFish runs an older version of the Apache Felix OSGI container, so there is a class loader conflict.
Code Block |
---|
java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.apache.felix.framework.wiring.BundleCapabilityImpl.getResource()Lorg/osgi/resource/Resource;"
the class loader (instance of org/glassfish/web/loader/WebappClassLoader) of the current class, org/apache/felix/framework/wiring/BundleCapabilityImpl, and the class loader (instance of java/net/URLClassLoader) for interface org/osgi/resource/Capability have different Class objects for the type tyImpl.getResource()Lorg/osgi/resource/Resource; used in the signature
|
To mitigate this, we will need to downgrade the Apache Felix libraries before deploying to GlassFish.