if (ownerParameter != null)
{
if (ownerParameter.isActionParameter())
{
required = this.isInputTable();
final ClassifierFacade type = this.getType();
if (!required && type != null)
{
final String name = this.getName();
final String typeName = type.getFullyQualifiedName();
// - if the parameter is not selectable but on a targetting page it IS selectable we must
// allow the user to set the backing list too
final Collection views = ownerParameter.getAction().getTargetViews();
for (final Iterator iterator = views.iterator(); iterator.hasNext() && !required;)
{
final FrontEndView view = (FrontEndView)iterator.next();
final Collection parameters = view.getAllActionParameters();
for (final Iterator parameterIterator = parameters.iterator();
parameterIterator.hasNext() && !required;)
{
final Object object = parameterIterator.next();
if (object instanceof JSFParameter)
{
final JSFParameter parameter = (JSFParameter)object;
final String parameterName = parameter.getName();
final ClassifierFacade parameterType = parameter.getType();
if (parameterType != null)
{
final String parameterTypeName = parameterType.getFullyQualifiedName();
if (name.equals(parameterName) && typeName.equals(parameterTypeName))
{
required = parameter.isInputTable();
}
}