primefaces
Used in
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>org.primefaces</groupId> <artifactId>primefaces</artifactId> <version>15.0.1</version> </dependency>
<?xml version="1.0" encoding="UTF-8"?> <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.primefaces</groupId> <artifactId>primefaces-parent</artifactId> <version>15.0.1</version> <relativePath>../pom.xml</relativePath> </parent> <artifactId>primefaces</artifactId> <packaging>jar</packaging> <name>PrimeFaces</name> <properties> <minify.disabled>true</minify.disabled> <jakarta.jar.skip>false</jakarta.jar.skip> <cyclonedx.skip>true</cyclonedx.skip> <resources.dir.compressed>${project.build.directory}/classes/META-INF/resources/primefaces</resources.dir.compressed> <mockito.version>5.15.2</mockito.version> <sonar.sources>src/main/java,src/main/resources</sonar.sources> <sonar.skip>false</sonar.skip> </properties> <dependencies> <dependency> <groupId>org.apache.tomee</groupId> <artifactId>javaee-api</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.glassfish</groupId> <artifactId>jakarta.faces</artifactId> <scope>provided</scope> </dependency> <!-- shaded dependencies, dont put it into dependencyManagement, it will overwrite e.g. commons-io version from POI --> <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20250107</version> <optional>true</optional> </dependency> <dependency> <groupId>org.owasp.encoder</groupId> <artifactId>encoder</artifactId> <version>1.3.1</version> <optional>true</optional> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.15.1</version> <optional>true</optional> </dependency> <!-- Data Exporter --> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <exclusions> <exclusion> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> </exclusion> <exclusion> <groupId>org.apache.commons</groupId> <artifactId>commons-math3</artifactId> </exclusion> <exclusion> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> </exclusion> <exclusion> <groupId>com.zaxxer</groupId> <artifactId>SparseBitSet</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> </exclusion> <exclusion> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> </exclusion> </exclusions> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <exclusions> <exclusion> <groupId>org.apache.commons</groupId> <artifactId>commons-compress</artifactId> </exclusion> <exclusion> <groupId>com.github.virtuald</groupId> <artifactId>curvesapi</artifactId> </exclusion> <exclusion> <groupId>org.apache.xmlgraphics</groupId> <artifactId>batik-all</artifactId> </exclusion> <exclusion> <groupId>org.apache.santuario</groupId> <artifactId>xmlsec</artifactId> </exclusion> <exclusion> <groupId>de.rototor.pdfbox</groupId> <artifactId>graphics2d</artifactId> </exclusion> <exclusion> <groupId>org.bouncycastle</groupId> <artifactId>bcpkix-jdk15on</artifactId> </exclusion> <exclusion> <groupId>org.bouncycastle</groupId> <artifactId>bcprov-jdk15on</artifactId> </exclusion> <exclusion> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> </exclusion> </exclusions> <scope>provided</scope> </dependency> <dependency> <groupId>com.github.librepdf</groupId> <artifactId>openpdf</artifactId> <scope>provided</scope> </dependency> <!-- FeedReader --> <dependency> <groupId>com.apptasticsoftware</groupId> <artifactId>rssreader</artifactId> <scope>provided</scope> </dependency> <!-- JAXB for JDK11+--> <dependency> <groupId>jakarta.xml.bind</groupId> <artifactId>jakarta.xml.bind-api</artifactId> <version>2.3.3</version> <scope>provided</scope> </dependency> <!-- Barcode --> <dependency> <groupId>uk.org.okapibarcode</groupId> <artifactId>okapibarcode</artifactId> <scope>provided</scope> </dependency> <!-- Test --> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-engine</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-params</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>${mockito.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>de.odysseus.juel</groupId> <artifactId>juel-impl</artifactId> <version>2.2.7</version> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-jasper-el</artifactId> <version>9.0.97</version> <scope>test</scope> </dependency> <!-- Content type validation in FileUploadUtilsTest --> <dependency> <groupId>org.overviewproject</groupId> <artifactId>mime-types</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-nop</artifactId> <version>2.0.16</version> <scope>test</scope> </dependency> <!-- Cache --> <dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> <version>2.10.9.2</version> <scope>provided</scope> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.ehcache</groupId> <artifactId>ehcache</artifactId> <version>3.9.9</version> <scope>provided</scope> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>net.sf.saxon</groupId> <artifactId>Saxon-HE</artifactId> <version>12.5</version> <scope>test</scope> </dependency> <dependency> <groupId>com.googlecode.owasp-java-html-sanitizer</groupId> <artifactId>owasp-java-html-sanitizer</artifactId> <scope>provided</scope> </dependency> </dependencies> <build> <pluginManagement> <plugins> <plugin> <groupId>com.github.eirslett</groupId> <artifactId>frontend-maven-plugin</artifactId> <version>1.15.1</version> <configuration> <installDirectory>${project.build.directory}</installDirectory> <nodeVersion>v20.11.1</nodeVersion> <npmVersion>10.1.0</npmVersion> <workingDirectory>${basedir}/src/main/type-definitions</workingDirectory> </configuration> <executions> <execution> <id>install node and npm</id> <goals> <goal>install-node-and-npm</goal> </goals> <phase>initialize</phase> </execution> <execution> <id>npm install</id> <goals> <goal>npm</goal> </goals> <phase>initialize</phase> <configuration> <arguments>install</arguments> </configuration> </execution> <execution> <id>validate-tool</id> <goals> <goal>npm</goal> </goals> <phase>test</phase> <configuration> <arguments>run validate</arguments> </configuration> </execution> <execution> <id>test-tool</id> <goals> <goal>npm</goal> </goals> <phase>test</phase> <configuration> <arguments>run test</arguments> </configuration> </execution> <execution> <id>generate-type-declaration</id> <goals> <goal>npm</goal> </goals> <phase>prepare-package</phase> <configuration> <arguments>run generate-d-ts -- --packagejson src/main/type-definitions/package.json</arguments> </configuration> </execution> <execution> <id>publish-to-npm</id> <goals> <goal>npm</goal> </goals> <phase>deploy</phase> <configuration> <arguments>run npm-publish -- --major ${parsedVersion.majorVersion} --minor ${parsedVersion.minorVersion} --readme src/main/type-definitions/NPM.md --extrafiles ../LICENSE --prompt false --username ${npm.username} --password ${npm.password} --email ${npm.email} --token ${npm.token} --otp=${npm.otp}</arguments> </configuration> </execution> </executions> </plugin> <plugin> <groupId>com.github.matinh.vdldoc</groupId> <artifactId>vdldoc-maven-plugin</artifactId> <version>2.1</version> <configuration> <destDir>../../../docs/vdldoc</destDir> </configuration> <dependencies> <dependency> <groupId>org.omnifaces</groupId> <artifactId>vdldoc</artifactId> <version>3.2</version> </dependency> </dependencies> </plugin> <plugin> <groupId>org.cyclonedx</groupId> <artifactId>cyclonedx-maven-plugin</artifactId> <version>2.9.1</version> <executions> <execution> <phase>package</phase> <goals> <goal>makeAggregateBom</goal> </goals> </execution> </executions> </plugin> </plugins> </pluginManagement> <defaultGoal>install</defaultGoal> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> <excludes> <exclude>META-INF/resources/primefaces/schedule/build/**/*</exclude> </excludes> </resource> </resources> <testResources> <testResource> <directory>src/test/resources</directory> </testResource> </testResources> <extensions> <extension> <groupId>org.apache.maven.wagon</groupId> <artifactId>wagon-ssh</artifactId> <version>3.5.3</version> </extension> </extensions> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile> <manifest> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> </manifest> <manifestEntries> <Automatic-Module-Name>org.primefaces</Automatic-Module-Name> </manifestEntries> </archive> <excludes> <!-- Remove all Typescript files as not needed --> <exclude>**/META-INF/resources/**/*.ts</exclude> </excludes> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-clean-plugin</artifactId> <version>3.4.0</version> <configuration> <filesets> <fileset> <directory>src/main/type-definitions/node_modules</directory> <followSymlinks>false</followSymlinks> </fileset> </filesets> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <version>3.6.0</version> <executions> <execution> <id>parse-version</id> <goals> <goal>parse-version</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.felix</groupId> <artifactId>maven-bundle-plugin</artifactId> <version>5.1.9</version> <extensions>true</extensions> <configuration> <supportedProjectTypes> <supportedProjectType>jar</supportedProjectType> </supportedProjectTypes> <instructions> <Export-Package> org.primefaces.*;version="${project.version}", org.primefaces.shaded.json;version="${project.version}", org.primefaces.shaded.commons;version="${project.version}", org.primefaces.shaded.commons.io;version="${project.version}", org.primefaces.shaded.commons.io.input;version="${project.version}", org.primefaces.shaded.owasp.encoder;version="${project.version}" </Export-Package> <Import-Package> javax.faces.component.search;resolution:=optional, javax.faces.component.search.*;resolution:=optional, javax.faces.flow;resolution:=optional, javax.faces;version="[2.0.0,3.0.0)", javax.faces.*;version="[2.0.0,3.0.0)", javax.inject;resolution:=optional, javax.inject.*;resolution:=optional, javax.enterprise;resolution:=optional, javax.enterprise.*;resolution:=optional, javax.validation;resolution:=optional, javax.validation.*;resolution:=optional, javax.validation.executable;resolution:=optional, javax.servlet;version="[3,5)", javax.servlet.annotation;version="[3,5)", javax.servlet.descriptor;version="[3,5)", javax.servlet.http;version="[3,5)", javax.*, com.sun.faces;resolution:=optional, net.glxn.qrgen;resolution:=optional, org.krysalis.barcode4j.output;resolution:=optional, org.owasp.html;resolution:=optional, org.apache.myfaces.view.facelets;resolution:=optional, *;resolution:=optional </Import-Package> <Require-Capability> osgi.serviceloader;filter:="(osgi.serviceloader=org.primefaces.virusscan.VirusScanner)";cardinality:=multiple, osgi.extender;filter:="(osgi.extender=osgi.serviceloader.processor)";resolution:=optional, osgi.extender;filter:="(osgi.extender=osgi.serviceloader.registrar)" </Require-Capability> <Provide-Capability> osgi.serviceloader;osgi.serviceloader=org.primefaces.virusscan.VirusScanner;uses:="org.primefaces.virusscan.impl" </Provide-Capability> </instructions> </configuration> <executions> <execution> <id>bundle-manifest</id> <phase>process-classes</phase> <goals> <goal>manifest</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>com.mycila</groupId> <artifactId>license-maven-plugin</artifactId> <configuration> <licenseSets> <licenseSet> <header>../conf/header.txt</header> <excludes> <exclude>**/json/JSON*.java</exclude> </excludes> </licenseSet> </licenseSets> </configuration> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>license-maven-plugin</artifactId> <version>2.5.0</version> <executions> <execution> <id>aggregate-download-licenses</id> <phase>prepare-package</phase> <goals> <goal>aggregate-download-licenses</goal> </goals> </execution> <execution> <id>add-third-party</id> <goals> <goal>add-third-party</goal> </goals> </execution> </executions> <configuration> <excludedScopes>test,provided</excludedScopes> <outputDirectory>${project.basedir}/target/classes/META-INF/licenses/</outputDirectory> <licensesOutputFile>${project.basedir}/target/classes/META-INF/licenses/licenses-generated.xml</licensesOutputFile> <licensesOutputDirectory>${project.basedir}/target/classes/META-INF/licenses/</licensesOutputDirectory> <licenseUrlReplacements> <licenseUrlReplacement> <regexp>.*BSD-3.*</regexp> <replacement>https://raw.githubusercontent.com/teamdigitale/licenses/master/BSD-3-Clause</replacement> </licenseUrlReplacement> <licenseUrlReplacement> <regexp>.*json.*</regexp> <replacement>https://raw.githubusercontent.com/stleary/JSON-java/master/LICENSE</replacement> </licenseUrlReplacement> </licenseUrlReplacements> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <configuration> <nonFilteredFileExtensions> <nonFilteredFileExtension>eot</nonFilteredFileExtension> <nonFilteredFileExtension>ttf</nonFilteredFileExtension> <nonFilteredFileExtension>woff</nonFilteredFileExtension> <nonFilteredFileExtension>woff2</nonFilteredFileExtension> </nonFilteredFileExtensions> </configuration> </plugin> <plugin> <groupId>org.primefaces.extensions</groupId> <artifactId>resources-optimizer-maven-plugin</artifactId> <version>2.6.5</version> <executions> <execution> <id>optimize</id> <phase>prepare-package</phase> <goals> <goal>optimize</goal> </goals> </execution> </executions> <configuration> <useDataUri>false</useDataUri> <failOnWarning>true</failOnWarning> <imagesDir>${project.build.directory}/classes/META-INF/resources</imagesDir> <languageIn>ECMASCRIPT_2020</languageIn> <languageOut>ECMASCRIPT5</languageOut> <resourcesSets> <resourcesSet> <includes> <include>calendar/**</include> <include>chart/9-chartjs-widget.js</include> <include>clock/**</include> <include>colorpicker/**</include> <include>datepicker/**</include> <include>diagram/**</include> <include>dock/**</include> <include>filedownload/**</include> <include>fileupload/**</include> <include>galleria/**</include> <include>gmap/**</include> <include>hotkey/**</include> <include>idlemonitor/**</include> <include>imagecompare/**</include> <include>imagecropper/**</include> <include>imageswitch/**</include> <include>inputmask/**</include> <include>inputnumber/**</include> <include>keyboard/**</include> <include>keyfilter/**</include> <include>knob/**</include> <include>lifecycle/**</include> <include>log/**</include> <include>mindmap/**</include> <include>organigram/**</include> <include>orgchart/**</include> <include>photocam/**</include> <include>primeicons/*.css</include> <include>printer/**</include> <include>schedule/**</include> <include>scrollpanel/**</include> <include>signature/**</include> <include>stack/**</include> <include>terminal/**</include> <include>texteditor/1-texteditor.js</include> <include>texteditor/1-texteditor-theme.css</include> <include>timeline/**</include> </includes> <aggregations> <aggregation> <inputDir>${resources.dir.compressed}</inputDir> <subDirMode>true</subDirMode> <withoutCompress>${minify.disabled}</withoutCompress> </aggregation> </aggregations> </resourcesSet> <!-- uncompressed widgets --> <resourcesSet> <includes> <include>chart/**</include> <include>texteditor/**</include> </includes> <aggregations> <aggregation> <inputDir>${resources.dir.compressed}</inputDir> <subDirMode>true</subDirMode> <withoutCompress>true</withoutCompress> </aggregation> </aggregations> </resourcesSet> <!-- moment.js (already compressed)--> <resourcesSet> <includes> <include>moment/moment.js</include> <include>moment/moment-java-formatter.js</include> </includes> <aggregations> <aggregation> <inputDir>${resources.dir.compressed}</inputDir> <outputFile>${resources.dir.compressed}/moment/moment.js</outputFile> <withoutCompress>true</withoutCompress> </aggregation> </aggregations> </resourcesSet> <resourcesSet> <includes> <include>core/core.css</include> <include>jquery/jquery.ui.css</include> <include>jquery/jquery.ui.timepicker.css</include> <include>jquery/jquery.ui.pfextensions.css</include> <include>avatar/avatar.css</include> <include>avatargroup/avatargroup.css</include> <include>badge/badge.css</include> <include>card/card.css</include> <include>chip/chip.css</include> <include>chronoline/chronoline.css</include> <include>confirmpopup/confirmpopup.css</include> <include>tag/tag.css</include> <include>skeleton/skeleton.css</include> <include>accordion/accordion.css</include> <include>autocomplete/autocomplete.css</include> <include>blockui/blockui.css</include> <include>carousel/carousel.css</include> <include>columntoggler/columntoggler.css</include> <include>dashboard/dashboard.css</include> <include>datalist/datalist.css</include> <include>datagrid/datagrid.css</include> <include>datascroller/datascroller.css</include> <include>datatable/datatable.css</include> <include>dialog/dialog.css</include> <include>divider/divider.css</include> <include>fieldset/fieldset.css</include> <include>forms/forms.css</include> <include>forms/inputgroup.css</include> <include>grid/grid.css</include> <include>growl/growl.css</include> <include>inplace/inplace.css</include> <include>menu/menu.css</include> <include>messages/messages.css</include> <include>notificationbar/notificationbar.css</include> <include>orderlist/orderlist.css</include> <include>overlaypanel/overlaypanel.css</include> <include>panel/panel.css</include> <include>panelgrid/panelgrid.css</include> <include>paginator/paginator.css</include> <include>picklist/picklist.css</include> <include>progressbar/progressbar.css</include> <include>rating/rating.css</include> <include>scrolltop/scrolltop.css</include> <include>spinner/spinner.css</include> <include>splitter/splitter.css</include> <include>speeddial/speeddial.css</include> <include>tabview/tabview.css</include> <include>tagcloud/tagcloud.css</include> <include>toolbar/toolbar.css</include> <include>tooltip/tooltip.css</include> <include>tree/tree.css</include> <include>treetable/treetable.css</include> <include>wizard/wizard.css</include> <include>chips/chips.css</include> <include>sidebar/sidebar.css</include> <include>staticmessage/staticmessage.css</include> <include>dataview/dataview.css</include> <include>datepicker/datepicker.css</include> <include>toggleswitch/toggleswitch.css</include> </includes> <aggregations> <aggregation> <inputDir>${resources.dir.compressed}</inputDir> <outputFile>${resources.dir.compressed}/components.css</outputFile> <withoutCompress>${minify.disabled}</withoutCompress> </aggregation> </aggregations> </resourcesSet> <resourcesSet> <includes> <include>jquery/jquery.browser.js</include> <include>core/js.cookie.js</include> <include>core/core.js</include> <include>core/core.env.js</include> <include>core/core.ajax.js</include> <include>core/core.csp.js</include> <include>core/core.expressions.js</include> <include>core/core.utils.js</include> <include>core/core.widget.js</include> <include>core/core.resources.js</include> <include>core/core.clientwindow.js</include> <include>ajaxexceptionhandler/ajaxexceptionhandler.js</include> <include>ajaxstatus/ajaxstatus.js</include> <include>poll/poll.js</include> <include>validation/validation.common.js</include> <include>validation/validation.converters.js</include> <include>validation/validation.validators.js</include> <include>validation/validation.highlighters.js</include> </includes> <aggregations> <aggregation> <inputDir>${resources.dir.compressed}</inputDir> <outputFile>${resources.dir.compressed}/core.js</outputFile> <withoutCompress>${minify.disabled}</withoutCompress> </aggregation> </aggregations> </resourcesSet> <resourcesSet> <includes> <include>core/core.dialog.js</include> <include>accordion/accordion.js</include> <include>autocomplete/autocomplete.js</include> <include>blockui/blockui.js</include> <include>carousel/carousel.js</include> <include>confirmpopup/confirmpopup.js</include> <include>columntoggler/columntoggler.js</include> <include>dashboard/dashboard.js</include> <include>datagrid/datagrid.js</include> <include>datalist/datalist.js</include> <include>datascroller/datascroller.js</include> <include>datatable/datatable.js</include> <include>datatable/datatable.frozen.js</include> <include>dialog/dialog.js</include> <include>dragdrop/dragdrop.js</include> <include>effect/effect.js</include> <include>fieldset/fieldset.js</include> <include>forms/forms.inputtext.js</include> <include>forms/forms.inputtextarea.js</include> <include>forms/forms.selectonemenu.js</include> <include>forms/forms.selectoneradio.js</include> <include>forms/forms.selectbooleancheckbox.js</include> <include>forms/forms.selectmanycheckbox.js</include> <include>forms/forms.selectlistbox.js</include> <include>forms/forms.selectonelistbox.js</include> <include>forms/forms.selectmanymenu.js</include> <include>forms/forms.cascadeselect.js</include> <include>forms/forms.commandbutton.js</include> <include>forms/forms.commandlink.js</include> <include>forms/forms.button.js</include> <include>forms/forms.linkbutton.js</include> <include>forms/forms.selectmanybutton.js</include> <include>forms/forms.selectonebutton.js</include> <include>forms/forms.selectbooleanbutton.js</include> <include>forms/forms.selectcheckboxmenu.js</include> <include>forms/forms.password.js</include> <include>forms/forms.defaultcommand.js</include> <include>forms/forms.splitbutton.js</include> <include>forms/forms.multiselectlistbox.js</include> <include>growl/growl.js</include> <include>inplace/inplace.js</include> <include>menu/menu.base.js</include> <include>menu/menu.breadcrumb.js</include> <include>menu/menu.tieredmenu.js</include> <include>menu/menu.menubar.js</include> <include>menu/menu.slidemenu.js</include> <include>menu/menu.plainmenu.js</include> <include>menu/menu.menubutton.js</include> <include>menu/menu.contextmenu.js</include> <include>menu/menu.megamenu.js</include> <include>menu/menu.panelmenu.js</include> <include>menu/menu.steps.js</include> <include>menu/menu.tabmenu.js</include> <include>message/message.js</include> <include>messages/messages.js</include> <include>notificationbar/notificationbar.js</include> <include>panel/panel.js</include> <include>orderlist/orderlist.js</include> <include>outputpanel/outputpanel.js</include> <include>overlaypanel/overlaypanel.js</include> <include>paginator/paginator.js</include> <include>picklist/picklist.js</include> <include>progressbar/progressbar.js</include> <include>rating/rating.js</include> <include>resizable/resizable.js</include> <include>slider/slider.js</include> <include>spinner/spinner.js</include> <include>splitter/splitter.js</include> <include>spotlight/spotlight.js</include> <include>speeddial/speeddial.js</include> <include>staticmessage/staticmessage.js</include> <include>sticky/sticky.js</include> <include>tabview/tabview.js</include> <include>tagcloud/tagcloud.js</include> <include>tooltip/tooltip.js</include> <include>tree/tree.base.js</include> <include>tree/tree.vertical.js</include> <include>tree/tree.horizontal.js</include> <include>treetable/treetable.js</include> <include>wizard/wizard.js</include> <include>tristatecheckbox/tristatecheckbox.js</include> <include>chip/chip.js</include> <include>chips/chips.js</include> <include>scrolltop/scrolltop.js</include> <include>sidebar/sidebar.js</include> <include>dataview/dataview.js</include> <include>toggleswitch/toggleswitch.js</include> </includes> <aggregations> <aggregation> <inputDir>${resources.dir.compressed}</inputDir> <outputFile>${resources.dir.compressed}/components.js</outputFile> <withoutCompress>${minify.disabled}</withoutCompress> </aggregation> </aggregations> </resourcesSet> <resourcesSet> <includes> <include>jquery/jquery.ui.js</include> <include>jquery/jquery.caretposition.js</include> <include>jquery/jquery.autosize.js</include> <include>jquery/jquery.mousewheel.js</include> <include>jquery/jquery.rangy.js</include> <include>jquery/jquery.ui.touch-punch.js</include> <include>jquery/jquery.ui.pfextensions.js</include> </includes> <aggregations> <aggregation> <inputDir>${resources.dir.compressed}</inputDir> <outputFile>${resources.dir.compressed}/jquery/jquery-plugins.js</outputFile> <withoutCompress>${minify.disabled}</withoutCompress> </aggregation> </aggregations> </resourcesSet> <resourcesSet> <includes> <include>touch/touchswipe.js</include> </includes> <aggregations> <aggregation> <inputDir>${resources.dir.compressed}</inputDir> <outputFile>${resources.dir.compressed}/touch/touchswipe.js</outputFile> <withoutCompress>${minify.disabled}</withoutCompress> </aggregation> </aggregations> </resourcesSet> <resourcesSet> <includes> <include>validation/validation.bv.js</include> </includes> <aggregations> <aggregation> <inputDir>${resources.dir.compressed}</inputDir> <outputFile>${resources.dir.compressed}/validation/validation.bv.js</outputFile> <withoutCompress>${minify.disabled}</withoutCompress> </aggregation> </aggregations> </resourcesSet> </resourcesSets> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <configuration> <shadedArtifactAttached>false</shadedArtifactAttached> <createDependencyReducedPom>false</createDependencyReducedPom> <promoteTransitiveDependencies>true</promoteTransitiveDependencies> <minimizeJar>true</minimizeJar> <createSourcesJar>true</createSourcesJar> <shadeSourcesContent>true</shadeSourcesContent> <relocations> <relocation> <pattern>org.json</pattern> <shadedPattern>org.primefaces.shaded.json</shadedPattern> <includes> <include>**</include> </includes> </relocation> <relocation> <pattern>org.owasp.encoder</pattern> <shadedPattern>org.primefaces.shaded.owasp.encoder</shadedPattern> <includes> <include>**</include> </includes> </relocation> <relocation> <pattern>org.apache.commons.io</pattern> <shadedPattern>org.primefaces.shaded.commons.io</shadedPattern> <includes> <include>org.apache.commons.io.FilenameUtils</include> <include>org.apache.commons.io.FileSystem</include> <include>org.apache.commons.io.IOCase</include> <include>org.apache.commons.io.input.BoundedInputStream</include> </includes> </relocation> </relocations> <filters> <filter> <artifact>commons-io:commons-io</artifact> <includes> <include>org/apache/commons/io/FilenameUtils.class</include> <include>org/apache/commons/io/FileSystem.class</include> <include>org/apache/commons/io/IOCase.class</include> <include>org/apache/commons/io/input/BoundedInputStream.class</include> </includes> </filter> <filter> <artifact>*:*</artifact> <excludes> <exclude>META-INF/*.SF</exclude> <exclude>META-INF/*.DSA</exclude> <exclude>META-INF/*.RSA</exclude> </excludes> </filter> </filters> </configuration> <executions> <execution> <id>shade-dependencies</id> <phase>package</phase> <goals> <goal>shade</goal> </goals> </execution> <execution> <id>jakarta</id> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <skip>${jakarta.jar.skip}</skip> <shadedArtifactAttached>true</shadedArtifactAttached> <shadedClassifierName>jakarta</shadedClassifierName> <createDependencyReducedPom>false</createDependencyReducedPom> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" /> <transformer implementation="io.yupiik.maven.shade.transformer.RelocationTransformer"> <delegates> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer" /> <transformer implementation="org.apache.maven.plugins.shade.resource.XmlAppendingTransformer"> <resource>META-INF/faces-config.xml</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.XmlAppendingTransformer"> <resource>META-INF/primefaces.taglib.xml</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.XmlAppendingTransformer"> <resource>META-INF/primefaces.urn.taglib.xml</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/ajaxstatus/ajaxstatus.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/core.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/core/core.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/core/core.ajax.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/core/core.csp.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/validation/validation.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/validation/validation.bv.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/fileupload/fileupload.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/lifecycle/lifecycle.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-ar.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-bg.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-bn.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-bs.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-ca.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-cs.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-ckb.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-da.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-de.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-el.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-en.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-es.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-fa.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-fi.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-fr.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-he.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-hi.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-hr.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-hu.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-in.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-it.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-ja.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-ka.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-kk.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-km.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-ko.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-ky.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-lt.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-lv.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-ms.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-nl.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-no.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-pl.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-pt.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-ro.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-ru.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-sk.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-sl.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-sr.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-sv.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-th.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-tr.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-uk.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-uz.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-vi.js</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/resources/primefaces/locales/locale-zh.js</resource> </transformer> </delegates> </transformer> </transformers> <artifactSet> <includes> <include>${project.groupId}:${project.artifactId}</include> </includes> </artifactSet> <relocations> <relocation> <pattern>javax.faces</pattern> <shadedPattern>jakarta.faces</shadedPattern> </relocation> <relocation> <pattern>javax.el</pattern> <shadedPattern>jakarta.el</shadedPattern> </relocation> <relocation> <pattern>javax.annotation</pattern> <shadedPattern>jakarta.annotation</shadedPattern> </relocation> <relocation> <pattern>javax.servlet</pattern> <shadedPattern>jakarta.servlet</shadedPattern> </relocation> <relocation> <pattern>javax.persistence</pattern> <shadedPattern>jakarta.persistence</shadedPattern> </relocation> <relocation> <pattern>javax.enterprise</pattern> <shadedPattern>jakarta.enterprise</shadedPattern> </relocation> <relocation> <pattern>javax.xml.bind</pattern> <shadedPattern>jakarta.xml.bind</shadedPattern> </relocation> <relocation> <pattern>javax.validation</pattern> <shadedPattern>jakarta.validation</shadedPattern> </relocation> <relocation> <pattern>javax.inject</pattern> <shadedPattern>jakarta.inject</shadedPattern> </relocation> <relocation> <pattern>javax.activation</pattern> <shadedPattern>jakarta.activation</shadedPattern> </relocation> <relocation> <pattern>javax.ws.rs</pattern> <shadedPattern>jakarta.ws.rs</shadedPattern> </relocation> <relocation> <pattern>javax.jws</pattern> <shadedPattern>jakarta.jws</shadedPattern> </relocation> <relocation> <pattern>javax.cache</pattern> <shadedPattern>jakarta.cache</shadedPattern> </relocation> <relocation> <pattern>javax.xml.ws</pattern> <shadedPattern>jakarta.xml.ws</shadedPattern> </relocation> <relocation> <pattern>javax.xml.soap</pattern> <shadedPattern>jakarta.xml.soap</shadedPattern> </relocation> <relocation> <pattern>window.jsf</pattern> <shadedPattern>window.faces</shadedPattern> </relocation> <relocation> <pattern>jsf.ajax</pattern> <shadedPattern>faces.ajax</shadedPattern> </relocation> <relocation> <pattern>/javax.faces</pattern> <shadedPattern>/jakarta.faces</shadedPattern> <rawString>true</rawString> </relocation> </relocations> </configuration> </execution> </executions> <dependencies> <dependency> <groupId>io.yupiik.maven</groupId> <artifactId>maven-shade-transformers</artifactId> <version>0.0.5</version> </dependency> </dependencies> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>xml-maven-plugin</artifactId> <version>1.1.0</version> <executions> <execution> <id>minify-xml</id> <phase>process-resources</phase> <goals> <goal>transform</goal> </goals> <configuration> <skip>${xml.formatter.skip}</skip> <transformationSets> <transformationSet> <dir>${project.build.directory}/classes/META-INF/</dir> <outputDir>${project.build.directory}/classes/META-INF/</outputDir> <stylesheet>${project.basedir}/../conf/minify.xslt</stylesheet> <includes> <include>*.xml</include> </includes> </transformationSet> </transformationSets> </configuration> </execution> </executions> </plugin> <!-- Rename the copied XML file --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <version>3.1.0</version> <executions> <execution> <id>rename-xml-file</id> <phase>process-resources</phase> <configuration> <target> <copy file="${project.build.directory}/classes/META-INF/primefaces.taglib.xml" tofile="${project.build.directory}/classes/META-INF/primefaces.urn.taglib.xml"/> <!-- Modify the copied file --> <replace file="${project.build.directory}/classes/META-INF/primefaces.urn.taglib.xml"> <replacefilter token="http://primefaces.org/ui" value="primefaces"/> <replacefilter token="http://xmlns.jcp.org/xml/ns/javaee/web-facelettaglibrary_2_3.xsd" value="https://jakarta.ee/xml/ns/jakartaee/web-facelettaglibrary_4_0.xsd"/> <replacefilter token="http://xmlns.jcp.org/xml/ns/javaee" value="https://jakarta.ee/xml/ns/jakartaee"/> <replacefilter token="version="2.3"" value="version="4.0""/> </replace> </target> </configuration> <goals> <goal>run</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.cyclonedx</groupId> <artifactId>cyclonedx-maven-plugin</artifactId> <configuration> <skip>${cyclonedx.skip}</skip> <projectType>library</projectType> <schemaVersion>1.6</schemaVersion> <includeBomSerialNumber>true</includeBomSerialNumber> <includeCompileScope>true</includeCompileScope> <includeProvidedScope>false</includeProvidedScope> <includeRuntimeScope>true</includeRuntimeScope> <includeSystemScope>true</includeSystemScope> <includeTestScope>false</includeTestScope> <includeLicenseText>false</includeLicenseText> <outputReactorProjects>true</outputReactorProjects> <outputFormat>all</outputFormat> <verbose>false</verbose><!-- = ${cyclonedx.verbose} --> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>3.5.2</version> </plugin> </plugins> </build> <profiles> <!-- Quick build for developers which skips many build steps for speed --> <profile> <id>quick</id> <properties> <maven.test.skip>true</maven.test.skip> <maven.javadoc.skip>true</maven.javadoc.skip> <maven.source.skip>true</maven.source.skip> <jakarta.jar.skip>false</jakarta.jar.skip> <checkstyle.skip>true</checkstyle.skip> <xml.formatter.skip>true</xml.formatter.skip> <cyclonedx.skip>true</cyclonedx.skip> <license.skipCheckLicense>true</license.skipCheckLicense> <license.skipAddThirdParty>true</license.skipAddThirdParty> <license.skipAggregateDownloadLicenses>true</license.skipAggregateDownloadLicenses> </properties> </profile> <!-- Convenience profile to name the jar -debug --> <profile> <id>debug</id> <build> <finalName>${project.artifactId}-debug-${project.version}</finalName> </build> </profile> <!-- Generates the taglib.xml VDL docs in the docs/vdldoc directory --> <profile> <id>vdldoc-publish</id> <build> <plugins> <plugin> <groupId>com.github.matinh.vdldoc</groupId> <artifactId>vdldoc-maven-plugin</artifactId> </plugin> </plugins> </build> </profile> <!-- Generates the JavaScript Api docs in the target directory, to check whether the docs compile --> <!-- This DOES NOT update the docs in docs/jsdoc, use the profile "jsdoc-update" for that (see below) --> <!-- Use "-Djsdoc.skip.typedoc=true" if you only want to check and lint the declarations file --> <profile> <id>jsdoc</id> <properties> <jsdoc.skip.typedoc>false</jsdoc.skip.typedoc> </properties> <build> <plugins> <!-- Write docs and *.d.ts file to the target dir --> <plugin> <groupId>com.github.eirslett</groupId> <artifactId>frontend-maven-plugin</artifactId> <executions> <execution> <id>generate-type-declaration</id> <configuration> <arguments>run generate-d-ts -- --packagejson src/main/type-definitions/package.json --declarationoutputdir target/type-declaration/ --typedocoutputdir target/type-declaration/jsdocs --skiptypedocgenerate ${jsdoc.skip.typedoc}</arguments> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> <!-- Updates the JavaScript API docs in the docs/jsdocs directory --> <!-- Check the file and upload to github once done! --> <!-- The docs are also updated automatically when you specify the "release" profile --> <!-- Use this "jsdoc-update" profile when you want to update the docs without release --> <profile> <id>jsdoc-update</id> <properties> <jsdoc.skip.typedoc>false</jsdoc.skip.typedoc> </properties> <build> <plugins> <plugin> <groupId>com.github.eirslett</groupId> <artifactId>frontend-maven-plugin</artifactId> <executions> <execution> <id>generate-type-declaration</id> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>jsdoc-publish</id> <build> <plugins> <plugin> <groupId>com.github.eirslett</groupId> <artifactId>frontend-maven-plugin</artifactId> <executions> <execution> <id>publish-to-npm</id> <phase>package</phase> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>cyclonedx</id> <properties> <cyclonedx.skip>false</cyclonedx.skip> </properties> </profile> <profile> <id>minify</id> <properties> <minify.disabled>false</minify.disabled> </properties> </profile> <profile> <id>release</id> <properties> <minify.disabled>false</minify.disabled> <cyclonedx.skip>false</cyclonedx.skip> </properties> </profile> </profiles> </project>