-
Terminally Deprecated ElementsElementDescriptionsince 7.4.0, for removal in 8.0.0. Use
Form.getFieldValidators(String), which is generically typed and resolves the action's validators once per form rather than per field.since 7.4.0, for removal in 8.0.0. The generated client-side validator only ever covered fields rendered by a nested Struts tag (WW-2975). Use thehtml5theme withstruts.ui.html5.constraints=trueinstead.since 7.3.0, useStrutsTypeConverterHolder.computeMappingIfAbsent(Class, Function)instead.since 7.3.0, useStrutsTypeConverterHolder.computeMappingIfAbsent(Class, Function)instead.since 7.3.0, useStrutsTypeConverterHolder.computeMappingIfAbsent(Class, Function)instead.since 7.3.0, unused - superseded by internal concurrent storage. Retained only for binary compatibility with subclasses compiled against earlier versions, and will be removed in a future release.since 7.3.0, useTypeConverterHolder.computeMappingIfAbsent(Class, Function)which stores the built mapping itself.since 7.3.0, useTypeConverterHolder.computeMappingIfAbsent(Class, Function)which returns an empty map for classes known to have no mapping.since 7.3.0, useTypeConverterHolder.computeMappingIfAbsent(Class, Function), which resolves and caches the mapping in one call instead of requiring a check-then-act at the call site.since 7.4.0, this legacy mapper predates the Struts REST plugin, which is the maintained way to build REST-style applications with Struts. Scheduled for removal in the next major release.since 7.4.0, this legacy mapper predates the Struts REST plugin, which is the maintained way to build REST-style applications with Struts. Scheduled for removal in the next major release.since 7.3.0, no longer used. The unreachable content-type null-check inacceptFile()that referenced this key was removed as part of the in-memory upload optimization (WW-5413); there is no replacement. This constant will be removed in a future version.since 7.4.0, useDefaultCspSettings.setNonceSource(String)insteadSince 7.2.0, useAcceptLanguageLocaleHandler. Scheduled for removal in the next release cycle.Since 7.2.0, useCookieLocaleHandler. Scheduled for removal in the next release cycle.Since 7.2.0, use the top-level handler classes inorg.apache.struts2.interceptor.i18n. Scheduled for removal in the next release cycle.Since 7.2.0, useRequestLocaleHandler. Scheduled for removal in the next release cycle.Since 7.2.0, useSessionLocaleHandler. Scheduled for removal in the next release cycle.aPropertyDescriptorcannot describe every setter OGNL binds through; useStrutsParameterAuthorizer.findBindableAccessor(java.lang.Object, java.lang.String, long)withStrutsParameterAuthorizer.hasValidAnnotatedMethod(java.lang.Object, java.lang.reflect.Method, long)insteadsince 7.3.0, this accessor is no longer used by the framework and will be removed in a future version.since 6.8.0, to be removed, seeReflectionContextFactorysince 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, useStrutsConstants.STRUTS_CSP_NONCE_SOURCEinsteadsince 6.8.0, avoid using this interface and any of its implementation, it's going to be removed soonsince 7.4.0, no replacement. Struts core never sets this key, so it has no effect on framework-driven binding. Indexed property access is now identified by inspecting the target type rather than by trusting a method name prefix, which is the check the key was standing in for. Application or plugin code which sets the key itself does still suppress the fast path, which is why this is deprecated rather than removed outright. Scheduled for removal in 8.0.0 by WW-5699.since 7.4.0, for removal in 8.0.0. The generated client-side validator only ever covered fields rendered by a nested Struts tag (WW-2975). Use thehtml5theme withstruts.ui.html5.constraints=trueinstead.
-
Deprecated InterfacesInterfaceDescriptionsince 6.8.0, avoid using this interface and any of its implementation, it's going to be removed soon
-
Deprecated ClassesClassDescriptionsince 7.4.0, this legacy mapper predates the Struts REST plugin, which is the maintained way to build REST-style applications with Struts. Scheduled for removal in the next major release.since 7.4.0, this legacy mapper predates the Struts REST plugin, which is the maintained way to build REST-style applications with Struts. Scheduled for removal in the next major release.Since 7.2.0, use
AcceptLanguageLocaleHandler. Scheduled for removal in the next release cycle.Since 7.2.0, useCookieLocaleHandler. Scheduled for removal in the next release cycle.Since 7.2.0, use the top-level handler classes inorg.apache.struts2.interceptor.i18n. Scheduled for removal in the next release cycle.Since 7.2.0, useRequestLocaleHandler. Scheduled for removal in the next release cycle.Since 7.2.0, useSessionLocaleHandler. Scheduled for removal in the next release cycle.since 7.3.0, this accessor is no longer used by the framework and will be removed in a future version.since 6.8.0, to be removed, seeReflectionContextFactorysince 7.2, injectProxyServiceinstead. This class will be removed in a future version.
-
Deprecated FieldsFieldDescriptionsince 7.3.0, use
DefaultObjectTypeDeterminer.ELEMENT_PREFIXinstead. TheCollection_xxxkey format has been superseded byElement_xxxsince WebWork 2.1.x. Existing-conversion.propertiesfiles keep working:DefaultObjectTypeDeterminer.getElementClass(Class, String, Object)still falls back to this prefix.since 7.3.0, useDefaultObjectTypeDeterminer.ELEMENT_PREFIXinstead. A second public spelling of the same deprecatedCollection_prefix asDefaultObjectTypeDeterminer.DEPRECATED_ELEMENT_PREFIX, unused by the framework itself.since 7.3.0, unused - superseded by internal concurrent storage. Retained only for binary compatibility with subclasses compiled against earlier versions, and will be removed in a future release.since 7.3.0, no longer used. The unreachable content-type null-check inacceptFile()that referenced this key was removed as part of the in-memory upload optimization (WW-5413); there is no replacement. This constant will be removed in a future version.since 7.4.0, useStrutsConstants.STRUTS_CSP_NONCE_SOURCEinsteadsince 7.4.0, no replacement. Struts core never sets this key, so it has no effect on framework-driven binding. Indexed property access is now identified by inspecting the target type rather than by trusting a method name prefix, which is the check the key was standing in for. Application or plugin code which sets the key itself does still suppress the fast path, which is why this is deprecated rather than removed outright. Scheduled for removal in 8.0.0 by WW-5699.
-
Deprecated MethodsMethodDescriptionsince 7.4.0, for removal in 8.0.0. The generated client-side validator only ever covered fields rendered by a nested Struts tag (WW-2975). Use the
html5theme withstruts.ui.html5.constraints=true, which derives native HTML5 constraint attributes per field instead.since 7.4.0, for removal in 8.0.0. UseForm.getFieldValidators(String), which is generically typed and resolves the action's validators once per form rather than per field.since 7.4.0, for removal in 8.0.0. The generated client-side validator only ever covered fields rendered by a nested Struts tag (WW-2975). Use thehtml5theme withstruts.ui.html5.constraints=trueinstead.since 7.3.0, useStrutsTypeConverterHolder.computeMappingIfAbsent(Class, Function)instead.since 7.3.0, useStrutsTypeConverterHolder.computeMappingIfAbsent(Class, Function)instead.since 7.3.0, useStrutsTypeConverterHolder.computeMappingIfAbsent(Class, Function)instead.since 7.3.0, useTypeConverterHolder.computeMappingIfAbsent(Class, Function)which stores the built mapping itself.since 7.3.0, useTypeConverterHolder.computeMappingIfAbsent(Class, Function)which returns an empty map for classes known to have no mapping.since 7.3.0, useTypeConverterHolder.computeMappingIfAbsent(Class, Function), which resolves and caches the mapping in one call instead of requiring a check-then-act at the call site.since 7.2.0. OverrideCookieInterceptor.populateCookieValueIntoStack(String, String, Map, ValueStack, Object)instead so cookie writes are authorized byParameterAuthorizer. The default 5-arg implementation calls this method after the authorization gate, so existing overrides continue to receive only authorized cookies.since 7.4.0, useDefaultCspSettings.setNonceSource(String)insteadaPropertyDescriptorcannot describe every setter OGNL binds through; useStrutsParameterAuthorizer.findBindableAccessor(java.lang.Object, java.lang.String, long)withStrutsParameterAuthorizer.hasValidAnnotatedMethod(java.lang.Object, java.lang.reflect.Method, long)insteadsince 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.4.0, configuration is parsed once per container bySecurityMemberAccessConfig. This method still mutates this instance and is retained for tests and existing callers; it will be removed in Struts 8.0.0. The container no longer invokes this setter.since 7.1, useProxyService.resolveTargetMember(Member, Class)instead.since 7.2, injectProxyServiceinsteadsince 7.2, injectProxyServiceinsteadsince 7.2, injectProxyServiceinsteadsince 7.2, injectProxyServiceinsteadsince 7.2, injectProxyServiceinsteadsince 7.1, useProxyUtil.resolveTargetMember(Member, Class)instead. Since 7.2, injectProxyServiceinstead.since 7.2, injectProxyServiceinsteadsince 7.4.0, for removal in 8.0.0. The generated client-side validator only ever covered fields rendered by a nested Struts tag (WW-2975). Use thehtml5theme withstruts.ui.html5.constraints=trueinstead.
-
Deprecated Enum ConstantsEnum ConstantDescriptionsince 7.3.0, use
ConversionRule.ELEMENTinstead. TheCollection_xxxkey format has been superseded byElement_xxxsince WebWork 2.1.x; both are handled identically by the engine, andElement_xxxadditionally covers the values of aMap.
html5theme withstruts.ui.html5.constraints=true, which derives native HTML5 constraint attributes per field instead.