Philipp Heidelbach created WW-4930:
--------------------------------------
Summary: SMI cannot be diasabled for action-packages found via the convention-plugin
Key: WW-4930
URL: https://issues.apache.org/jira/browse/WW-4930
Project: Struts 2
Issue Type: Bug
Components: Plugin - Convention
Affects Versions: 2.5.16
Environment: Windows 10
Java 1.8
Reporter: Philipp Heidelbach
I'm trying to update Struts 2.3.34 to 2.5.16 and disabling SMI doesn't seem to work.
I debuged XmlConfigurationProvider but in the packageConfig of our package (named default
see below) SMI is correctly set to false. Debugging PackageBaseActionConfigBuilder shows that
our default-package is used as parent package and in the parentPkg SMI is set to false. The
pkgConfig however is alwasy null (line: 1043) and so a new package config is created in which
SMI is set to true.
Thus for all these actions methods i get the error that these methods aren't allowed.
If I use @AllowedMethod-annotations it works fine.
Below the beginning of our struts.xml
{code:xml}
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
<constant name="struts.action.extension" value="action" />
<constant name="struts.convention.action.fileProtocols" value="jar,zip,vfsfile,vfszip"
/>
<constant name="struts.convention.action.includeJars" value=".*/newd[-.\w]*\.jar(!/)?"
/>
<constant name="struts.convention.exclude.packages" value="org.apache.struts.*,org.apache.struts2.*,org.springframework.web.struts.*,org.springframework.web.struts2.*,org.hibernate.*"
/>
<constant name="struts.convention.result.path" value="/WEB-INF/jsp/" />
<constant name="struts.custom.i18n.resources" value="applicationResources" />
<constant name="struts.locale" value="de_DE" />
<constant name="struts.multipart.maxSize" value="52428800" />
<constant name="struts.objectFactory" value="spring" />
<constant name="struts.enable.DynamicMethodInvocation" value="true" />
<constant name="struts.ui.theme" value="simple" />
<constant name="struts.ui.templateDir" value="template" />
<constant name="struts.devMode" value="false" />
<constant name="struts.el.throwExceptionOnFailure" value="true" />
<package name="default" extends="struts-default" strict-method-invocation="false">
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
|