@Nullable (jakarta.annotation & org.jspecify.annotations)
Apache Causeway' defaults for properties and parameters is that they are mandatory unless otherwise stated.
Both the @jakarta.annotation.Nullable annotation and @org.jspecify.annotations.Nullable annotation are recognized by Apache Causeway for both properties and parameters as means to indicate that the property/parameter is not mandatory.
For example:
import jakarta.annotation.Nullable;
@Nullable
@Getter @Setter
private String name;or:
import jakarta.annotation.Nullable;
public Customer updateName(
        @Nullable final String name) {
    setName(name);
    return this;
}Apache Causeway does provide several other ways to specify optionality: using the @Property#optionality() / @Parameter#optionality() annotation. For properties, the optionality can also be inferred from the JPA @Column#nullable() attribute.
| See the @Property#optionality() documentation for a much fuller discussion on the relationship between using the Apache Causeway annotations vs @Column#nullable(). | 
Metamodel validation during bootstrapping checks that there are no conflicting definitions of optionality.