Package org.springframework.web.servlet.tags

# Class NestedPathTag

java.lang.Object
jakarta.servlet.jsp.tagext.TagSupport
org.springframework.web.servlet.tags.NestedPathTag

All Implemented Interfaces:
  `IterationTag`, `JspTag`, `Tag`, `TryCatchFinally`, `Serializable`

public class NestedPathTag extends TagSupport implements TryCatchFinally

The `<nestedPath>` tag supports and assists with nested beans or bean properties in the model. Exports a "nestedPath" variable of type String in request scope, visible to the current page and also included pages, if any.

The BindTag will auto-detect the current nested path and automatically prepend it to its own path to form a complete path to the bean or bean property.

This tag will also prepend any existing nested path that is currently set. Thus, you can nest multiple nested-path tags.

Attribute Summary
Attribute | Required? | Runtime Expression? | Description
--- | --- | --- | ---
path | true | true | Set the path that this tag should apply. For example, 'customer' to allow bind paths like 'address.street' rather than 'customer.address.street'.

Since:
  1.1
Author:
  Juergen Hoeller
See Also:
  - Serialized Form

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`NESTED_PATH_VARIABLE_NAME`
Name of the exposed variable within the scope of this tag: "nestedPath".

### Fields inherited from class jakarta.servlet.jsp.tagext.TagSupport

`id, pageContext`

### Fields inherited from interface jakarta.servlet.jsp.tagext.IterationTag

`EVAL_BODY_AGAIN`

### Fields inherited from interface jakarta.servlet.jsp.tagext.Tag

`EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

## Constructor Summary

Constructors
Constructor
Description
`NestedPathTag()`

## Method Summary

Modifier and Type
Method
Description
`void`
`doCatch(Throwable throwable)`
`int`
`doEndTag()`
Reset any previous nestedPath value.
`void`
`doFinally()`
`int`
`doStartTag()`
`String`
`getPath()`
Return the path that this tag applies to.
`void`
`setPath(String path)`
Set the path that this tag should apply.

### Methods inherited from class jakarta.servlet.jsp.tagext.TagSupport

`doAfterBody, findAncestorWithClass, getId, getParent, getValue, getValues, release, removeValue, setId, setPageContext, setParent, setValue`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### NESTED_PATH_VARIABLE_NAME

public static final String NESTED_PATH_VARIABLE_NAME
Name of the exposed variable within the scope of this tag: "nestedPath".

See Also:
  - Constant Field Values

## Constructor Details

### NestedPathTag

public NestedPathTag()

## Method Details

### setPath

public void setPath(@Nullable String path)
Set the path that this tag should apply.

For example, "customer" to allow bind paths like "address.street" rather than "customer.address.street".

See Also:
  - `BindTag.setPath(java.lang.String)`

### getPath

@Nullable public String getPath()
Return the path that this tag applies to.

### doStartTag

public int doStartTag() throws JspException

Specified by:
  `doStartTag` in interface `Tag`
Overrides:
  `doStartTag` in class `TagSupport`
Throws:
  `JspException`

### doEndTag

public int doEndTag()
Reset any previous nestedPath value.

Specified by:
  `doEndTag` in interface `Tag`
Overrides:
  `doEndTag` in class `TagSupport`

### doCatch

public void doCatch(Throwable throwable) throws Throwable

Specified by:
  `doCatch` in interface `TryCatchFinally`
Throws:
  `Throwable`

### doFinally

public void doFinally()

Specified by:
  `doFinally` in interface `TryCatchFinally`