Skip to content

Document relationships between expressions, evaluation contexts, and accessors in SpEL #36968

Closed

Description

@sbrannen

Overview

As explained in #36823 (comment), we should document the relationships between SpEL expressions, evaluation contexts, constructor/method executors, and property/index accessors in order to better inform users about the expected lifecycle of such components as well as best practices.

In addition to improving the documentation in the reference manual, we should also update the Javadoc for the following APIs and implementations.

  • Expression / SpelExpression
  • ConstructorExecutor
  • MethodExecutor
  • PropertyAccessor
  • IndexAccessor
  • EvaluationContext / SimpleEvaluationContext / StandardEvaluationContext

NOTE: This issue is assigned and therefore not suitable for community contributions.

Related Issues

Activity

  1. added this to the 7.0.9 milestone on Jun 25, 2026
  2. self-assigned this
    on Jun 25, 2026
  3. added
    in: coreIssues in core modules (aop, beans, core, context, expression)
    on Jun 25, 2026
  4. hiSandog commented on Jun 30, 2026

    @hiSandog

    A SpEL documentation page that separates expression parsing, evaluation context, property accessors, method resolvers, and type conversion would be very useful. Many bugs come from treating the expression string as the whole story when the context controls what can actually be resolved. A diagram or table showing which component is responsible for each lookup step would make custom accessor/resolver examples easier to follow.

  5. added a commit that references this issue on Jul 29, 2026
    a894818
  6. github-actions commented on Jul 29, 2026

    @github-actions
    Contributor

    Fixed via a894818

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

in: coreIssues in core modules (aop, beans, core, context, expression)type: documentationA documentation task

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions