[java-plugin-shibd] branch main updated: Cleanup, remove target field from AgentRequestContext.

Codeberg noreply at shibboleth.net
Thu May 7 14:26:25 UTC 2026


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

codeberg pushed a commit to branch main
in repository java-plugin-shibd.

View the commit online:
https://codeberg.org/Shibboleth/java-plugin-shibd/commit/58da8d4160a355a9c052de1fe636dbef09002966

The following commit(s) were added to refs/heads/main by this push:
     new 58da8d4  Cleanup, remove target field from AgentRequestContext.
58da8d4 is described below

commit 58da8d4160a355a9c052de1fe636dbef09002966
Author: Scott Cantor <scott at restingparrotsoftware.com>
AuthorDate: Thu May 7 10:26:11 2026 -0400

    Cleanup, remove target field from AgentRequestContext.
---
 sp-conf-impl/.checkstyle                           | 15 ++++++++++
 .../shibboleth/sp/flows/AbstractSPFlowTest.java    | 20 ++++++-------
 .../shibboleth/sp/flows/SessionCacheFlowTest.java  |  8 +++--
 .../sp/flows/SessionInitiatorFlowTest.java         |  2 ++
 sp-server-api/.checkstyle                          | 13 +++++---
 .../shibboleth/sp/context/AgentRequestContext.java | 35 ----------------------
 .../AbstractTokenConsumerResponseAction.java       | 23 ++++++++++++--
 sp-server-impl/.checkstyle                         | 13 +++++---
 .../sp/profile/impl/RecoverPostData.java           | 35 ++++++++++++++++++++--
 .../sp/profile/impl/BaseApplicationActionTest.java |  1 +
 .../sp/profile/impl/RecoverPostDataTest.java       | 11 +++++--
 sp-testing/.checkstyle                             | 13 +++++---
 12 files changed, 123 insertions(+), 66 deletions(-)

diff --git a/sp-conf-impl/.checkstyle b/sp-conf-impl/.checkstyle
new file mode 100644
index 0000000..9b88a9c
--- /dev/null
+++ b/sp-conf-impl/.checkstyle
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="false" sync-formatter="false">
+
+  <local-check-config name="Shibboleth Checkstyle" location="/java-plugin-shibd/resources/checkstyle/checkstyle.xml" type="project" description="">
+    <additional-data name="cache-file" value="true"/>
+    <additional-data name="cache-props-file-location" value="null_1312636288299_cache.properties"/>
+    <additional-data name="cache-file-location" value="null_1312636288299_cache.xml"/>
+  </local-check-config>
+ 
+  <fileset name="main source" enabled="true" check-config-name="Shibboleth Checkstyle" local="true">
+    <file-match-pattern match-pattern="src/main/java/.*\.java$" include-pattern="true"/>
+  </fileset>
+  
+</fileset-config>
diff --git a/sp-conf-impl/src/test/java/net/shibboleth/sp/flows/AbstractSPFlowTest.java b/sp-conf-impl/src/test/java/net/shibboleth/sp/flows/AbstractSPFlowTest.java
index ada2399..a62e03c 100644
--- a/sp-conf-impl/src/test/java/net/shibboleth/sp/flows/AbstractSPFlowTest.java
+++ b/sp-conf-impl/src/test/java/net/shibboleth/sp/flows/AbstractSPFlowTest.java
@@ -24,7 +24,17 @@ import java.util.Map;
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
+import net.shibboleth.idp.spring.IdPPropertiesApplicationContextInitializer;
+import net.shibboleth.idp.test.PreferFileSystemApplicationContextInitializer;
+import net.shibboleth.idp.test.flows.AbstractFlowTest;
+import net.shibboleth.shared.security.IdentifierGenerationStrategy;
+import net.shibboleth.shared.servlet.impl.HttpServletRequestResponseContext;
+import net.shibboleth.shared.xml.ParserPool;
+import net.shibboleth.sp.ddf.DDF;
+import net.shibboleth.sp.profile.SPConstants;
+
 import org.apache.commons.codec.binary.Base64;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.mock.web.MockHttpServletRequest;
@@ -35,16 +45,6 @@ import org.springframework.webflow.test.MockExternalContext;
 import org.testng.Assert;
 import org.testng.annotations.BeforeMethod;
 
