You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jspwiki.apache.org by al...@apache.org on 2026/08/22 22:48:42 UTC
(jspwiki) 01/01: JSPWIKI-1278 see jira for details JSPWIKI-1240 Inconsistent test failures with RSSGenerator not finding the XML user database on CI builds reduces the logging a bit for routine messages that pollute the stdout
This is an automated email from the ASF dual-hosted git repository.
spyhunter99 pushed a commit to branch bug/JSPWIKI-1278
in repository https://gitbox.apache.org/repos/asf/jspwiki.git
commit ece4b0a2e02cc1b0ad93a538a905ab524f4669b7
Author: Alex O'Ree <al...@apache.org>
AuthorDate: Sat Aug 22 18:48:27 2026 -0400
JSPWIKI-1278 see jira for details
JSPWIKI-1240 Inconsistent test failures with RSSGenerator not finding the XML user database on CI builds
reduces the logging a bit for routine messages that pollute the stdout
---
.../main/java/org/apache/wiki/plugin/InsertPage.java | 2 +-
.../java/org/apache/wiki/plugin/PageViewPlugin.java | 2 +-
.../java/org/apache/wiki/plugin/InsertPageTest.java | 13 +++++++++++++
.../test/java/org/apache/wiki/rss/RSSGeneratorTest.java | 17 +++++++++++------
.../src/main/java/org/apache/wiki/util/MailUtil.java | 3 ++-
5 files changed, 28 insertions(+), 9 deletions(-)
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/plugin/InsertPage.java b/jspwiki-main/src/main/java/org/apache/wiki/plugin/InsertPage.java
index 0b9a526a0..a93a7901d 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/plugin/InsertPage.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/plugin/InsertPage.java
@@ -104,7 +104,7 @@ public class InsertPage implements Plugin {
final String includedPage = TextUtil.replaceEntities(params.get( PARAM_PAGENAME ));
String style = TextUtil.replaceEntities(params.get( PARAM_STYLE ));
final boolean showOnce = "once".equals( params.get( PARAM_SHOW ) );
- final String defaultstr = params.get( PARAM_DEFAULT );
+ final String defaultstr = TextUtil.replaceEntities(params.get( PARAM_DEFAULT ));
final int section = TextUtil.parseIntParameter(params.get( PARAM_SECTION ), -1 );
int maxlen = TextUtil.parseIntParameter(params.get( PARAM_MAXLENGTH ), -1 );
diff --git a/jspwiki-main/src/main/java/org/apache/wiki/plugin/PageViewPlugin.java b/jspwiki-main/src/main/java/org/apache/wiki/plugin/PageViewPlugin.java
index 5309f405d..c04a83c17 100644
--- a/jspwiki-main/src/main/java/org/apache/wiki/plugin/PageViewPlugin.java
+++ b/jspwiki-main/src/main/java/org/apache/wiki/plugin/PageViewPlugin.java
@@ -521,7 +521,7 @@ public class PageViewPlugin extends AbstractReferralPlugin implements Plugin, In
try( final InputStream fis = Files.newInputStream( new File( m_workDir, COUNTER_PAGE ).toPath() ) ) {
m_storage.load( fis );
} catch( final IOException ioe ) {
- LOG.error( "Can't load page counter store: " + ioe.getMessage() + " , will create a new one!" );
+ LOG.debug( "Can't load page counter store: " + ioe.getMessage() + " , will create a new one!" );
}
// Copy the collection into a sorted map
diff --git a/jspwiki-main/src/test/java/org/apache/wiki/plugin/InsertPageTest.java b/jspwiki-main/src/test/java/org/apache/wiki/plugin/InsertPageTest.java
index 9082c4bdf..60c73757b 100644
--- a/jspwiki-main/src/test/java/org/apache/wiki/plugin/InsertPageTest.java
+++ b/jspwiki-main/src/test/java/org/apache/wiki/plugin/InsertPageTest.java
@@ -113,4 +113,17 @@ public class InsertPageTest {
Assertions.assertEquals( "<div class=\"inserted-page \" >foo\n</div>\n", testEngine.getManager( RenderingManager.class ).getHTML( "ThisPage" ), "found != 1" );
}
+ /**
+ * The 'default' parameter is author-controlled and appended to the plugin's HTML output on the
+ * missing-page branch; it must be entity-encoded like the class/page/style parameters are.
+ */
+ @Test
+ public void testDefaultParameterIsEscaped() throws Exception {
+ testEngine.saveText( "ThisPage", "[{InsertPage page='NonExistentPageXyz123' default='<script>alert(document.cookie)</script>'}]" );
+
+ final String res = testEngine.getManager( RenderingManager.class ).getHTML( "ThisPage" );
+ Assertions.assertFalse( res.contains( "<script>" ), res );
+ Assertions.assertTrue( res.contains( "<script>alert(document.cookie)</script>" ), res );
+ }
+
}
diff --git a/jspwiki-main/src/test/java/org/apache/wiki/rss/RSSGeneratorTest.java b/jspwiki-main/src/test/java/org/apache/wiki/rss/RSSGeneratorTest.java
index e0bc0a413..21e08d32c 100644
--- a/jspwiki-main/src/test/java/org/apache/wiki/rss/RSSGeneratorTest.java
+++ b/jspwiki-main/src/test/java/org/apache/wiki/rss/RSSGeneratorTest.java
@@ -38,8 +38,10 @@ import java.util.List;
import java.util.Properties;
import java.util.UUID;
import org.apache.commons.io.FileUtils;
+import org.apache.wiki.auth.UserManager;
import static org.apache.wiki.auth.UserManager.PROP_DATABASE;
+import org.apache.wiki.auth.authorize.GroupManager;
import org.apache.wiki.auth.authorize.XMLGroupDatabase;
import org.apache.wiki.auth.user.XMLUserDatabase;
@@ -51,13 +53,16 @@ public class RSSGeneratorTest {
public void testBlogRSS() throws Exception {
Properties props = TestEngine.getTestProperties();
- File target = new File("target/" + UUID.randomUUID() + ".xml");
- FileUtils.copyFile(new File("src/test/resources/userdatabase.xml"), target);
- props.setProperty(XMLUserDatabase.PROP_USERDATABASE, target.getAbsolutePath());
+ File userTarget = new File("target/" + UUID.randomUUID() + ".xml");
+ FileUtils.copyFile(new File("src/test/resources/userdatabase.xml"), userTarget);
+ props.setProperty(XMLUserDatabase.PROP_USERDATABASE, userTarget.getAbsolutePath());
props.put(RSSGenerator.PROP_GENERATE_RSS, "true");
- target = new File("target/" + UUID.randomUUID() + ".xml");
- FileUtils.copyFile(new File("src/test/resources/groupdatabase.xml"), target);
- props.setProperty(XMLGroupDatabase.PROP_DATABASE, target.getAbsolutePath());
+ File groupTarget = new File("target/" + UUID.randomUUID() + ".xml");
+ FileUtils.copyFile(new File("src/test/resources/groupdatabase.xml"), groupTarget);
+ props.setProperty(XMLGroupDatabase.PROP_DATABASE, groupTarget.getAbsolutePath());
+ props.setProperty(GroupManager.PROP_GROUPDATABASE, XMLGroupDatabase.class.getCanonicalName());
+ props.setProperty(UserManager.PROP_DATABASE, XMLUserDatabase.class.getCanonicalName());
+
TestEngine m_testEngine = TestEngine.build( props);
final WeblogEntryPlugin plugin = new WeblogEntryPlugin();
diff --git a/jspwiki-util/src/main/java/org/apache/wiki/util/MailUtil.java b/jspwiki-util/src/main/java/org/apache/wiki/util/MailUtil.java
index a2aae8f9f..40746a9d3 100644
--- a/jspwiki-util/src/main/java/org/apache/wiki/util/MailUtil.java
+++ b/jspwiki-util/src/main/java/org/apache/wiki/util/MailUtil.java
@@ -299,7 +299,8 @@ public final class MailUtil {
Transport.send(msg);
LOG.info("Sent e-mail to={}, subject=\"{}\", used {} mail session.", to, subject, (c_useJndi ? "JNDI" : "standalone") );
} catch (final MessagingException e) {
- LOG.error(e);
+ LOG.error("Email tranmission error: " + e.getMessage());
+ LOG.debug("Email tranmission error: " + e.getMessage(), e);
throw e;
}
}