[java-identity-provider] branch main updated: IDP-2455: Create dedicated ParserPool bean for metadata parsing

Codeberg noreply at shibboleth.net
Fri May 8 06:25:32 UTC 2026


This is an automated email from the git hooks/post-receive script.

codeberg pushed a commit to branch main
in repository java-identity-provider.

View the commit online:
https://codeberg.org/Shibboleth/java-identity-provider/commit/f5953e1c1edabb81509ad52375c95e15f6a359ab

The following commit(s) were added to refs/heads/main by this push:
     new f5953e1c1 IDP-2455: Create dedicated ParserPool bean for metadata parsing
f5953e1c1 is described below

commit f5953e1c1edabb81509ad52375c95e15f6a359ab
Author: Brent Putman <putmanb at georgetown.edu>
AuthorDate: Thu May 7 23:25:31 2026 -0400

    IDP-2455: Create dedicated ParserPool bean for metadata parsing
---
 .../net/shibboleth/idp/conf/global-system.xml      | 26 ++++++++++++++++++++++
 .../net/shibboleth/spring/parser.properties        |  4 ++--
 2 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/global-system.xml b/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/global-system.xml
index 505937c24..0d1000260 100644
--- a/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/global-system.xml
+++ b/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/global-system.xml
@@ -296,6 +296,32 @@
         </property>
     </bean>
     
+    <alias name="%{idp.xml.metadata.parserPool:shibboleth.MetadataParserPool}" alias="shibboleth.ParserPool.Metadata"/>
+    
+    <bean id="shibboleth.MetadataParserPool" class="net.shibboleth.shared.xml.impl.BasicParserPool"
+            depends-on="shibboleth.LoggingService" lazy-init="true"
+            p:maxPoolSize="100"
+            p:coalescing="true"
+            p:ignoreComments="true"
+            p:ignoreElementContentWhitespace="true"
+            p:namespaceAware="true"
+            p:entityResolver="#{%{idp.xml.metadata.strictEntityResolution:true} ? getObject('shibboleth.ThrowingEntityResolver') : null}"
+            p:securityManagerAttributeName="http://apache.org/xml/properties/security-manager">
+        <property name="builderFeatures">
+            <map>
+                <entry key="http://apache.org/xml/features/disallow-doctype-decl">
+                    <util:constant static-field="java.lang.Boolean.TRUE" />
+                </entry>
+                <entry key="http://apache.org/xml/features/validation/schema/normalized-value">
+                    <util:constant static-field="java.lang.Boolean.FALSE" />
+                </entry>
+                <entry key="http://javax.xml.XMLConstants/feature/secure-processing">
+                    <util:constant static-field="java.lang.Boolean.TRUE" />
+                </entry>
+            </map>
+        </property>
+    </bean>
+    
     <bean id="shibboleth.ThrowingEntityResolver"
         class="net.shibboleth.shared.xml.impl.ThrowingEntityResolver" lazy-init="true" />
 
diff --git a/idp-schema/src/main/resources/META-INF/net/shibboleth/spring/parser.properties b/idp-schema/src/main/resources/META-INF/net/shibboleth/spring/parser.properties
index 00ae934ed..5b859bcb8 100644
--- a/idp-schema/src/main/resources/META-INF/net/shibboleth/spring/parser.properties
+++ b/idp-schema/src/main/resources/META-INF/net/shibboleth/spring/parser.properties
@@ -12,8 +12,8 @@ net.shibboleth.idp.attribute.resolver.spring.ad.impl.SubjectDerivedAttributeDefi
 
 net.shibboleth.idp.attribute.resolver.spring.dc.impl.ComputedIdDataConnectorParser.HttpServletRequestSupplier.bean = shibboleth.HttpServletRequestSupplier
 
-net.shibboleth.spring.metadata.AbstractReloadingMetadataProviderParser.ParserPool.bean = shibboleth.ParserPool
-net.shibboleth.spring.metadata.AbstractDynamicMetadataProviderParser.ParserPool.bean = shibboleth.ParserPool
+net.shibboleth.spring.metadata.AbstractReloadingMetadataProviderParser.ParserPool.bean = shibboleth.ParserPool.Metadata
+net.shibboleth.spring.metadata.AbstractDynamicMetadataProviderParser.ParserPool.bean = shibboleth.ParserPool.Metadata
 
 net.shibboleth.spring.metadata.AbstractMetadataProviderParser.ByReferenceMetadataFilterBridge.bean = shibboleth.ByReferenceMetadataFilterBridge
 net.shibboleth.spring.metadata.AbstractMetadataProviderParser.AutoWiredNodeProcessingMetadataFilter.bean = shibboleth.AutoWiredNodeProcessingMetadataFilter

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list