Embora essas propriedades sejam definidas para todos os recursos, alguns recursos podem retornar valores nulos ou vazios ou fornecer uma exceção PROPRIEDADE_NÃO_SUPORTADA_PELO_SERVIDOR para tais propriedades.
Todas as propriedades (exceto o local) devem ser solicitadas explicitamente a partir do servidor antes de ficarem disponíveis a partir de um proxy.
A classe Recurso fornece métodos genéricos para acessar os valores de propriedades definidos por um proxy, utilizando o objeto PropertyName para cada propriedade. O WVCM define os métodos Resource.getProperty(PropertyNameList.PropertyName) e Resource.setProperty(PropertyNameList.PropertyName, Objeto). O método getProperty emitirá a exceção PropertyException se o proxy não contiver um valor válido para a propriedade identificada pelo objeto PropertyName.
Há também o método Resource.lookupProperty() para recuperação de um valor de propriedade. Se o valor da propriedade estiver definido, lookupProperty() retornará o mesmo objeto que getProperty. Se o valor da propriedade estiver indefinido, lookupProperty() retornará a exceção emitida pelo método getProperty.
Os métodos setProperty, getProperty e lookupProperty não verificam se o PropertyName está definido pela classe de proxy. Qualquer proxy pode ser utilizado para interagir com qualquer tipo de recurso. Tais interações falham apenas quando tentam gravar ou recuperar valores para propriedades não definidas para o recurso endereçado pelo proxy; as falhas ocorrem apenas quando o Provedor de API tenta transferir esses valores de propriedades para o recurso, ou a partir dele. Entretanto, observe que ao construir um proxy para um determinado local, o domínio do local deve corresponder ao domínio do provedor a partir do qual o proxy está sendo solicitado.
A classe CqRecord.FieldName é uma subclasse do PropertyName utilizada para nomear as propriedades de recurso que são campos definidos pelo esquema de um registro do ClearQuest. Note que, como o PropertyName, o parâmetro de tipo especifica o tipo de valor do campo.
Você pode utilizar essas extensões específicas para os registros do ClearQuest para acessar os campos de um registro. Para ver um exemplo, consulte Propriedades Aninhadas