-import net.shibboleth.idp.spring.IdPPropertiesApplicationContextInitializer;
-import net.shibboleth.idp.test.PreferFileSystemApplicationContextInitializer;
-import net.shibboleth.idp.test.flows.AbstractFlowTest;
-import net.shibboleth.shared.security.IdentifierGenerationStrategy;
-import net.shibboleth.shared.servlet.impl.HttpServletRequestResponseContext;
-import net.shibboleth.shared.xml.ParserPool;
-import net.shibboleth.sp.ddf.DDF;
-import net.shibboleth.sp.profile.SPConstants;
-import net.shibboleth.sp.profile.impl.ResolveApplication;
-
 /**
  * Abstract unit test class for SP flows usable by other plugins.
  */
diff --git a/sp-conf-impl/src/test/java/net/shibboleth/sp/flows/SessionCacheFlowTest.java b/sp-conf-impl/src/test/java/net/shibboleth/sp/flows/SessionCacheFlowTest.java
index 79e3e7b..52e4e82 100644
--- a/sp-conf-impl/src/test/java/net/shibboleth/sp/flows/SessionCacheFlowTest.java
+++ b/sp-conf-impl/src/test/java/net/shibboleth/sp/flows/SessionCacheFlowTest.java
@@ -308,7 +308,7 @@ public class SessionCacheFlowTest extends AbstractSPFlowTest {
         assert output != null;
         
         final String key = output.getmember(DoSessionCacheOperation.KEY).string();
-        Assert.assertNotNull(key);
+        assert key != null;
         
         final StorageRecord<?> record = getStorageService().read(TEST_CONTEXT, key);
         assert record != null;
@@ -372,7 +372,9 @@ public class SessionCacheFlowTest extends AbstractSPFlowTest {
         final StorageRecord<?> record = getStorageService().read(TEST_CONTEXT, "foo");
         assert record != null;
         Assert.assertEquals(record.getVersion(), 1);
-        Assert.assertTrue(exp.isBefore(Instant.ofEpochMilli(record.getExpiration())));
+        final Long exp2 = record.getExpiration();
+        assert exp2 != null;
+        Assert.assertTrue(exp.isBefore(Instant.ofEpochMilli(exp2)));
     }    
 
     /**
@@ -401,6 +403,7 @@ public class SessionCacheFlowTest extends AbstractSPFlowTest {
         assertFlowExecutionResult(result, FLOW_ID);
         assertFlowExecutionOutcome(result.getOutcome());
         final DDF output = assertOutputMessageSuccess(result);
+        assert output != null;
         Assert.assertEquals(output.getmember(DoSessionCacheOperation.VERSION).integer(), 2);
         
         final StorageRecord<?> record = getStorageService().read(TEST_CONTEXT, "foo");
@@ -457,6 +460,7 @@ public class SessionCacheFlowTest extends AbstractSPFlowTest {
         assertFlowExecutionResult(result, FLOW_ID);
         assertFlowExecutionOutcome(result.getOutcome());
         final DDF output = assertOutputMessageSuccess(result);
+        assert output != null;
         
         Assert.assertTrue(output.getmember(DoSessionCacheOperation.VERSION).isnull());
     }
diff --git a/sp-conf-impl/src/test/java/net/shibboleth/sp/flows/SessionInitiatorFlowTest.java b/sp-conf-impl/src/test/java/net/shibboleth/sp/flows/SessionInitiatorFlowTest.java
index 37eaf3c..b7c381a 100644
--- a/sp-conf-impl/src/test/java/net/shibboleth/sp/flows/SessionInitiatorFlowTest.java
+++ b/sp-conf-impl/src/test/java/net/shibboleth/sp/flows/SessionInitiatorFlowTest.java
@@ -125,6 +125,7 @@ public class SessionInitiatorFlowTest extends AbstractSPFlowTest {
         assertFlowExecutionOutcome(result.getOutcome());
         
         final DDF output = assertOutputMessageSuccess(result);
+        assert output != null;
         final String url = new String(
                 output.getmember(RemotedHttpServletResponse.STRUCTURE_NAME).getmember(RemotedHttpServletResponse.REDIRECT).unsafe_string(),
                 StandardCharsets.UTF_8);
@@ -155,6 +156,7 @@ public class SessionInitiatorFlowTest extends AbstractSPFlowTest {
         assertFlowExecutionOutcome(result.getOutcome());
                 
         final DDF output = assertOutputMessageSuccess(result);
+        assert output != null;
         final String url = new String(
                 output.getmember(RemotedHttpServletResponse.STRUCTURE_NAME).getmember(RemotedHttpServletResponse.REDIRECT).unsafe_string(),
                 StandardCharsets.UTF_8);
diff --git a/sp-server-api/.checkstyle b/sp-server-api/.checkstyle
index 1feabed..9b88a9c 100644
--- a/sp-server-api/.checkstyle
+++ b/sp-server-api/.checkstyle
@@ -1,10 +1,15 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+<fileset-config file-format-version="1.2.0" simple-config="false" sync-formatter="false">
+
   <local-check-config name="Shibboleth Checkstyle" location="/java-plugin-shibd/resources/checkstyle/checkstyle.xml" type="project" description="">
-    <additional-data name="protect-config-file" value="false"/>
+    <additional-data name="cache-file" value="true"/>
+    <additional-data name="cache-props-file-location" value="null_1312636288299_cache.properties"/>
+    <additional-data name="cache-file-location" value="null_1312636288299_cache.xml"/>
   </local-check-config>
-  <fileset name="all" enabled="true" check-config-name="Shibboleth Checkstyle" local="true">
-    <file-match-pattern match-pattern="." include-pattern="true"/>
+ 
+  <fileset name="main source" enabled="true" check-config-name="Shibboleth Checkstyle" local="true">
+    <file-match-pattern match-pattern="src/main/java/.*\.java$" include-pattern="true"/>
   </fileset>
+  
 </fileset-config>
diff --git a/sp-server-api/src/main/java/net/shibboleth/sp/context/AgentRequestContext.java b/sp-server-api/src/main/java/net/shibboleth/sp/context/AgentRequestContext.java
index 6bee563..d8fcc80 100644
--- a/sp-server-api/src/main/java/net/shibboleth/sp/context/AgentRequestContext.java
+++ b/sp-server-api/src/main/java/net/shibboleth/sp/context/AgentRequestContext.java
@@ -40,9 +40,6 @@ public class AgentRequestContext extends BaseContext {
     /** Application for which the request was made. */
     @Nullable private Application application;
     
-    /** Tracking of resource/target URL for agent error handling purposes. */
-    @Nullable private byte[] targetURL;
-    
     /** Input message. */
     @Nullable private DDF input;
 
@@ -96,38 +93,6 @@ public class AgentRequestContext extends BaseContext {
         application = app;
         return this;
     }
-    
-    /**
-     * Get the target/resource URL associated with an agent request.
-     * 
-     * <p>This is primarily set for error handling purposes in cases where
-     * a resource has been converted into a state token and the agent wouldn't
-     * have access to it in the event of a problem.</p>
-     * 
-     * @return target URL
-     * 
-     * @deprecated
-     */
-    @Deprecated
-    @Nullable public byte[] getTargetURL() {
-        return targetURL;
-    }
-    
-    /**
-     * Sets the target/resource URL associated with an agent request.
-     * 
-     * @param url url to set
-     * 
-     * @return this context
-     * 
-     * @deprecated
-     */
-    @Deprecated
-    @Nonnull public AgentRequestContext setTargetURL(@Nullable final byte[] url) {
-        targetURL = url;
-        
-        return this;
-    }
 
     /**
      * Get the input message from the agent.
diff --git a/sp-server-api/src/main/java/net/shibboleth/sp/profile/AbstractTokenConsumerResponseAction.java b/sp-server-api/src/main/java/net/shibboleth/sp/profile/AbstractTokenConsumerResponseAction.java
index 915a463..d5884e2 100644
--- a/sp-server-api/src/main/java/net/shibboleth/sp/profile/AbstractTokenConsumerResponseAction.java
+++ b/sp-server-api/src/main/java/net/shibboleth/sp/profile/AbstractTokenConsumerResponseAction.java
@@ -37,8 +37,10 @@ import net.shibboleth.shared.codec.EncodingException;
 import net.shibboleth.shared.logic.Constraint;
 import net.shibboleth.shared.primitive.LoggerFactory;
 import net.shibboleth.sp.context.AgentRequestContext;
+import net.shibboleth.sp.context.StateDataContext;
 import net.shibboleth.sp.ddf.DDF;
 import net.shibboleth.sp.messaging.RemotedHttpServletResponse;
+import net.shibboleth.sp.state.StateData;
 
 /**
  * Base class for protocol-specific "token consumer" flow actions that prepare the
@@ -70,9 +72,13 @@ public abstract class AbstractTokenConsumerResponseAction extends AbstractApplic
     /** Strategy used to locate {@link AttributeContext} with results. */
     @Nonnull private Function<ProfileRequestContext,AttributeContext> attributeContextLookupStrategy;
 
+    /** Strategy used to locate the {@link StateDataContext} to pull target from. */
+    @Nonnull private Function<ProfileRequestContext,StateDataContext> stateDataContextLookupStrategy;
+    
     /** Constructor. */
     public AbstractTokenConsumerResponseAction() {
         attributeContextLookupStrategy = new ChildContextLookup<>(AttributeContext.class);
+        stateDataContextLookupStrategy = new ChildContextLookup<>(StateDataContext.class);
         setCreateOutputObjects(true);
     }
 
@@ -88,6 +94,18 @@ public abstract class AbstractTokenConsumerResponseAction extends AbstractApplic
                 Constraint.isNotNull(strategy, "AttributeContext lookup strategy cannot be null");
     }
 
