Web Application Deployment Descriptor

The web.xml file is the standard Web application deployment descriptor file of your project. You find it in your WebContent/WEB-INF folder of your Web project. It contains entries, like initialization parameters, servlets and other components.

Default Parameters

The following sections provide lists of the default entries required for running the Infinity Process Platform Portal.

Note that some parameters differ for usage in an external environment. These parameters are provided with a comment in the table entries.

context-parameter

The following context parameters are available:

Name Default Value
ag.carnot.processportal.integration.LIVE_DIAGRAMS_URL /eclipse/servlet/DiagramServlet
HTML_ENABLE_AGENTSTYLE_ENGINE true
URL_REPORT_PATH_POLICY all
javax.faces.STATE_SAVING_METHOD server
facelets.DEVELOPMENT true
facelets.SKIP_COMMENTS true
facelets.VIEW_MAPPINGS *.xhtml;*.jspx
javax.faces.CONFIG_FILES /WEB-INF/config/ipp/jsf/faces-config.xml,/WEB-INF/config/ipp/jsf/processportal-beans.xml
carnot.login.APPLICATION_ID processPortal
carnot.login.ADMINISTRATOR_ROLE_REQUIRED false
carnot.login.MODEL_REQUIRED false
carnot.login.HEADING portal-common-messages#portalFramework.title
com.infinity.bpm.portal.common.logoutURI /ipp/common/ippPortalLogout.jsp
carnot.SESSION_LISTENERS ippRADProcessPortalSessionInitializer,businessControlCenterInitializer, ippAdmPortalSessionListenerBean
ag.carnot.processportal.integration.BUSINESSCONTROLCENTER_URL ../../../plugins/common/portalFramework.iface
com.icesoft.faces.uploadMaxFileSize 10485760
facelets.RESOURCE_RESOLVER org.eclipse.stardust.ui.web.viewscommon.common.PortalPluginFaceletsResourceResolver
javax.faces.DEFAULT_SUFFIX .xhtml
com.icesoft.faces.delegateNonIface true
com.icesoft.faces.synchronousUpdate false
com.icesoft.faces.concurrentDOMViews true
com.icesoft.faces.ignoreUserRoleAttributes true
org.apache.myfaces.trinidad.DISABLE_DIALOG_OUTCOMES true
contextConfigLocation WEB-INF/config/ipp/spring/*-context.xml,WEB-INF/jax-ws-cxf-context.xml,classpath*:META-INF/spring/*-context.xml

filter

The filters used for the portal are:

Name Class Init Parameter Init Parameter Value
portalPluginContentFilter org.eclipse.stardust.ui.web.plugin.support.PortalPluginContentFilter
IppPortalLoginFilter org.eclipse.stardust.ui.web.viewscommon.login.filter.LoginFilter
IppPortalCharsetFilter org.eclipse.stardust.ui.web.viewscommon.common.CharsetFilter requestEncoding UTF-8
touchSessionFilter com.icesoft.faces.webapp.http.servlet.TouchSessionFilter
Shell Index Redirecting Filter org.eclipse.stardust.ui.web.html5.HTML5LandingPageFilter landingPage /shell/index.html
Jar Resource Filter org.eclipse.stardust.ui.web.html5.EnhancedJarResourceFilter replacePattern

skipPaths

skipExtenssions

restrictLibs
/main.html

/plugins,/services/rest

.xhtml,.jsp,.class,.xml,.properties

html5-framework

filter-mapping

The following filter-mapping entries are required:

Name Servlet Name / URL Pattern
portalPluginContentFilter /plugins/*
portalPluginContentFilter /skins/*
IppPortalLoginFilter *.iface (Dispatcher: REQUEST, FORWARD)
IppPortalCharsetFilter /uploadHtml
touchSessionFilter /services/rest/*
Shell Index Redirecting Filter /main.html (Dispatcher: REQUEST, FORWARD)
Jar Resource Filter /* (Dispatcher: REQUEST, FORWARD)

listener

The following listener classes should be included:

servlet

The following servlets are used for the portals:

equinoxbridgeservlet

Servlet class: org.eclipse.equinox.servletbridge.BridgeServlet.

Initialization Parameters:

Parameter Name Value
commandline
enableFrameworkControls true
extendedFrameworkExports
frameworkLauncherClass org.eclipse.equinox.servletbridge.FrameworkLauncher
carnotPlatformDir carnot-diagrams

MailConfirmationServlet

Servlet class: org.eclipse.stardust.engine.extensions.mail.web.servlet.MailApplicationReceptionServlet.

Initialization Parameters:

Parameter Name Value
successPage
errorPage
user motu
password motu

DmsContentServlet

Servlet class: org.eclipse.stardust.engine.api.web.dms.DmsContentServlet.

SkinContentServlet

Servlet class: org.eclipse.stardust.ui.client.dms.SkinContentServlet

Persistent Faces Servlet

Servlet class: com.icesoft.faces.webapp.xmlhttp.PersistentFacesServlet.

Blocking Servlet

Servlet class: com.icesoft.faces.webapp.xmlhttp.BlockingServlet.

cxf-jaxws-servlet

Servlet class: org.eclipse.stardust.engine.ws.servlet.DynamicCXFServlet.

cxf-jaxrs-servlet

Servlet class: org.apache.cxf.transport.servlet.CXFServlet.

Parameter Name Value
disable-address-updates true

carnot-spring-remoting

Servlet class: org.springframework.web.servlet.DispatcherServlet.

Parameter Name Value
contextConfigLocation /WEB-INF/config/ipp/spring/carnot-spring-remoting-servlet.xml

IppPdfRendererServlet

Servlet class: org.eclipse.stardust.ui.web.viewscommon.views.document.pdf.viewer.PdfRenderer.

IppTiffRendererServlet

Servlet class: org.eclipse.stardust.ui.web.viewscommon.views.document.tiff.TiffRenderer.

FsdContentServlet

Servlet class: org.eclipse.stardust.ui.web.viewscommon.docmgmt.FileSystemDocumentServlet.

resetServlet

Servlet class: org.eclipse.stardust.ui.web.viewscommon.login.ResetPasswordServlet

IppUploadServlet

Servlet class: com.icesoft.faces.component.inputfile.FileUploadServlet.

Faces Servlet

Servlet class: javax.faces.webapp.FacesServlet

servlet-mappings

Name URL Pattern
equinoxbridgeservlet /eclipse/*
MailConfirmationServlet /mail-confirmation
DmsContentServlet /dms-content/*
FsdContentServlet /fsd-content/*
Persistent Faces Servlet *.iface
Persistent Faces Servlet /xmlhttp/*
Blocking Servlet /block/*
cxf-jaxws-servlet /services/soap/*
cxf-jaxrs-servlet /services/rest/*
carnot-spring-remoting /remoting/*
IppPdfRendererServlet /IppPdfRenderer
IppTiffRendererServlet /IppTiffRenderer
IppUploadServlet /uploadHtml
SkinContentServlet /skin-content/*
resetServlet /resetServlet/*
Faces Servlet /faces/*

welcome-file-list

Specify the following welcome file: index.jsp.

<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

resource-ref

The following resource-ref element is added to define a JNDI name for the database connection and the according data source:

<resource-ref>
    <res-ref-name>jdbc/AuditTrail.DataSource</res-ref-name>
    <res-type>javax.sql.DataSource</res-type>
    <res-auth>Container</res-auth>
    <res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>

Additional Customizing Parameters

The following parameters can be used to customize the Infinity Process Platform Portal:

Name Default Value Description
com.icesoft.faces.connectionTimeout 60000 (ms) This parameter defines how long, in milliseconds, the bridge will wait for a response from the server for a user-initiated request before declaring a connection lost.

Enabling Cross-Origin Resource Sharing

Per default, cross-origin resource sharing (CORS) is not enabled for usage in the Portal. CORS is for example required for cross domain requests and to embed Portal UI widgets. To enable CORS, enter the following CORS filter to your web.xml file:

<filter>
   <filter-name>CorsFilter</filter-name>
   <filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
   <init-param>
      <param-name>cors.allowed.origins</param-name>
      <param-value>http://ap-pun-lp1859:9091</param-value>
   </init-param>
   <init-param>
      <param-name>cors.allowed.headers</param-name>
      <param-value>Content-Type,X-Requested-With,accept,Origin,Access-Control-Request-Method,Access-Control-Request-Headers,Accept-Language</param-value>
   </init-param>
   <init-param>
      <param-name>cors.allowed.methods</param-name>
      <param-value>GET,POST,HEAD,OPTIONS,PUT</param-value>
   </init-param>
</filter>
<filter-mapping>
   <filter-name>CorsFilter</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>