}
final SessionModule myModule = (SessionModule)context.getModule( SessionModule.NAMESPACE_URI );
// session object is read from global variable $session
final Variable var = myModule.resolveVariable( SessionModule.SESSION_VAR );
if( var == null || var.getValue() == null ) {
// No saved session, so create one
session = SessionModule.createSession( context, this );
} else if( var.getValue().getItemType() != Type.JAVA_OBJECT ) {
throw( new XPathException( this, "Variable $session is not bound to a Java object." ) );
} else {
session = (JavaObjectValue)var.getValue().itemAt( 0 );
}
// get attribute name parameter
final String attribName = getArgument(0).eval( contextSequence, contextItem ).getStringValue();
final Sequence attribValue = getArgument(1).eval( contextSequence, contextItem) ;