+    /**
+     * Sets the strategy used to lookup the {@link StateDataContext}.
+     * 
+     * @param strategy lookup strategy
+     */
+    public void setStateDataContextLookupStrategy(
+            @Nonnull final Function<ProfileRequestContext,StateDataContext> strategy) {
+        checkSetterPreconditions();
+        stateDataContextLookupStrategy =
+                Constraint.isNotNull(strategy, "StateDataContext creation strategy cannot be null");
+    }
+    
     /** {@inheritDoc} */
     @Override
     protected void doExecute(@Nonnull final ProfileRequestContext profileRequestContext) {
@@ -148,8 +166,10 @@ public abstract class AbstractTokenConsumerResponseAction extends AbstractApplic
             // or falling back to an input parameter from the agent. Final backstop is a relative
             // redirect to the site root.
             
+            final StateDataContext stateContext = stateDataContextLookupStrategy.apply(profileRequestContext);
+            final StateData stateData = stateContext != null ? stateContext.getStateData() : null;
             
-            byte[] resource = agentRequestContext.getTargetURL();
+            byte[] resource = stateData != null ? stateData.getRawResource() : null;
             if (resource == null || resource.length == 0) {
                 final DDF in = agentRequestContext.getInput();
                 if (in != null) {
@@ -158,7 +178,6 @@ public abstract class AbstractTokenConsumerResponseAction extends AbstractApplic
                 if (resource == null || resource.length == 0) {
                     resource = "/".getBytes(StandardCharsets.UTF_8);
                 }
-                agentRequestContext.setTargetURL(resource);
             }
             
             output.addmember(SPConstants.TARGET).unsafe_string(resource);
diff --git a/sp-server-impl/.checkstyle b/sp-server-impl/.checkstyle
index 1feabed..9b88a9c 100644
--- a/sp-server-impl/.checkstyle
+++ b/sp-server-impl/.checkstyle
@@ -1,10 +1,15 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+<fileset-config file-format-version="1.2.0" simple-config="false" sync-formatter="false">
+
   <local-check-config name="Shibboleth Checkstyle" location="/java-plugin-shibd/resources/checkstyle/checkstyle.xml" type="project" description="">
-    <additional-data name="protect-config-file" value="false"/>
+    <additional-data name="cache-file" value="true"/>
+    <additional-data name="cache-props-file-location" value="null_1312636288299_cache.properties"/>
+    <additional-data name="cache-file-location" value="null_1312636288299_cache.xml"/>
   </local-check-config>
-  <fileset name="all" enabled="true" check-config-name="Shibboleth Checkstyle" local="true">
-    <file-match-pattern match-pattern="." include-pattern="true"/>
+ 
+  <fileset name="main source" enabled="true" check-config-name="Shibboleth Checkstyle" local="true">
+    <file-match-pattern match-pattern="src/main/java/.*\.java$" include-pattern="true"/>
   </fileset>
+  
 </fileset-config>
diff --git a/sp-server-impl/src/main/java/net/shibboleth/sp/profile/impl/RecoverPostData.java b/sp-server-impl/src/main/java/net/shibboleth/sp/profile/impl/RecoverPostData.java
index 04c614e..c77558d 100644
--- a/sp-server-impl/src/main/java/net/shibboleth/sp/profile/impl/RecoverPostData.java
+++ b/sp-server-impl/src/main/java/net/shibboleth/sp/profile/impl/RecoverPostData.java
@@ -20,12 +20,14 @@ import java.io.Writer;
 import java.nio.charset.CharsetDecoder;
 import java.nio.charset.CodingErrorAction;
 import java.util.List;
+import java.util.function.Function;
 
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
 import org.apache.velocity.VelocityContext;
 import org.apache.velocity.app.VelocityEngine;
+import org.opensaml.messaging.context.navigate.ChildContextLookup;
 import org.opensaml.profile.action.ActionSupport;
 import org.opensaml.profile.action.EventIds;
 import org.opensaml.profile.context.ProfileRequestContext;
@@ -49,12 +51,14 @@ import net.shibboleth.shared.primitive.StringSupport;
 import net.shibboleth.shared.security.IdentifierGenerationStrategy;
 import net.shibboleth.shared.servlet.HttpServletSupport;
 import net.shibboleth.sp.context.AgentRequestContext;
+import net.shibboleth.sp.context.StateDataContext;
 import net.shibboleth.sp.ddf.DDF;
 import net.shibboleth.sp.messaging.RemotedHttpServletRequest;
 import net.shibboleth.sp.messaging.RemotedHttpServletRequestResponseContext;
 import net.shibboleth.sp.messaging.RemotedHttpServletResponse;
 import net.shibboleth.sp.profile.AbstractApplicationAction;
 import net.shibboleth.sp.profile.SPConstants;
+import net.shibboleth.sp.state.StateData;
 
 /**
  * Action that detects submitted form data, and when permitted, stores it in a {@link StorageService} and
@@ -97,16 +101,25 @@ public class RecoverPostData extends AbstractApplicationAction {
     /** Cookie prefix. */
     @Nonnull private String cookiePrefix;
 
+    /** Strategy used to locate the {@link StateDataContext} to pull target from. */
+    @Nonnull private Function<ProfileRequestContext,StateDataContext> stateDataContextLookupStrategy;
+    
     /** Deecoder for Agent data. */
     @NonnullBeforeExec private CharsetDecoder decoder;
     
     /** Recovered data. */
     @NonnullBeforeExec private String postData;
     
+    /** Target of POST. */
+    @NonnullBeforeExec byte[] resource;
+    
     /** Constructor. */
     public RecoverPostData() {
         velocityTemplateId = DEFAULT_TEMPLATE_ID;
         cookiePrefix = DEFAULT_COOKIE_PREFIX;
+        
+        stateDataContextLookupStrategy = new ChildContextLookup<>(StateDataContext.class);
+        
         setCreateOutputObjects(true);
     }    
     
@@ -187,6 +200,18 @@ public class RecoverPostData extends AbstractApplicationAction {
         
         cookiePrefix = Constraint.isNotNull(StringSupport.trimOrNull(prefix), "Cookie prefix cannot be null or empty");
     }
+
+    /**
+     * Sets the strategy used to lookup the {@link StateDataContext}.
+     * 
+     * @param strategy lookup strategy
+     */
+    public void setStateDataContextLookupStrategy(
+            @Nonnull final Function<ProfileRequestContext,StateDataContext> strategy) {
+        checkSetterPreconditions();
+        stateDataContextLookupStrategy =
+                Constraint.isNotNull(strategy, "StateDataContext creation strategy cannot be null");
+    }
     
     /** {@inheritDoc} */
     @Override
@@ -233,9 +258,14 @@ public class RecoverPostData extends AbstractApplicationAction {
             return false;
         }
         
+        final StateDataContext stateContext = stateDataContextLookupStrategy.apply(profileRequestContext);
+        final StateData stateData = stateContext != null ? stateContext.getStateData() : null;
+
         // See if we know the target URL. If not, a fallback to homeURL or the site root is
         // not an appropriate target for a POST. 
-        if (ensureAgentRequestContext().getTargetURL() == null) {
+        
+        resource = stateData != null ? stateData.getRawResource() : null;
+        if (resource == null || resource.length == 0) {
             log.warn("{} No definitive target resource, POST data recovery aborted", getLogPrefix());
             return false;
         }
@@ -254,8 +284,7 @@ public class RecoverPostData extends AbstractApplicationAction {
         final AgentRequestContext agentRequestContext = ensureAgentRequestContext();
 
         // Try and decode the data as best we can.
-        final String decodedTarget = RemotedHttpServletRequest.decodeUnsafeString(
-                ensureAgentRequestContext().getTargetURL(), decoder, null);
+        final String decodedTarget = RemotedHttpServletRequest.decodeUnsafeString(resource, decoder, null);
         if (decodedTarget == null) {
             log.warn("{} Failure decoding target resource byte array using encoding: {}", getLogPrefix(),
                     decoder.charset().name());
diff --git a/sp-server-impl/src/test/java/net/shibboleth/sp/profile/impl/BaseApplicationActionTest.java b/sp-server-impl/src/test/java/net/shibboleth/sp/profile/impl/BaseApplicationActionTest.java
index 7be5a60..f6d7769 100644
--- a/sp-server-impl/src/test/java/net/shibboleth/sp/profile/impl/BaseApplicationActionTest.java
+++ b/sp-server-impl/src/test/java/net/shibboleth/sp/profile/impl/BaseApplicationActionTest.java
@@ -29,6 +29,7 @@ public abstract class BaseApplicationActionTest extends BaseAgentRequestTest {
      * 
      * @throws ComponentInitializationException
      */
+    @Override
     public void beforeMethod() throws ComponentInitializationException {
         super.beforeMethod();
         
diff --git a/sp-server-impl/src/test/java/net/shibboleth/sp/profile/impl/RecoverPostDataTest.java b/sp-server-impl/src/test/java/net/shibboleth/sp/profile/impl/RecoverPostDataTest.java
index 8e9a1c7..97df599 100644
--- a/sp-server-impl/src/test/java/net/shibboleth/sp/profile/impl/RecoverPostDataTest.java
+++ b/sp-server-impl/src/test/java/net/shibboleth/sp/profile/impl/RecoverPostDataTest.java
@@ -50,10 +50,12 @@ import net.shibboleth.shared.net.CookieManager.SameSiteValue;
 import net.shibboleth.shared.primitive.NonnullSupplier;
 import net.shibboleth.shared.security.IdentifierGenerationStrategy;
 import net.shibboleth.shared.security.IdentifierGenerationStrategy.ProviderType;
+import net.shibboleth.sp.context.StateDataContext;
 import net.shibboleth.sp.ddf.DDF;
 import net.shibboleth.sp.messaging.RemotedHttpServletRequest;
 import net.shibboleth.sp.messaging.RemotedHttpServletResponse;
 import net.shibboleth.sp.profile.SPConstants;
+import net.shibboleth.sp.state.StateData;
 
 /**
  * Unit test for {@link RecoverPostData} action.
@@ -172,7 +174,9 @@ public class RecoverPostDataTest extends BaseApplicationActionTest {
         // Simple invalid UTF-8 sequence (cribbed from a web site).
         final byte[] invalid = { (byte)235, (byte)140, (byte)4 };
         
-        arc.setTargetURL(invalid);
+        final StateData state = new StateData();
+        state.setRawResource(invalid);
+        prc.ensureSubcontext(StateDataContext.class).setStateData(state);
         
         final Event event = action.execute(src);
         ActionTestingSupport.assertProceedEvent(event);
@@ -183,7 +187,10 @@ public class RecoverPostDataTest extends BaseApplicationActionTest {
     public void testSuccess() throws IOException {
         
         final String key = storePOSTData(TEST_DATA);
-        arc.setTargetURL("https://sp.example.org/test.cgi".getBytes());
+        
+        final StateData state = new StateData();
+        state.setRawResource("https://sp.example.org/test.cgi".getBytes());
+        prc.ensureSubcontext(StateDataContext.class).setStateData(state);
         
         final Event event = action.execute(src);
         ActionTestingSupport.assertProceedEvent(event);
diff --git a/sp-testing/.checkstyle b/sp-testing/.checkstyle
index 1feabed..9b88a9c 100644
--- a/sp-testing/.checkstyle
+++ b/sp-testing/.checkstyle
@@ -1,10 +1,15 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
-<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+<fileset-config file-format-version="1.2.0" simple-config="false" sync-formatter="false">
+
   <local-check-config name="Shibboleth Checkstyle" location="/java-plugin-shibd/resources/checkstyle/checkstyle.xml" type="project" description="">
-    <additional-data name="protect-config-file" value="false"/>
+    <additional-data name="cache-file" value="true"/>
+    <additional-data name="cache-props-file-location" value="null_1312636288299_cache.properties"/>
+    <additional-data name="cache-file-location" value="null_1312636288299_cache.xml"/>
   </local-check-config>
-  <fileset name="all" enabled="true" check-config-name="Shibboleth Checkstyle" local="true">
-    <file-match-pattern match-pattern="." include-pattern="true"/>
+ 
+  <fileset name="main source" enabled="true" check-config-name="Shibboleth Checkstyle" local="true">
+    <file-match-pattern match-pattern="src/main/java/.*\.java$" include-pattern="true"/>
   </fileset>
+  
 </fileset-config>

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


More information about the commits mailing list