Currently, you can use @ApplicationState to identify a field that can be used to access an Application State Object:
private MyState _myState;
However, there's no way to determine if the state object already exists; checking it (_myState != null) will force the object (and, perhaps, the session) into existence. A kind of "heisenbug".
What could be done is to look for a related field of type boolean, with "Exists" appended (i.e., "_myStateExists"). This boolean flag could be enhanced to check to see if the related ASO exists or not, without creating it.
|Field||Original Value||New Value|
|Status||Open [ 1 ]||Closed [ 6 ]|
|Resolution||Fixed [ 1 ]|
|Assignee||Howard M. Lewis Ship [ hlship ]|
|Fix Version/s||5.0.4 [ 12312381 ]|
|Workflow||jira [ 12399779 ]||Default workflow, editable Closed status [ 12569203 ]|
|Workflow||Default workflow, editable Closed status [ 12569203 ]||jira [ 12592125 ]|