42
IBM TRIRIGA Application Platform Versão 3 Release 5.2 Guia de integração do OSLC IBM

© Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

IBM TRIRIGA Application PlatformVersão 3 Release 5.2

Guia de integração do OSLC

IBM

Page 2: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

NotaAntes de usar estas informações e o produto suportado por elas, leia as informações em “Avisos” na página 31.

Esta edição se aplica à versão 3, liberação 5, modificação 2 do IBM TRIRIGA Application Platform e a todas asliberações e modificações subsequentes até que seja indicado de outra forma em novas edições.

© Copyright IBM Corporation 2014, 2016.

Page 3: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Índice

Capítulo 1. Integrando dados usandoOSLC . . . . . . . . . . . . . . . . 1

Capítulo 2. Integrando como umconsumidor OSLC . . . . . . . . . . 3Componentes do OSLC . . . . . . . . . . . 3

Terminologia OSLC . . . . . . . . . . . 3Provedores de serviço e descoberta de provedoresde serviço . . . . . . . . . . . . . . 4Namespaces OSLC . . . . . . . . . . . 5Operações e recursos do OSLC . . . . . . . 6Formas de recursos . . . . . . . . . . . 7

Documentos de forma . . . . . . . . . 7ETags . . . . . . . . . . . . . . . 10URIs do IBM TRIRIGA para OSLC . . . . . 11

Capítulo 3. Trabalhando com recursosdo OSLC . . . . . . . . . . . . . . 13Consultando recursos do OSLC. . . . . . . . 13

Consulta utilizando métodos GET ou POST . . 13Parâmetros de consulta do OSLC . . . . . . 14

Criando recursos do OSLC . . . . . . . . . 18Criando registros que são associações de registrosprimários . . . . . . . . . . . . . . 19

Atualizando recursos OSLC . . . . . . . . . 19Método HTTP PUT . . . . . . . . . . . 20Método HTTP PATCH. . . . . . . . . . 21

Excluindo recursos OSLC. . . . . . . . . . 23Trabalhando com anexos e dados binários . . . . 24

Processamento de anexo do OSLC . . . . . . 24Processamento de dados binários do OSLC . . . 25

Capítulo 4. Administrando recursos doOSLC . . . . . . . . . . . . . . . 27Segurança do OSLC . . . . . . . . . . . 27

Mudanças de senha . . . . . . . . . . 27Senhas expiradas . . . . . . . . . . . 28

Criação de log do OSLC . . . . . . . . . . 28

Capítulo 5. Resolução de problemas doOSLC . . . . . . . . . . . . . . . 29Explicações de códigos HTTP do OSLC . . . . . 29

Avisos . . . . . . . . . . . . . . . 31Marcas comerciais . . . . . . . . . . . . 33Termos e Condições para a Documentação doProduto . . . . . . . . . . . . . . . 33Declaração de privacidade online da IBM . . . . 34

© Copyright IBM Corp. 2014, 2016 iii

Page 4: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

iv © Copyright IBM Corp. 2014, 2016

Page 5: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Capítulo 1. Integrando dados usando OSLC

Os aplicativos do produto e alguns aplicativos externos podem vincular ecompartilhar dados usando a integração Open Services for Lifecycle Collaboration(OSLC). As especificações do OSLC definem como os aplicativos de ciclo de vidarepresentam, vinculam e acessam recursos baseados em padrões estabelecidos deInternet e de dados vinculados, incluindo arquitetura de transferência de estadorepresentativo (REST), especificações de estrutura de descrição de recurso (RDF) emétodos de protocolo de transferência de hipertexto (HTTP). O OSLC facilita paraas ferramentas o trabalho em conjunto e o compartilhamento de dados. Seguindoas regras e os métodos que são definidos pelas especificações, os aplicativos podemexecutar as operações de criação, solicitação, atualização e exclusão nos recursos deoutro aplicativo.

A comunidade do OSLC é um grupo de desenvolvedores e organizações desoftware que estão trabalhando para padronizar como as ferramentas de ciclo devida de software compartilham dados, como requisitos, defeitos, casos de teste ehistórico de mudanças. A versão 2.0 da especificação OSLC é suportada paraintegração OSLC de aplicativos. As especificações e outros recursos do OSLC estãodisponíveis na web.

A integração OSLC é realizada entre um aplicativo consumidor e um aplicativoprovedor externo. O aplicativo provedor OSLC torna seus dados de recursodisponíveis ao aplicativo consumidor por meio de contêineres, que são conhecidoscomo provedores de serviço. Com os dados de recursos disponibilizados, oaplicativo consumidor pode criar links entre seus dados e os dados do recurso doaplicativo do provedor. É possível configurar e ativar qualquer aplicativo em seuproduto para agir como um aplicativo consumidor OSLC.

Os aplicativos consumidores podem localizar os URIs que identificam os recursosno aplicativo provedor e usar esses URIs para solicitar os resultados da consulta,por exemplo. Para o IBM® TRIRIGA, os provedores de serviços estão disponíveisem http://yourserver/oslc/sp.

Os URIs usados em solicitações OSLC devem ser URLs codificadas.

© Copyright IBM Corp. 2014, 2016 1

Page 6: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

2 © Copyright IBM Corp. 2014, 2016

Page 7: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Capítulo 2. Integrando como um consumidor OSLC

Seu aplicativo, um consumidor OSLC, pode ser configurado para suportar doistipos de interação: consulta e criação. Os resource links são obtidos pelo aplicativoconsumidor do aplicativo provedor.

A figura a seguir ilustra as interações entre os aplicativos consumidor e provedor.Como um consumidor OSLC, o aplicativo pode consultar ou criar recursos noaplicativo provedor e reter os links para esses recursos. Com os links, o aplicativoconsumidor pode fazer solicitações para o aplicativo provedor para consultar,atualizar ou excluir os recursos.

Resource links

Aplicativo consumidorOSLC (por exemplo,IBM TRIRIGA Anywhere)

Dados de recurso

Aplicativo provedorOSLC (por exemplo,IBM TRIRIGA)

Factory de criação

Recurso de consulta

Resource link retornado

O aplicativo consumidor atualiza ou excluium recurso usando o resource link

Componentes do OSLCProvedores de serviços, recursos e ETags fornecem detalhes que são necessáriospara consumir os dados do IBM TRIRIGA por meio do OSLC.

Terminologia OSLCDefinições são fornecidas para termos OSLC do IBM TRIRIGA.

aplicativo consumidorUm aplicativo que usa os dados no data warehouse central para umanecessidade de negócios específica.

factory de criaçãoUm URI que é usado para criar novos recursos usando HTTP POST.

aplicativo provedorNo contexto de OSLC, um aplicativo que torna seus dados de recursodisponíveis ao aplicativo consumidor por meio de contêineres que sãochamados provedores de serviços. IBM TRIRIGA é um aplicativo provedorpara os aplicativos remotos do IBM TRIRIGA Anywhere.

registro do provedorUm registro que identifica o aplicativo provedor e contém definições parauma ou mais interações OSLC entre um aplicativo consumidor e oaplicativo provedor.

© Copyright IBM Corp. 2014, 2016 3

Page 8: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

URI públicoO URI raiz que é usado para acessar o aplicativo provedor do OSLC.

capacidade de consultaUm URI base para a formação de URIs de recurso de consulta.

recursoNo contexto de OSLC, um serviço ou objeto de dados de rede que podeser identificado por um URI.

Resource Description Framework (RDF)Uma estrutura para representar informações na web.

forma do recursoUma especificação que define uma lista fixa de propriedades para orecurso, valores e tipos de dados esperados e regras de validação pararecursos novos ou alterados.

tipo de recursoNo contexto de OSLC, o tipo de dados que é vinculado entre aplicativosintegrados, por exemplo, uma solicitação de mudança de status de tarefa.

REST

Transferência de Estado de Declaração: Um estilo de arquitetura desoftware para sistemas de hipermídia distribuídos, como o World WideWeb. O termo também é sempre usado para descrever qualquer interfacesimples que usa XML (ou YAML, JSON, texto simples) sobre HTTP semuma camada de sistema de mensagens adicional, como SOAP.

provedor de serviçosNo contexto de OSLC, um contêiner de recursos que é hospedado por umaferramenta ou um produto para ativar o uso dos recursos.

documento de formaUm registro que descreve a forma do recurso e a disponibiliza por meio doURI.

Provedores de serviço e descoberta de provedores de serviçoUm provedor de serviços é um contêiner ou uma coleção de recursos que éhospedada por uma ferramenta ou um produto. Os provedores de serviçosuportam agrupamento de recursos semelhantes, como defeitos ou tarefas, quepodem ser configurados para integração.

Um provedor de serviços em um aplicativo provedor OSLC contém os dados derecurso que podem ser vinculados aos dados do aplicativo consumidor por meioda integração dos aplicativos. Os dados do recurso no IBM TRIRIGA podem estarem idiomas multibyte. Para integrar um aplicativo consumidor e um aplicativoprovedor, o consumidor deverá descobrir ou identificar os provedores de serviçoque estão disponíveis no aplicativo provedor.

No IBM TRIRIGA, um provedor de serviços pode ser simples ou tão complexoquanto um aplicativo que contém muitos módulos e objetos de negócios. Vocêpode descobrir os provedores de serviço no IBM TRIRIGA utilizando os seguintesmétodos:v Em Ferramentas > Configuração do sistema > Integração > Gerenciador OSLC

v Usando o URI: http://yourserver/oslc/sp

4 © Copyright IBM Corp. 2014, 2016

Page 9: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Com cada método, uma lista de provedores de serviço é retornada. O exemplo aseguir mostra o URI para funcionários: http://yourserver/oslc/sp/Employee.

O URI aponta para o documento do provedor de serviços que está no formatoRDF/XML. O formato RDF/XML é suportado para documentos de forma,fornecedores de serviço, recursos e dados de recurso. O aplicativo consumidorpode usar o formulário do provedor de serviços para determinar quais recursosestão disponíveis e quais serviços eles suportam, como consulta ou criação.

O provedor de serviços OSLC suporta o factory de criação e as operações dorecurso de consulta do OSLC que fornecem aos consumidores a URI para criar ouprocurar recursos suportados pelo provedor de serviços. O documento doprovedor de serviços descreve os recursos disponíveis e os mapeamentos denamespace, bem como as operações que são suportadas pelo provedor de serviçospara esses recursos.

Na resposta de amostra a seguir, o provedor de serviços OSLC é referenciado dapropriedade rdfs:member. O documento do provedor de serviços para o domíniomostra o URI para a tarefa de trabalho:<rdf:RDF><rdf:Description rdf:about="http://yourserver/oslc/sp"><rdfs:member rdf:resource="http://yourserver/oslc/sp/WorkTask"></rdf:Description></rdf:RDF>

Namespaces OSLCO OSLC define namespaces comuns. A propriedade prefixDefinition mostratodos os mapeamentos de prefixo para namespace que o provedor de serviços usapara descrever os recursos que ele gerencia.

O namespace para uma propriedade deve terminar com um # ou /. Por exemplo,http://yourserver/ns/property#.

A tabela a seguir exibe uma amostra de namespaces OSLC:

Prefixo Namespace

rdf http://www.w3.org/1999/02/22-rdf-syntax-ns#

oslc http://open-services.net/ns/core#

dcterms http://purl.org/dc/terms/

asset http://open-services.net/ns#

foaf http://xmlns.com/foaf/0.1/

rdfs http://www.w3.org/2000/01/rdf-schema#

rr http://jazz.net/ns/ism/registry#

spi http://jazz.net/ns/tririga

O extrato a seguir da seção de serviço do documento do provedor de serviçosmostra os namespaces OSLC e RDF:<oslc:ServiceProvider rdf:about="http://yourserver/oslc/sp/WorkTask"><oslc:prefixDefinition><oslc:PrefixDefinition><oslc:prefixBase rdf:resource="http://open-services.net/ns/core#"/><oslc:prefix>oslc</oslc:prefix>

</oslc:PrefixDefinition></oslc:prefixDefinition>

Capítulo 2. Integrando como um consumidor OSLC 5

Page 10: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

<oslc:prefixDefinition><oslc:PrefixDefinition><oslc:prefixBase

rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#"/><oslc:prefix>rdf</oslc:prefix>

</oslc:PrefixDefinition></oslc:prefixDefinition>

Operações e recursos do OSLCO provedor de serviços OSLC suporta as operações de factory de criação ecapacidade de consulta para os recursos que estão disponíveis no documento doprovedor de serviços. Um factory de criação fornece o URI de criaçãooslc:creation que você usa para criar novos recursos usando HTTP POST. Vocêusa o URI de consulta oslc:queryBase para selecionar uma coleção de recursosgerenciada pelo provedor de serviços. Quando o recurso é obtido, por consulta oucriação, o recurso pode ser atualizado ou excluído.

Operação de factory de criação

Se o recurso suportar criação, poderá haver uma operação de factory de criação. Oextrato a seguir de um documento do provedor de serviços mostra a operação defactory de criação, a URL para a forma do recurso e a URL para a operação derecurso de criação que cria a forma.<oslc:creationFactory><oslc:CreationFactory><oslc:resourceType rdf:resource="http://jazz.net/ns/tririga#WorkTask"/><oslc:resourceShape rdf:resource="http://yourserver/oslc/shapes/WorkTask"/><oslc:creation rdf:resource="http://yourserver/oslc/so/WorkTask"/><oslc:label>Create WorkTask</oslc:label><dcterms:title>OSLC creation factory for WorkTask</dcterms:title>

</oslc:CreationFactory></oslc:creationFactory>

......

Operação de capacidade de consulta

O URI de consulta é oslc:queryBase e o exemplo a seguir mostra uma procura poruma tarefa de trabalho usando a solicitação: <oslc:queryBaserdf:resource="http://yourserver/oslc/spq/oslcwodetail"/>:

<oslc:queryCapability><oslc:QueryCapability><oslc:resourceType rdf:resource="http://jazz.net/ns/tririga#WorkTask"/><oslc:queryBase rdf:resource="http://yourserver/oslc/so/WorkTask"/><oslc:labelQuery>WorkTask</oslc:label><dcterms:taskname>OSLC query capability for WorkTask</dcterms:taskname>

</oslc:QueryCapability></oslc:queryCapability>

Quando você define uma forma de recurso OSLC, todas as consultas para orecurso estão disponíveis por meio do provedor de serviços. As consultas sãodisponibilizadas com as capacidades de consulta do OSLC.

Uma forma de recurso OSLC é definida por um relatório que é definido nogerenciador de relatórios do IBM TRIRIGA. A forma de recurso usa o relatóriocomo modelo para definir as propriedades disponíveis para seu recurso. Essaspropriedades então são retornadas quando você executa uma capacidade deconsulta.

Cada recurso de consulta contém uma propriedade denominada base de consultaque você usa para aplicar critérios estendidos ao seu recurso. Esses critériostornam possível predefinir filtros para a mesma forma. O campo Base de consultano recurso de consulta retém o nome de uma consulta que é compatível com a

6 © Copyright IBM Corp. 2014, 2016

Page 11: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

consulta em que o recurso está definido. Essa consulta, se definida, é usada parafiltragem. É possível usar os parâmetros do TRIRIGA na consulta, como$$USERID$$, $$RECORDID$$ ou $$PARENT::SECTIONAME::FIELDNAME$$. A bas e deconsulta é uma lista e o conteúdo da lista muda quando o recurso muda. Porexemplo, a consulta MyWorkTask retorna uma lista de tarefas de trabalho que sãodesignadas ao usuário que faz a solicitação de consulta.

Formas de recursosUma forma de recurso é um arquivo Resource Description Framework (RDF) quefornece uma descrição dos tipos de dados de recursos que podem ser utilizadosem uma interação. A forma contém uma lista de atributos do recurso.

É possível visualizar o RDF para um recurso na guia Visualizar do formulário derecurso.

Uma forma de recurso é semelhante a um esquema XML no modo que define aestrutura de dados do recurso.

Documentos de formaUm documento de forma no OSLC é um meio eletrônico de ver a aparência de umrecurso, incluindo todas as suas dependências, atributos e propriedades. Porexemplo, um documento de forma de tarefa de trabalho lista os detalhes dorecurso de tarefa de trabalho.

Os documentos de forma cobrem todos os recursos, incluindo ativos, empresas,ordens de compra e tarefas de trabalho. Um documento de forma também mostrao que é necessário. O documento de forma de recurso pode incluir links para osdocumentos de forma para os objetos-filho. RDF/XML é usado como o formato dodocumento de forma.

Uma forma de recurso exibe propriedades, ações e os recursos vinculados queestão definidos para o recurso.

No IBM TRIRIGA, quando você cria um novo recurso com o formulário Recursodo OSLC, devem-se especificar o módulo, o objeto de negócios e uma consulta deobjeto de negócios ou devem-se selecionar um módulo e uma consulta de objetode multinegócios. Comece criando a consulta no IBM TRIRIGA. Ao criar as colunasde exibição na consulta, você está definindo as propriedades iniciais. É possívelusar a ação Importar todos os campos no formulário para importar as colunas deexibição da consulta como propriedades de recurso. O processo de importaçãotenta configurar os campos do IBM TRIRIGA com os valores de propriedade OSLCcorrespondentes, como somente leitura. É possível modificar os campos após aimportação e remover as propriedades. A propriedade dcterms:identificador criao ID de registro durante o processo de importação. O campo triRecordIdSY énecessário se você planeja atualizar o recurso.

A tabela a seguir mostra como os tipos de campo do IBM TRIRIGA são mapeadospara os tipos de valor de propriedade OSLC:

Tipo de campo do IBM TRIRIGA Tipo de valor de propriedade OSLC

Booleano OslcPropertyValueType.Boolean

Objeto de Negócios OslcPropertyValueType.String

Classificação OslcPropertyValueType.String

Rolagem de classificação OslcPropertyValueType.Decimal

Capítulo 2. Integrando como um consumidor OSLC 7

Page 12: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Tipo de campo do IBM TRIRIGA Tipo de valor de propriedade OSLC

Cor OslcPropertyValueType.String

Nota: o URI deve ser a URL codificadaquando você filtra campos de cores.Substitua o símbolo # por %23.

Número de controle OslcPropertyValueType.String

Data OslcPropertyValueType.String

Data e hora OslcPropertyValueType.String

Duração OslcPropertyValueType.String

Rollup financeiro OslcPropertyValueType.Decimal

Imagem OslcPropertyValueType.String

Somente rótulo OslcPropertyValueType.String

Lista OslcPropertyValueType.String

Número OslcPropertyValueType.Decimal

Senha OslcPropertyValueType.String

Sistema somente leitura OslcPropertyValueType.String

Texto OslcPropertyValueType.String

Hora OslcPropertyValueType.String

Unidade de Medida OslcPropertyValueType.String

Url OslcPropertyValueType.String

Um recurso vinculado aponta para o recurso a ser vinculado. Ele fornece assequências de associação que descrevem o relacionamento. Seguem exemplos desequências de associação: Tem ativo, Gerencia e Designado a. É possível tambémincluir um recurso vinculado em uma propriedade. Um recurso vinculado épermitido, e é opcional, para campos localizadores e seções inteligentes.

Exemplo: documento de forma de tarefa de trabalho

Um documento de forma de tarefa de trabalho lista todas as propriedades,atributos e dependências de uma tarefa de trabalho. O código a seguir mostra umextrato de um documento de forma de tarefa de trabalho denominado WorkTask.Quatro propriedades estão incluídas neste documento de forma de recurso, mas odocumento pode ter muito mais propriedades listadas.<rdf:RDF

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"xmlns:oslc="http://open-services.net/ns/core#"xmlns:spi="http://jazz.net/ns/tririga/property#"xmlns:dcterms="http://purl.org/dc/terms/">

<oslc:ResourceShape rdf:about="http://yourserver/oslc/shapes/WorkTask"><oslc:property>

<oslc:Property><oslc:representation rdf:resource="http://open-services.net/ns/core#Either"/><oslc:readOnly>false</oslc:readOnly><oslc:occurs rdf:resource="http://open-services.net/ns/core#Exactly-one"/><oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#string"/><dcterms:title rdf:datatype="http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral">ID</dcterms:title><oslc:name>RecordInformation.triIdTX>/oslc:name><oslc:propertyDefinition rdf:resource="http://jazz.net/ns/tririga/property#triIdTX"/>

</oslc:Property></oslc:property><oslc:property>

<oslc:Property><oslc:representation rdf:resource="http://open-services.net/ns/core#Either"/><oslc.readOnly>false</oslc:readOnly><oslc:occurs rdf:resource="http://open-services.net/ns/core#Exactly-one"/><oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#dateTime"/>

8 © Copyright IBM Corp. 2014, 2016

Page 13: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

<oslc:defaultValue>TIMESTAMP</oslc:defaultValue><dcterms:title rdf:datatype="http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral">Planned Start</dcterms:title><oslc:name>RecordInformation.triPlannedStartDT</oslc:name><oslc:propertyDefinition rdf:resource="http://jazz.net/ns/tririga/property#triPlannedStartDT"/>

</oslc:Property></oslc:property><oslc:property><oslc:Property><oslc:representation rdf:resource="http://open-services.net/ns/core#Either"/><oslc:readOnly>true</oslc:readOnly><oslc:occurs rdf:resource="http//open-services.net/ns/core#Exactly-one"/><oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#decimal"/><dcterms:title rdf:datatype="http//www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral">Actual Total Cost</dcterms:title><oslc:name>RecordInformation.triActualTotalCostNU</oslc:name><oslc:propertyDefinition rdf:resource="http://jazz.net/ns/tririga/property#triActualTotalCostNU"/>

</oslc:Property></oslc:property><oslc:property><oslc:Property><oslc:representation rdf:resource="http://open-services.net/ns/core#Either"/><oslc:readOnly>false</oslc:readOnly><oslc:occurs rdf:resource="http//open-services.net/ns/core#Exactly-one"/><oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#string"/><dcterms:title rdf:datatype="http//www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral">Task Name</dcterms:title><oslc:name>RecordInformation.triNameTX</oslc:name><oslc:propertyDefinition rdf:resource="http://jazz.net/ns/tririga/property#trNameTX"/>

</oslc:Property></oslc:property><dcterms:title>WorkTask</dcterms:title>

</oslc:ResourceShape></rdf:RDF>

Campos de número:

Um atributo para escala é fornecido para os campos número no OSLC. Escala é onúmero de dígitos à direita do decimal para o número.

Se o número tiver uma máscara de exibição customizada, o valor de escala que éretornado será baseado na máscara de exibição customizada. Se a máscara deexibição estiver ausente e não houver nenhuma unidade de medida (UOM)configurada, o valor de dois será retornado por padrão. Se houver um UOMconfigurado para o campo de número, mas não houver nenhuma máscara deexibição configurada para o campo, a escala da máscara de exibição de UOM seráretornada. Os caracteres 0 e # na máscara de exibição são considerados quando aescala é determinada.

Exemplo: Escala em campos de número

O exemplo a seguir mostra os resultados retornados com um valor de escala de 3:<oslc:property><oslc:Property><spi:scale> 3 </spi:scale><oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#decimal"/><oslc:readOnly>false</oslc:readOnly><oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" /><dcterms:title rdf:datatype="http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral">Cost </dcterms:title><oslc:name> triCostNU </oslc:name><oslc:propertyDefinition rdf:resource="http://jazz.net/ns/spi#triCostNU" /></oslc:Property></oslc:property>

Propriedades de lista e de UOM:

É possível visualizar os valores que são permitidos para as propriedades de lista ede unidade de medida (UOM).

Capítulo 2. Integrando como um consumidor OSLC 9

Page 14: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Uma propriedade de lista ou de UOM possui um elemento oslc:allowedValuesque possui um URI de recurso. O URI retorna uma lista de valores disponíveis quepodem ser usados para essa propriedade de lista ou de UOM.

Exemplo

O exemplo a seguir mostra uma propriedade com o elemento oslc:allowedValuese, em seguida, a lista de valores permitidos que resulta do URI no elemento:<oslc:property><oslc:Property><oslc:defaultValue>Japan Yen</oslc:defaultValue><oslc:readOnly>false</oslc:readOnly><oslc:valueType rdf:resource="http://www.w3.org/2001/XMLSchema#string"/><oslc:usage rdf:resource="http://jazz.net/ns/ism/datatypes/smarter_physical_infrastructure#uom" /><oslc:occurs rdf:resource="http://open-services.net/ns/core#Zero-or-one" /><oslc:name>exampleUOM</oslc:name><dcterms:title rdf:datatype="http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral">exampleUOM</dcterms:title><oslc:allowedValues rdf:resource="http://yourserver/oslc/system/list/resourceName/spi:exampleUOM" /><oslc:propertyDefinition rdf:resource="http://jazz.net/ns/spi#exampleUOM" /></oslc:Property></oslc:property>

<rdf:RDF><oslc:allowedValues rdf:about="http://yourserver/oslc/system/list/resourceName/spi:exampleUOM"><oslc:allowedValues><oslc:allowedValues><oslc:allowedValue>US Dollars</oslc:allowedValue><oslc:allowedValue>Swedish Krona/Kronor</oslc:allowedValue><oslc:allowedValue>Brazilian Real</oslc:allowedValue><oslc:allowedValue>Russian Ruble</oslc:allowedValue><oslc:allowedValue>Norwegian Krone</oslc:allowedValue><oslc:allowedValue>New Zealand Dollars</oslc:allowedValue><oslc:allowedValue>United Kingdom Pounds</oslc:allowedValue><oslc:allowedValue>Thai Baht</oslc:allowedValue><oslc:allowedValue>Canadian Dollars</oslc:allowedValue><oslc:allowedValue>Egyptian Pound</oslc:allowedValue><oslc:allowedValue>Euro</oslc:allowedValue><oslc:allowedValue>Polish Zloty</oslc:allowedValue><oslc:allowedValue>Korea Won</oslc:allowedValue><oslc:allowedValue>Hungarian Forint</oslc:allowedValue><oslc:allowedValue>South Africa Rand</oslc:allowedValue><oslc:allowedValue>Switzerland Francs</oslc:allowedValue><oslc:allowedValue>Japan Yen</oslc:allowedValue><oslc:allowedValue>Australia Dollars</oslc:allowedValue><oslc:allowedValue>Israeli New Shekel</oslc:allowedValue><oslc:allowedValue>Danish Krone</oslc:allowedValue><oslc:allowedValue>Indian Rupees</oslc:allowedValue><oslc:allowedValue>clIndiaRupee</oslc:allowedValue></oslc:allowedValues></oslc:allowedValues></oslc:allowedValues></rdf:RDF>

ETagsUma ETag (tag de entidade) é um cabeçalho de HTTP usado para validar que ocliente (como um dispositivo móvel) tem a versão mais recente de um registro.Quando uma solicitação GET é feita, o ETag é retornado como um cabeçalho deresposta. O ETag também permite que o cliente faça solicitações condicionais.

10 © Copyright IBM Corp. 2014, 2016

Page 15: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Além de suportar os métodos de atualização básica HTTP PUT e HTTP PATCH, oOSLC também suporta atualizações condicionais. As atualizações condicionaisusam tags de entidade HTTP e cabeçalhos If-Match para validar se os clientes têma entidade mais atual para um recurso. Esse processo é usado para detectaratualizações inválidas e condições de disputa. Por exemplo, se dois clientescarregarem o mesmo recurso, o OSLC enviará o cabeçalho ETag com a resposta.

O valor de ETag é a data e hora da última atualização para o recurso. O clientearmazena o valor do cabeçalho ETag e o envia como parte do cabeçalho HTTPIf-Match para uma solicitação de atualização subsequente. O servidor avalia ocabeçalho If-Match e determina se o cliente tem uma versão antiga ou a versãomais recente do recurso. Se o servidor determinar que a versão cliente é antiga, eleenviará de volta uma resposta HTTP 412 condição prévia com falha. O clienteobtém o recurso novamente e envia uma solicitação baseada no ETag atualizado.Entretanto, se o servidor determinar que a versão cliente é a versão mais recente, aatualização será implementada, a menos que qualquer validação de negócios ourestrição de banco de dados seja encontrada.

O cliente também pode enviar a solicitação sem o cabeçalho If-Match ou com ovalor do cabeçalho If-Match configurado como * (asterisco). Enviar essa solicitaçãoé semanticamente equivalente a não ter cabeçalho If-Match na solicitação deatualização. Nos dois casos, a atualização é incondicional. Se o recurso que émencionado pelo URI existir e nenhuma validação de negócios ou restrição debanco de dados for encontrada, a atualização será implementada.

URIs do IBM TRIRIGA para OSLCOs URIs que você usa para se conectar ao IBM TRIRIGA usando OSLC sãoexclusivos.

Você usa os URIs a seguir para conectar-se ao IBM TRIRIGA:

Componente OSLC Descrição

Página de recursos do sistema http://yourserver/oslc

Login http://yourserver/oslc/login

Logout http://yourserver/oslc/logout

Factory de criação http://yourserver/oslc/so

Recurso de consulta http://yourserver/oslc/spq

Detalhes da consulta http://yourserver/oslc/so

Forma do recurso http://yourserver/oslc/shapes

Para acessar a página de forma do recurso,use http://yourserver/oslc/shapes/ResourceShapeName

Provedor de serviços http://yourserver/oslc/sp

Capítulo 2. Integrando como um consumidor OSLC 11

Page 16: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

12 © Copyright IBM Corp. 2014, 2016

Page 17: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Capítulo 3. Trabalhando com recursos do OSLC

Use métodos HTTP para definir como os usuários criam, consultam, atualizam ouexcluem recursos do OSLC.

A segurança do IBM TRIRIGA é aplicada a todas as atividades de dados. Umusuário não pode criar, consultar, atualizar ou excluir um registro sem acesso desegurança apropriado.

Consultando recursos do OSLCÉ possível consultar recursos do OSLC usando o método HTTP GET ou o métodoHTTP POST. Altere os parâmetros de consulta para controlar como os usuáriosprocuram recursos. O OSLC define uma sintaxe de consulta leve que se baseia nopadrão SPARQL para recursos de consulta.

Consulta utilizando métodos GET ou POSTQuando você consulta recursos OSLC, é possível usar o método HTTP GET ouHTTP POST.

Quando você consultar recursos OSLC usando HTTP GET, especifique osparâmetros da consulta no URI. Se o URI tiver mais de 2000 caracteres, vocêdeverá consultar usando HTTP POST, em vez de HTTP GET. Será possível tambémusar HTTP POST se o URI tiver menos de 2000 caracteres, mas ainda for longo, ouse você desejar ocultar os parâmetros de consulta para que eles não sejam exibidosno URI.

Quando você consultar usando HTTP POST, defina o cabeçalho de HTTPContent-Type como application/x-www-form-urlencoded, envie o URI semparâmetros e especifique os parâmetros de consulta no corpo da solicitação deHTTP.

Exemplo: consulta utilizando HTTP GET

Segue um exemplo de consulta utilizando HTTP GET. Todos os parâmetros deconsulta são exibido no URI.http://yourserver/oslc/spq/WorkTaskQuery?oslc.select=spi:triNameTX,spi:RCA{spi:triRCARemedyCL}&oslc.where=spi:RCA{spi:triRCARemedyCL="Clean"}&oslc.orderBy=%2Bspi:triNameTX

Exemplo: consultando utilizando HTTP POST

Segue um exemplo da mesma consulta utilizando HTTP POST. O URI é reduzido.http://yourserver1/oslc/spq/WorkTaskQuery

Corpo HTTP

O corpo da solicitação de HTTP contém todos os parâmetros de consulta.oslc.select=spi:triNameTX,spi:RCA{spi:triRCARemedyCL}&oslc.where=spi:RCA{spi:triRCARemedyCL="Clean"}&oslc.orderBy=%2Bspi:triNameTX

© Copyright IBM Corp. 2014, 2016 13

Page 18: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Parâmetros de consulta do OSLCOs parâmetros de consulta do OSLC fornecem opções de como os recursos doOSLC são consultados. Por exemplo, o parâmetro oslc.orderBy define a ordemdos resultados da consulta. Os parâmetros de consulta HTTP do OSLC que sãosuportados são oslc.properties, oslc.where, oslc.orderBy, oslc.select,oslc.pageSize e pageno.

Se uma propriedade não estiver na seção Geral de um formulário, deve-seespecificar o nome da seção para a propriedade, no formatosectionname#fieldname. Por exemplo, triDetails#triTaskTypeCL.

parâmetro oslc.properties

O parâmetro de consulta oslc.properties especifica a lista de propriedades paraum recurso OSLC. As propriedades podem ser do próprio recurso ou de umrecurso vinculado. Ele é usado para obter uma representação parcial do recurso. Oparâmetro oslc.properties não é aplicável a recursos de coleção. Um recurso decoleção é um recurso OSLC que tem outros recursos OSLC como membros.

Exemplo: solicitando atributos

O exemplo de solicitação a seguir especifica que os valores para os atributosshortTitle e isTask são retornados nos resultados:http://yourserver/oslc/so/WorkTask/337?oslc.properties=oslc:shortTitle,spi:isTask

Exemplo: solicitando atributos de recursos vinculados

A solicitação a seguir especifica que o valor para o nome da organização do clienteé retornado nos resultados:http://yourserver/oslc/so/WorkTask/13353622?oslc.properties=*,spi:triCustomerOrgTX{spi:triNameTX}

Essa solicitação produz os resultados a seguir:{

spi:triNameTX: "WorkTask"spi:triStatusCL: "Draft"spi:triIdTX: "1027019"-spi:triCustomerOrgTX: {

spi:triNameTX: "Company 01"rdf:about: "http://yourserver/oslc/so/OrganizationRS/12877121"

}rdf:about: "http://yourserver/oslc/so/triWorkTaskRS/13353622"-trira:action: [10]

0: "triDelete"1: "triInvalidUploadHidden"2: "triIssue"3: "triBaseline"4: "triApplyTemplate"5: "triCopy"6: "triPlanHidden"7: "triSave"8: "triSaveAndClose"9: "triTemporaryTemplate"

-prefixes: {oslc: "http://open-services.net/ns/core#"rdf: "http://www.w3.org/1999/02/22-rdf-syntax-ns#"

14 © Copyright IBM Corp. 2014, 2016

Page 19: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

trira: "http://jazz.net/ns/tririga#"dcterms: "http://purl.org/dc/terms/"

}}

parâmetro oslc.where

O parâmetro oslc.where especifica a cláusula WHERE para a filtragem do conjuntode resultados de uma consulta. Por exemplo, você deseja ver uma lista de recursosOSLC de tarefa de trabalho que foram criados dentro de um intervalo de tempo eforam aprovados pela gerência. É possível filtrar por recursos vinculados usando oparâmetro oslc.where. Por exemplo, você talvez deseje filtrar as pessoas de acordocom o nome do gerente para o qual as pessoas relatam.

A cláusula WHERE do OSLC suporta os seguintes operadores de comparaçãobásicos:

Símbolo Descrição

= Igualdade

v "value" = Igual a

v "%value" = Termina com

v "value%" = Inicia com

v "%value%" = Contém

Note que, se você digita manualmente o URIcom este símbolo % como parte da procura,deve-se codificar o símbolo como a seguir:

"%25value"

!= Desigualdade

< Menor que

> Maior que

<= Menor ou igual a

>= Maior ou igual a

Se você precisar filtrar nulo ou não nulo, insira a palavra nulo após o símbolo.

Requisitos para o parâmetro oslc.where

As datas são expressas no formato ISO 8601. Para os tipos de campo Data e Hora,milissegundos mostram se o campo tem um valor de milissegundo diferente dezero.

A especificação OSLC suporta and como operador booleano entre expressõesbooleanas. O operador booleano or não é suportado. No exemplo a seguir, o valorliteral para status está entre aspas porque a propriedade de status tem um tipo dedados de sequência. O valor de quantidade não tem aspas porque é um tipo dedados decimais. Valores inteiros e booleanos também não requerem aspas. Porexemplo, spi:status="Closed" and spi:quantity>10.5 and spi:active=true emque spi:active possui um tipo de dados booleanos.

A especificação OSLC suporta or implicitamente em uma única propriedadeusando o operador in. Por exemplo, para ver todas as tarefas de trabalho que estãono status Emitido ou Ativo, use a consulta spi:status in ["Issued","Active"]

Capítulo 3. Trabalhando com recursos do OSLC 15

Page 20: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Exemplo: procurando tarefas de trabalho que foram criadas emum intervalo de tempo e estão aprovadas

A cláusula a seguir lista os recursos de tarefa de trabalho que foram criados emum intervalo de tempo específico:

spi:status="Approved" and dcterms:created>"2003-07-07T09:50:00-04:00" anddcterms:created<="2004-07-07T09:50:00-04:00".

Usando o parâmetro oslc.orderBy para especificar a ordem declassificação

O parâmetro oslc.orderBy define como os resultados de uma consulta sãoordenados. Por exemplo, uma lista de tarefas de trabalho pode ser ordenada pordata ou por ID.

Para organizar tarefas de trabalho com a data de criação em ordem crescente e aduração estimada em ordem decrescente, use o parâmetro oslc.orderBy a seguir:+dcterms:created,-spi:estimatedDuration. O + indica uma ordem de classificaçãocrescente e – indica uma ordem de classificação decrescente. Os valores sãoseparados por vírgulas. O parâmetro oslc.orderBy a seguir não é válido porquenão há nenhuma ordem de classificação padrão na sintaxe de consulta do OSLC:dcterms:created,-spi:estimatedDuration. Deve haver um + ou - explícito com onome da propriedade. O parâmetro oslc.orderBy também suporta propriedadesaninhadas, por exemplo, >dcterms:creator{+foaf:name}. Em uma URL real, + e –não funcionam. Em vez disso, você deve usar %2B e %2D na URL.

Exemplo: classificação com base nos recursos vinculados

É possível usar os campos de recursos vinculados como o critério de ordem, paraclassificar os registros pai e os recursos vinculados dentro dos registros pai.

Por exemplo, pode haver dois objetos principais que são denominados M1 e M2.M1 tem dois recursos vinculados que são denominados L1 e L3 e M2 possui osrecursos vinculados L2 e L4. Se você classificar os objetos principais em ordemcrescente, sem levar os recursos vinculados em consideração, os resultados serãoM1, M2. Se você classificar os objetos principais em ordem decrescente, osresultados serão M2, M1. No entanto, como há vários recursos vinculados para osobjetos, quando você classifica em ordem crescente ou decrescente, os recursosvinculados também classificados. L1 e L3 são armazenados no M1, L2 e L4 sãoclassificados no M2.

parâmetro oslc.select

O parâmetro oslc.select solicita uma representação parcial de recursos demembro de coleção. O parâmetro oslc.select sempre aplica-se a um recurso decoleção. Você especifica a lista de propriedades a serem incluídas na solicitação. Aspropriedades selecionadas podem ser do próprio recurso ou de um recursovinculado.

Exemplo: solicitação de recurso parcial

O parâmetro oslc.select fornece uma lista separada por vírgula de nomes depropriedade qualificados. O parâmetro oslc.prefix não é suportado.

A solicitação a seguir é um exemplo de uma solicitação de recurso parcial:

16 © Copyright IBM Corp. 2014, 2016

Page 21: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

oslc.select=oslc:shortTitle,dcterms:creator

Exemplo: propriedades de recursos referenciados

Com o parâmetro oslc.select, é possível selecionar propriedades de recursosreferenciados. Para recuperar informações como o nome do criador, especifique ainstrução SELECT como

oslc.select= oslc:shortTitle,dcterms:creator{foaf:name}.

O recurso foaf:Person é o nome da pessoa especificada no valor da propriedade docriador. Para obter todas as propriedades do recurso, você pode usaroslc.select=*. A mesma sintaxe pode ser aplicada ao parâmetro oslc.propertiesquando você procura um recurso OSLC.

Exemplo: propriedades de recursos vinculados

Com o parâmetro oslc.select, é possível selecionar propriedades de recursosvinculados. Para recuperar informações como o valor do nome da organização docliente, especifique a instrução SELECT comohttp://yourserver/oslc/spq/WorkTaskQC?oslc.select=*,spi:triCustomerOrgTX{spi:triNameTX}&oslc.where=spi:triCustomerOrgTX!="null"

Essa instrução SELECT fornece a resposta a seguir:{

-rdf:members: [1]-0: {

spi:triNameTX: "WorkTask"spi:triStatusCL: "Draft"spi:triIdTX: "1027019"-spi:triCustomerOrgTX: {

spi:triNameTX: "Company 01"rdf:about: "http://yourserver/oslc/so/Organization/12877121"

}rdf:about: "http://yourserver/oslc/so/WorkTask/13353622"-trira:action: [10]

0: "triDelete"1: "triInvalidUploadHidden"2: "triIssue"3: "triBaseline"4: "triApplyTemplate"5: "triCopy"6: "triPlanHidden"7: "triSave"8: "triSaveAndClose"9: "triTemporaryTemplate"

}rdf:about: "http://yourserver/oslc/spq/WorkTask"-prefixes: {

oslc: "http://open-services.net/ns/core#"rdf: "http://www.w3.org/1999/02/22-rdf-syntax-ns#"spi: "http://jazz.net/ns/tririga#"dcterms: "http://purl.org/dc/terms/"

}}

Capítulo 3. Trabalhando com recursos do OSLC 17

Page 22: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

parâmetro oslc.pageSize

O parâmetro oslc.pageSize especifica o número de resultados que o servidor deveretornar por página. Por exemplo, oslc.pageSize=20 faz com que a consultaretorne 20 resultados por página.

parâmetro pageno

O parâmetro pageno especifica a página que o servidor deve retornar. Por exemplo,pageno=3 faz com que a consulta retorne apenas os dados da terceira página.

Criando recursos do OSLCVocê usa o método HTTP POST para criar uma instância de um recurso do OSLC.Você pode então compartilhar o recurso com outros aplicativos e atualizar orecurso usando os métodos PUT, PATCH ou MERGE.

Sobre Esta Tarefa

O cliente OSLC envia um documento JSON que está em conformidade com aforma do recurso, conforme publicado no documento de forma. Os dados sãoenviados para o OSLC no corpo da solicitação de HTTP no formato JSON e ocabeçalho de HTTP Content-Type é configurado como o tipo MIMEapplication/json. Se a solicitação for processada com sucesso, o cliente OSLCreceberá um cabeçalho de HTTP do local com o URI do recurso recém-criado. Sevocê desejar ver as propriedades do recurso recém-criado, poderá incluir umcabeçalho de propriedades na solicitação e indicar quais propriedades deseja ver.Uma propriedade de cabeçalho denominada Propriedades é retornada com aspropriedades especificadas.

Ao enviar uma solicitação de criação, é possível incluir o ID da transação nocabeçalho da solicitação de HTTP. O ID de transação deve ser exclusivo entre todosos aplicativos cliente. O OSLC salva o status do ID de transação no banco dedados quando a solicitação é concluída. Se você enviar uma solicitação com um IDde transação, o OSLC verificará se a transação existe no banco de dados. Se atransação não existir, o OSLC não executará a solicitação. Ele retorna um erroindicando que a solicitação não foi concluída porque o ID de transação existe. Aseguir está um cabeçalho de exemplo com o ID de transação especificado:Accept: application/rdf-xmltransactionid: 6001Content-Type: application/json;charset=utf-8

Se a solicitação for processada com sucesso, o cliente OSLC receberá a seguinteresposta:201 CreatedLocation: http://yourserver/oslc/so/WorkTask/10269ETag: 1376596202470

Se uma ação for transmitida, esta deverá ser válida para o estado atual do registro.Por exemplo, se o estado atual do registro for Rascunho, uma ação Salvargeralmente será válida. A ação é chamada depois que o registro é criado.

Na página de resultado da consulta (oslc/spq), se oslc.select incluir um curinga(*), ou na página de detalhes da consulta (oslc/os), se nenhum parâmetro

18 © Copyright IBM Corp. 2014, 2016

Page 23: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

oslc.properties for fornecido, o resultado incluirá todas as ações que podem serexecutadas para cada registro que é recuperado. O formato da ação é,"tririga:action":["action1","action2",...].

As solicitações do OSLC podem falhar por vários motivos, como validação denegócios, autenticação ou autorização. Por exemplo, o cliente OSLC pode receberum erro 400 Bad Request seguido pelo corpo HTTP que contém os detalhes doerro.

Criando registros que são associações de registros primáriosÉ possível criar recursos dependentes vinculados para registros primários.

Sobre Esta Tarefa

É possível incluir registros dependentes associados em um registro primário. Orecurso vinculado determina a associação e o recurso associado.

Exemplo: criando uma ordem de compra com dois itens de linhada ordem de compra

O método a seguir cria um recurso de ordem de compra com dois recursos de itemde linha da ordem de compra. O nome do recurso vinculado é HasPOLineItem.{"spi:action":"Create Draft (triCreateDraft)","spi:triNameTX":"oslcPO","trirldr:HasPOLineItem":[{"spi:action":"Create (triCreate)","spi:triNameTX":"POLineItem1"

},{"spi:action":"Create (triCreate)","spi:triNameTX":"POLineItem2"

}]

}

Se a solicitação for processada com sucesso, o cliente OSLC receberá a seguinteresposta:201 CreatedLocation: http://yourserver/oslc/so/PO/10269ETag: 1376596202470

Atualizando recursos OSLCÉ possível usar o método HTTP PUT para substituir um recurso OSLC e o HTTPPOST com uma substituição de PATCH para atualizar parcialmente um recursoOSLC.

Um HTTP PUT substitui completamente os dados no recurso pelas propriedadesna solicitação.

Um HTTP POST com uma substituição de método x de PATCH substitui umapropriedade de recurso local pelo conteúdo na solicitação.

Um HTTP POST com uma substituição de método x de PATCH e um PATCHTYPEde MERGE localiza e corresponde aos elementos de recurso local da solicitaçãocom os elementos no servidor. Dependendo de uma correspondência ter sido ou

Capítulo 3. Trabalhando com recursos do OSLC 19

Page 24: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

não localizada, os elementos de recurso local são atualizados ou inseridos. Umelemento local nunca é excluído da propriedade de recurso local.

Ao enviar uma solicitação de atualização, é possível incluir o ID de transação nocabeçalho da solicitação de HTTP. O ID de transação deve ser exclusivo entre todosos aplicativos cliente. O OSLC salva o status do ID de transação no banco dedados quando a solicitação é concluída. Se você enviar uma solicitação com um IDde transação, o OSLC verificará se a transação existe no banco de dados. Se atransação não existir, o OSLC não executará a solicitação. Ele retorna um erroindicando que a solicitação não foi concluída porque o ID de transação existe. Aseguir está um cabeçalho de exemplo com o ID de transação especificado:Accept: application/rdf-xmltransactionid: 6001Content-Type: application/json;charset=utf-8

Método HTTP PUTA operação HTTP PUT é usada para a substituição completa de um recurso OSLC.O método PUT atualiza as propriedades literais e as propriedades de recurso local,além de excluir quaisquer propriedades de recurso local que não estão incluídas nasolicitação.

As regras a seguir se aplicam quando você usa o método PUT para substituir umrecurso OSLC:v Todas as propriedades literais que são especificadas no documento de solicitação

são atualizadas. Qualquer propriedade literal que não é especificada como parteda solicitação não é impactada explicitamente. Entretanto, ela pode serimplicitamente impactada pela lógica de negócios que está anexada ao recurso.Essa regra é a mesma de quando você utiliza o método PATCH para atualizarum recurso.

v Todas as propriedades de recurso local são substituídas pelos valores depropriedade correspondentes da solicitação. Se a propriedade do recurso nãoestiver incluída na solicitação, o recurso correspondente será excluído. Se apropriedade do recurso estiver incluída, seu valor substituirá o valor noservidor.

v Os recursos de referência não podem ser atualizados explicitamente. Entretanto,é possível atualizar as propriedades que se referem ao recurso e as propriedadesseguem o modelo de atualização de propriedades literais. Essa regra é a mesmade quando você utiliza o método PATCH para atualizar um recurso.

Nos exemplos a seguir, o recurso de tarefa de trabalho tem uma propriedadeliteral, taskname, e uma propriedade de recurso parts. A propriedade parts apontapara as partes de recursos locais e está associado a dois registros de partes. Se umasolicitação PUT contiver a propriedade taskname e nenhuma propriedade parts, onome da tarefa será atualizado e os dados das partes serão excluídos.

Exemplo: atualizando uma propriedade literal

O método a seguir atualiza a propriedade literal, taskname:PUT http://yourserver/oslc/so/WorkTask/123

{"dcterms:taskname": "Check-out Leaking – Modified for Test"

}

20 © Copyright IBM Corp. 2014, 2016

Page 25: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Se a solicitação for processada com sucesso, o cliente OSLC receberá a seguinteresposta:204 No ContentETag: 1376596202470

O nome da tarefa é alterado para Efetuar check-out de fuga - Modificado parateste. Como os dados parts não foram incluídos no método, os registros de partessão excluídos.

Exemplo: atualizando uma propriedade de recurso local

O método a seguir atualiza a propriedade de recurso, parts:PUT http://yourserver/oslc/so/WorkTask/123

{“spi:parts”: [

{“spi:partsid": "0000000067",

"spi:quantity": 5}

]}

Se a solicitação for processada com sucesso, o cliente OSLC receberá a seguinteresposta:204 No ContentETag: 1376596202470

É feita a procura de um registro de partes com o ID 0000000067. Se esse registro departes existir, ele será atualizado. Se nenhuma correspondência for encontrada, umnovo registro de partes será criado. Todos os outros dados de partes para esserecurso de tarefa de trabalho são excluídos. Como a propriedade taskname não estáincluída no método, o nome da tarefa não faz parte da solicitação e o valor não éafetado.

Método HTTP PATCHPATCH é usado para uma atualização parcial de um recurso OSLC. Um PATCHnão exclui nenhuma das propriedades de recurso local que não estão incluídas nasolicitação. A solicitação de PATCH é enviada por um método de POST com ocabeçalho de substituição de método x configurado como PATCH.

As regras a seguir se aplicam quando você usa um PATCH para substituir umrecurso OSLC:v Todas as propriedades literais que são especificadas no documento de solicitação

são atualizadas. Qualquer propriedade literal que não é especificada como parteda solicitação não é impactada explicitamente. Entretanto, ela pode serimplicitamente impactada pela lógica de negócios que está anexada ao recurso.Essa regra é a mesma de quando você usa o método PUT para substituir umrecurso.

v Todas as propriedades de recurso local são atualizadas ou substituídas porvalores de propriedade correspondentes da solicitação. Se a propriedade dorecurso não estiver incluída na solicitação, o recurso local correspondente nãoserá impactado explicitamente. Se a propriedade do recurso estiver incluída, seuvalor substituirá ou atualizará o valor no servidor. Outras propriedades derecurso são excluídas por um PATCH e não excluídas por um MERGE.

Capítulo 3. Trabalhando com recursos do OSLC 21

Page 26: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

v Os recursos de referência não podem ser atualizados explicitamente. Entretanto,é possível atualizar as propriedades que se referem ao recurso e as propriedadesseguem o modelo de atualização de propriedades literais. Essa regra é a mesmade quando você usa o método PUT para substituir um recurso.

Exemplo: atualizando uma propriedade literal

O método a seguir atualiza a propriedade do nome da tarefa da tarefa de trabalho:POST http://yourserver/oslc/so/WorkTask/123x-method-override: PATCH

{"dcterms:taskname": "Check-out Leaking – Modified for Test"

}

Ao contrário do método PUT, esse método PATCH não atualiza outraspropriedades da tarefa de trabalho.

Exemplo: atualizando uma propriedade de recurso local

O método a seguir atualiza um registro de partes especificadas e exclui outrosdados:POST http://yourserver/oslc/so/WorkTask/123x-method-override: PATCH

{"dcterms:taskname": "Check-out Leaking – Modified for Test",“spi:parts”: [

{“spi:partsid": "0000000067",

"spi:quantity": 5}

]}

Esse método se comporta de forma semelhante ao método PUT. O sistema procuraum registro de partes com o ID 0000000067. Se esse registro de partes existir, eleserá atualizado. Se nenhuma correspondência for encontrada, um novo registro departes será criado. Todos os outros registros de partes para esse recurso de tarefade trabalho serão excluídos.

Exemplo: atualizando e mesclando uma propriedade de recursolocal

O método a seguir atualiza o recurso com o cabeçalho PATCHTYPE configuradocomo MERGE:POST http://yourserver/oslc/so/WorkTask/123x-method-override: PATCHPATCHTYPE: MERGE

{"dcterms:taskname": "Check-out Leaking – Modified for Test",“spi:parts”: [

{“spi:partsid": "0000000067",

"spi:quantity": 5}

]}

22 © Copyright IBM Corp. 2014, 2016

Page 27: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

É feita a procura de um registro de partes com o ID 0000000067. Se esse registro departes existir, ele será atualizado. Se nenhuma correspondência for encontrada, umnovo registro de partes será criado. Como o cabeçalho PATCHTYPE é definidocomo MERGE, os outros registros de partes para esse recurso tarefa de trabalho serãodeixados intactos.

Exemplo: fazendo uma atualização condicional

O método a seguir atualizará o recurso se o valor de ETag for 1376596202470:POST http://yourserver/oslc/so/WorkTask/123x-method-override: PATCHif-match: 1376596202470

Se o valor de ETag for 1376596202470, o recurso de tarefa de trabalho seráatualizado e uma mensagem HTTP 204 será enviada.

Se o valor de ETag não for 1376596202470, o servidor responderá com umamensagem HTTP 412 condição prévia com falha. Essa mensagem significa que orecurso foi atualizado por algum outro processo e que o cliente solicitante tem umacópia antiga do recurso. O cliente deve executar um método GET no recurso 123para obter uma cópia atual do recurso.

A tabela a seguir resume o resultado de cada método de atualização quando aplicada adiferentes tipos de recursos.

Método Propriedades literais Recursos locaisRecursos dereferência

PUT Se omitir umapropriedade, apropriedade não seráafetada.

Se omitir umapropriedade, apropriedade seráexcluída.

Se omitir umapropriedade, apropriedade não seráafetada.

PATCH Se omitir umapropriedade, apropriedade não seráafetada.

Se omitir umapropriedade, apropriedade não seráafetada.

Se omitir umapropriedade, apropriedade não seráafetada.

MERGE Se omitir umapropriedade, apropriedade não seráafetada.

Se omitir umapropriedade, apropriedade não seráafetada.

Se omitir umapropriedade, apropriedade não seráafetada.

Excluindo recursos OSLCUse o método HTTP DELETE para excluir um recurso OSLC.

Grave o HTTP DELETE no URI do recurso. Se o objeto de negócios de recursotiver uma transição de estado do estado atual do recurso para um estado nulo, oestado do objeto será alterado para nulo.

Se o objeto de negócios de recurso não tiver uma transição de estado do estadoatual do recurso para um estado nulo, o estado do objeto não será alterado. Épossível modificar o objeto de negócios para incluir uma transição de estado doestado atual para nulo. Ou você pode atualizar o registro com um HTTP PUT ouHTTP PATCH em vez de um HTTP DELETE e transmitir o nome da ação paraacionar a exclusão.

Capítulo 3. Trabalhando com recursos do OSLC 23

Page 28: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Se um recurso tiver registros filhos, os registros filhos serão excluídos quando orecurso for excluído. Se um recurso tiver registros associados, a associação seráexcluída quando o recurso for excluído, mas os registros associados não serãoafetados.

Trabalhando com anexos e dados bináriosOs clientes OSLC podem recuperar, criar e atualizar anexos e dados binários pormeio da API do OSLC.

Processamento de anexo do OSLCO processamento de anexo no OSLC envolve o processamento do próprio anexo,que é um documento não estruturado, e o processamento dos metadadosassociados para esse documento.

Os metadados são descritos em um RDF do recurso AttachmentDescriptor. Osrecursos AttachmentDescriptor estão sempre associados a um anexo em umrelacionamento 1:1.

Criando anexos do OSLC

Você cria anexos usando o método HTTP POST com conteúdo binário. Não usesolicitações de HTTP POST multipartes.

O exemplo a seguir mostra uma solicitação de HTTP para criar um anexo paramostrar uma imagem de uma parte dividida:POST http://yourserver/oslc/os/oslcwodetail/_abcd123/attachmentsSlug: brokenpart.jpegContent-Type: image/jpegContent-Length: 18124x-document-description: A broken partx-document-meta: Attachment

[binary content]

O exemplo a seguir mostra a resposta à solicitação:HTTP/1.1 201 CREATEDLocation: http://yourserver/oslc/os/oslcwodetail/_abcd123/attachments/1Link: <http://yourserver/oslc/os/oslcwodetail/_abcd123/attachments/meta/1>;rel="describes"Content-Length: 0

O cabeçalho de Entrelinha indica o nome do arquivo. É possível usar o cabeçalhox-document-description para descrever o anexo. Essa descrição é mapeada paradcterms:description do recurso do descritor de anexo. É possível usar o cabeçalhox-document-meta para indicar o nome da pasta para armazenar o anexo.

Atualizando anexos do OSLC

É possível atualizar anexos do OSLC usando o método HTTP PUT com conteúdobinário. Não use solicitações de HTTP PUT multipartes.

O exemplo a seguir mostra a solicitação de HTTP para atualizar um anexo:PUT http://yourserver/oslc/os/oslcwodetail/_abcd123/attachments/1Slug: brokenpart2.jpegContent-Type: image/jpegContent-Length: 18124

24 © Copyright IBM Corp. 2014, 2016

Page 29: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

x-document-description: A broken partx-document-meta: Attachment

[binary content]

O exemplo a seguir mostra a resposta à solicitação:HTTP/1.1 204Content-Length: 0

Para atualizar apenas a descrição do anexo, é possível usar uma solicitação dePATCH para o URI meta, conforme mostrado no exemplo a seguir:PATCH http://yourserver/oslc/os/oslcwodetail/_abcd123/attachments/meta/1Content-Type: application/json

{“dcterms:description”: “Broken pipe”

}

Selecionando anexos do OSLC

Os anexos são geralmente recursos relacionados a recursos estruturados, comoordens de serviço ou ativos. Os anexos também podem ser associados arecursos-filho. Quando um recurso estruturado é procurado, somente o link parasua coleção de anexos relacionados é fornecido por padrão. Se o consumidorespera que os detalhes do anexo fiquem sequenciados como parte do recursoestruturado que os possui, use o formato de consulta a seguir:/oslc/os/oslcwodetail?oslc.select=res1,res2,spi:attachments{*}

Excluindo anexos do OSLC

Para excluir anexos do OSLC, use a solicitação a seguir:DELETE <attachment uri>

Processamento de dados binários do OSLCOs clientes do OSLC podem consultar e atualizar os dados binários usando a APIdo OSLC.

O OSLC suporta os dois tipos de dados binários a seguir:v Os dados binários do TRIRIGA são armazenados na tabela dm_content. Cada

elemento de dados tem um ID de conteúdo exclusivo, um nome de arquivo eum tipo MIME para renderização de dados. O campo binário contém o ID deconteúdo.

v Os dados de imagem são armazenados como arquivos de imagem. O campo deimagem contém um caminho parcial para o arquivo de imagem.

Consultando dados binários

Quando os dados binários são recuperados por meio de uma página de detalhesde consulta ou registro do OSLC, os valores são apresentados com um URI. Oexemplo a seguir mostra um URI com as informações de dados binários:http://yourserver/oslc/so/supApp/168867/tririga:supBinary

O cliente pode usar o URI para recuperar os dados reais. Na resposta HTTP doURI, o corpo contém o conteúdo que é lido a partir do campo de conteúdo databela dm_content. O cabeçalho Content-Type contém o tipo MIME dos dadosbinários.

Capítulo 3. Trabalhando com recursos do OSLC 25

Page 30: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Da mesma forma, quando os dados de imagem são recuperados por meio de umapágina de detalhes de consulta ou registro do OSLC, os valores são apresentadoscom um URI. O exemplo a seguir mostra um URI com as informações da imagemhttp://yourserver/oslc/so/supApp/168867/tririga:supImage

O cliente pode usar o URI para recuperar a imagem real. Na resposta HTTP doURI, o corpo contém a imagem que é lida a partir do arquivo de imagem. Ocabeçalho Content-Type é um tipo MIME que é composto da sequência image/mais a extensão do arquivo de imagem.

Atualizando dados binários

Você usa uma solicitação de HTTP separada para atualizar cada propriedadebinária ou de imagem. O exemplo a seguir mostra o formato de uma solicitaçãopara atualizar dados binários ou de imagem:http://localhost:8001/oslc/so/soID/property

No exemplo, soID é o ID do objeto inteligente ao qual a propriedade binária ou deimagem pertence. A propriedade identifica a propriedade binária ou de imagempara a qual o valor está configurado. Ela tem o formato de propriedade regular deprefix:sectionName-propertyName, em que sectionName é opcional.

O método HTTP PUT é usado e o tipo de conteúdo do cabeçalho de HTTP contémo tipo MIME dos dados, como a seguir:v Para propriedades binárias, o tipo MIME que é passado do cabeçalho do tipo de

conteúdo é transportado para o tipo MIME dos dados. É possível passar umnome de arquivo por meio do cabeçalho de Entrelinha opcional.

v Para propriedades de imagem, o tipo de conteúdo deve ser tipo de imagem. Otipo é o formato da imagem, como PNG ou JPG. O nome do arquivo é gerado eo tipo de imagem é usado como a extensão do arquivo.

26 © Copyright IBM Corp. 2014, 2016

Page 31: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Capítulo 4. Administrando recursos do OSLC

O suporte de autenticação e autorização é fornecido para serviços do OSLC pelasegurança do IBM TRIRIGA. Você usa a criação de log do OSLC para depurar eavaliar o desempenho.

Segurança do OSLCO suporte de autenticação e autorização para serviços OSLC é fornecido pelasegurança do IBM TRIRIGA.

Autenticação nativa

A solicitação do consumidor pode fornecer os valores user:password que sãocodificados em base64 e estão na propriedade de cabeçalho HTTP do OSLC.

Login e logout explícitos

Se o aplicativo consumidor precisar executar comandos de login explícito, use aseguinte solicitação:GET http://yourserver/oslc/login?USERNAME=username&PASSWORD=password

Se o aplicativo consumidor precisar executar comandos de logout explícito, use aseguinte solicitação:GET http://yourserver/oslc/logout

Autorização

O controle de autorização é fornecido no nível de objeto de negócios do recurso. Oprocessamento de segurança dos dados de recurso é baseado na configuração desegurança do aplicativo e no grupo do usuário que fez a solicitação. Quando osrecursos OSLC são processados, nenhum atributo de objeto configurado comooculto por meio de segurança é incluído na resposta para uma solicitação OSLC.

Mudanças de senhaPara que um usuário do cliente seja capaz de alterar uma senha, deve-se criar umrecurso MyProfile do OSLC que seja baseado no objeto de negócios Meu Perfil doIBM TRIRIGA.

Para suportar mudanças de senha, deve-se criar o recurso MyProfile com pelomenos a propriedade Senha definida. É possível definir outras propriedades parasuportar outras mudanças de perfil conforme necessário.

Você obtem acesso ao recurso MyProfile no OSLC usando o URI a seguir:http://yourserver/oslc/so/MyProfile/userId

Esse URI sempre retorna o perfil do usuário atual, independentemente de qual IDdo usuário seja inserido, uma vez que um usuário não tem permissão paravisualizar os perfis de outros usuários. É possível definir recursos de consulta parao recurso MyProfile, mas os resultados da consulta não retornam mais que o perfildo usuário atual. Não é possível definir factories de criação do recurso MyProfile.

© Copyright IBM Corp. 2014, 2016 27

Page 32: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Não é possível criar ou excluir objetos MyProfile por meio do recurso MyProfile doOSLC.

Use o método PATCH juntamente com o URI para alterar o perfil. Inclua asequência JSON a seguir na solicitação para alterar a senha:{..."spi:Password":"password",...}

A senha está no formato de texto simples e é criptografada internamente.

Use o método HTTP POST, juntamente com os cabeçalhos a seguir, em solicitaçõesde mudança de senha:- x-method-override: PATCH- PATCHTYPE: CHPWD

O ID do recurso que representa Meu Perfil é configurado no arquivotririgaweb.properties, conforme a seguir:

OSLC_MYPROFILE_RESOURCE=MyProfile

Senhas expiradasSe uma senha estiverr expirada, o aplicativo consumidor não poderá acessarqualquer recurso OSLC diferente do URI de mudança de senha ou do URI delogout.

Uma mensagem de erro com status de HTTP 403 Proibido é retornada. Se apropriedade de sistema OSLC_MYPROFILE_RESOURCE estiver definida, amensagem de erro JSON retornada incluirá um URI que conduz o aplicativoconsumidor para o URI de solicitação de mudança de senha.

As regras de validação de senha estão configuradas no TRIRIGA emFerramentasConfiguração do sistemaSistemaConfiguração de senha.

Exemplo: resposta de senha expirada{oslc:Error:{spi:user:{rdf:resource: "http://yourserver/oslc/so/MyProfile/13417792"}oslc:message: "Password Expired"oslc:statusCode: 403oslc:extendedError: "OSLC0054"}

}

Criação de log do OSLCOs logs podem registrar informações que podem ser úteis quando você depura ouavalia o desempenho.

A criação de log é gerenciada no console do administrador do IBM TRIRIGA.Depois de efetuar login, selecione Criação de log da plataforma > OSLC. Paradesativar a criação de log, desmarque a caixa de seleção OSLC. Para obter maisinformações, consulte o Guia do Usuário do IBM TRIRIGA Application Platform 3Administrator Console.

28 © Copyright IBM Corp. 2014, 2016

Page 33: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Capítulo 5. Resolução de problemas do OSLC

As dicas a seguir poderão ajudar a resolver problemas quando você for umconsumidor OSLC do IBM TRIRIGA.

Tabela 1. Dicas de resolução de problemas do OSLC.

Preocupação Solução

A forma do recurso não funciona mais apósrenomear o relatório do IBM TRIRIGA

Se você renomear o relatório do IBMTRIRIGA definido em uma forma derecurso, ele dividirá a forma do recursoporque o relatório definido não existe mais.Você vê uma mensagem de erro aovisualizar o recurso de consulta ou usar ofactory de criação. A prática geral é atualizara forma do recurso quando o nome dorelatório for alterado. Além disso, se omódulo ou o objeto de negócios for alteradono relatório do IBM TRIRIGA, esse valordeverá ser atualizado na forma de recursotambém. A guia Onde é usado no relatórioidentifica qual forma de recurso está usandoo relatório.

Precisa de logs para depurar aimplementação OSLC

A criação de log é gerenciada no console doadministrador do IBM TRIRIGA. Depois deefetuar login, selecione Criação de log daplataforma > OSLC. Para desativar a criaçãode log, desmarque a caixa de seleção OSLC.

Para obter mais informações, consulte oGuia do Usuário do IBM TRIRIGAApplication Platform 3 Administrator Console.

Rastreio de pilha é lançado em olsc.where Se você colocar aspas simples em umparâmetro oslc.where, criará uma URLinválida. A exceção vem de um filtro doApache que ocorre antes de oslc.whereatingir o servlet OSLC. Não está no controledo IBM TRIRIGA.

Explicações de códigos HTTP do OSLCO OSLC usa códigos de resposta HTTP padrão como mensagens de erro. Porexemplo, a resposta HTTP 404 normalmente é retornada quando uma página daweb não é localizada; no OSLC, o código de resposta 404 é retornado quando orecurso não pode ser localizado.

Alguns códigos de erro existentes são mapeados para códigos HTTP por padrão,mas você pode mapear códigos extras conforme necessário.

Os códigos de resposta HTTP a seguir são implementados pelo OSLC:

Código HTTP Explicação do OSLC

200 Sucesso

201 Sucesso. A resposta contém um link.

© Copyright IBM Corp. 2014, 2016 29

Page 34: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Código HTTP Explicação do OSLC

204 Recurso atualizado com sucesso. Não há entidade de resposta.

400 Erro ao manipular solicitação. Esse erro pode ser devido ao conteúdoda solicitação ou URI. Por exemplo, pode haver um erro de validaçãode lógica de negócios no lado do servidor.

401 Falha de autenticação.

403 Proibido. A senha de usuário expirou.

404 O recurso não pode ser localizado ou um tipo de recurso inválido foifornecido.

405 O método de HTTP não pode ser usado para o recurso.

406 A representação solicitada não é suportada.

410 A página de recurso estável expirou.

412 O recurso no lado do cliente é antigo e deve ser atualizado a partir doservidor. A atualização condicional falhou porque o recurso não foiatualizado por outro usuário ou processo.

500 Todos os outros erros do servidor.

As mensagens suportam os idiomas que são suportados pelo IBM TRIRIGA.

30 © Copyright IBM Corp. 2014, 2016

Page 35: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Avisos

Estas informações foram desenvolvidas para produtos e serviços oferecidos nosEUA. Este material pode estar disponível na IBM em outros idiomas. No entanto,pode ser necessário possuir uma cópia do produto ou da versão de produto nomesmo idioma para acessá-lo.

É possível que a IBM não ofereça os produtos, serviços ou recursos discutidosnesta publicação em outros países. Consulte um representante IBM local para obterinformações sobre produtos e serviços disponíveis atualmente em sua área.Qualquer referência a produtos, programas ou serviços IBM não significa queapenas produtos, programas ou serviços IBM possam ser utilizados. Qualquerproduto, programa ou serviço funcionalmente equivalente, que não infrinjanenhum direito de propriedade intelectual da IBM poderá ser utilizado emsubstituição a este produto, programa ou serviço. Entretanto, a avaliação everificação da operação de qualquer produto, programa ou serviço não IBM são deresponsabilidade do Cliente.

A IBM pode ter patentes ou solicitações de patentes pendentes relativas a assuntostratados nesta publicação. O fornecimento desta publicação não lhe garante direitoalgum sobre tais patentes. Pedidos de licença devem ser enviados, por escrito,para:

Gerência de Relações Comerciais e Industriais da IBM BrasilGerência de Relações Comerciais e Industriais da IBM BrasilAv. Pauster 138-146Rio de Janeiro, RJCEP 22290-240

Para pedidos de licença relacionados a informações de DBCS (Conjunto deCaracteres de Byte Duplo), entre em contato com o Departamento de PropriedadeIntelectual da IBM em seu país ou envie pedidos de licença, por escrito, para:

Intellectual Property LicensingLegal and Intellectual Property LawIBM Japan Ltd.19-21, Nihonbashi-Hakozakicho, Chuo-kuTokyo 103-8510, Japan

A INTERNATIONAL BUSINESS MACHINES CORPORATION FORNECE ESTAPUBLICAÇÃO "NO ESTADO EM QUE SE ENCONTRA", SEM GARANTIA DENENHUM TIPO, SEJA EXPRESSA OU IMPLÍCITA, INCLUINDO, MAS A ELASNÃO SE LIMITANDO, AS GARANTIAS IMPLÍCITAS DE NÃO INFRAÇÃO,COMERCIALIZAÇÃO OU ADEQUAÇÃO A UM DETERMINADO PROPÓSITO.Algumas jurisdições não permitem a renúncia de garantias explícitas ou implícitasem determinadas transações, portanto, esta declaração pode não se aplicar aoCliente.

Essas informações podem conter imprecisões técnicas ou erros tipográficos. Sãofeitas alterações periódicas nas informações aqui contidas; tais alterações serãoincorporadas em futuras edições desta publicação. A IBM pode, a qualquermomento, aperfeiçoar e/ou alterar os produtos e/ou programas descritos nestapublicação, sem aviso prévio.

© Copyright IBM Corp. 2014, 2016 31

Page 36: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Referências nestas informações a websites não IBM são fornecidas apenas porconveniência e não representam de forma alguma um endosso a esses websites. Osmateriais contidos nesses websites não fazem parte dos materiais desse produtoIBM e a utilização desses websites é de inteira responsabilidade do Cliente.

A IBM pode utilizar ou distribuir as informações fornecidas da forma que julgarapropriada sem incorrer em qualquer obrigação para com o Cliente.

Os licenciados deste programa que desejarem obter informações sobre este assuntocom o propósito de permitir: (i) a troca de informações entre programas criadosindependentemente e outros programas (incluindo este) e (ii) o uso mútuo dasinformações trocadas, deverão entrar em contato com:

Gerência de Relações Comerciais e Industriais da IBM BrasilGerência de Relações Comerciais e Industriais da IBM BrasilAv. Pauster 138-146Rio de Janeiro, RJCEP 22290-240

Tais informações podem estar disponíveis, sujeitas a termos e condiçõesapropriadas, incluindo em alguns casos o pagamento de uma taxa.

O programa licenciado descrito nesta publicação e todo o material licenciadodisponível são fornecidos pela IBM sob os termos do Contrato com o Cliente IBM,do Contrato Internacional de Licença do Programa IBM ou de qualquer outrocontrato equivalente.

Os exemplos de dados de desempenho e de clientes citados são apresentadosapenas para propósitos ilustrativos. Resultados de desempenho reais podem variardependendo das configurações específicas e das condições operacionais.

As informações relativas a produtos não IBM foram obtidas junto aos fornecedoresdos respectivos produtos, de seus anúncios publicados ou de outras fontesdisponíveis publicamente. A IBM não testou estes produtos e não pode confirmar aprecisão de seu desempenho, compatibilidade nem qualquer outra reivindicaçãorelacionada a produtos não-IBM. Dúvidas sobre os recursos de produtos não IBMdevem ser encaminhadas diretamente a seus fornecedores.

As declarações relacionadas aos objetivos e intenções futuras da IBM estão sujeitasa alterações ou cancelamento sem aviso prévio e representam apenas metas eobjetivos.

Estas informações contêm exemplos de dados e relatórios utilizados nas operaçõesdiárias de negócios. Para ilustrá-los da forma mais completa possível, os exemplosincluem nomes de indivíduos, empresas, marcas e produtos. Todos estes nomes sãofictícios e qualquer semelhança com pessoas ou empresas reais é meracoincidência.

LICENÇA DE COPYRIGHT:

Estas informações contêm programas de aplicativos de amostra na linguagemfonte, ilustrando as técnicas de programação em diversas plataformas operacionais.O Cliente pode copiar, modificar e distribuir estes programas de amostra dequalquer forma sem a necessidade de pagar à IBM, com objetivos dedesenvolvimento, utilização, marketing ou distribuição de programas deaplicativos em conformidade coma interface de programação de aplicativo da

32 © Copyright IBM Corp. 2014, 2016

Page 37: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

plataforma operacional para a qual os programas de amostra são criados. Essesexemplos não foram testados completamente em todas as condições. Portanto, aIBM não pode garantir ou implicar a confiabilidade, manutenção ou função destesprogramas. Os programas de amostra são fornecidos "NO ESTADO EM QUE SEENCONTRAM", sem garantia de nenhum tipo. A IBM não é responsável pornenhum dano decorrente do uso dos programas de amostra.

Cada cópia ou parte destes programas de amostra ou qualquertrabalho derivado deve incluir um aviso de copyright com os dizeres:© (nome da empresa) (ano).Partes deste código são derivadas dos Programas de Amostra da IBM.© Copyright IBM Corp. _digite o ano ou anos_.

Marcas comerciaisIBM, o logotipo IBM e ibm.com são marcas comerciais ou marcas registradas daInternational Business Machines Corp., registradas em vários países no mundotodo. Outros nomes de produtos e serviços podem ser marcas comerciais da IBMou de outras empresas. Uma lista atual de marcas comerciais da IBM estádisponível na web em "Copyright and trademark information" emwww.ibm.com/legal/copytrade.shtml.

Java™ e todas as marcas comerciais e logotipos baseados em Java são marcascomerciais ou marcas registradas da Oracle e/ou de suas afiliadas.

Linux é uma marca comercial de Linus Torvalds nos Estados Unidos e/ou emoutros países.

Microsoft, Windows, Windows NT e o logotipo Windows são marcas comerciais daMicrosoft Corporation nos Estados Unidos e/ou em outros países.

UNIX é uma marca registrada do The Open Group nos Estados Unidos e emoutros países.

Outros nomes de produtos e serviços podem ser marcas comerciais da IBM ou deoutras empresas.

Termos e Condições para a Documentação do ProdutoPermissões para o uso destas publicações são concedidas sujeitas aos termos econdições a seguir.

Aplicabilidade

Estes termos e condições são complementos dos termos de uso do website da IBM.

Uso pessoal

É possível reproduzir essas publicações para seu uso pessoal e não comercial desdeque todos os avisos do proprietário sejam preservados. Você não pode distribuir,exibir ou criar trabalho derivativo destas publicações, ou de qualquer parte delas,sem o consentimento expresso da IBM.

Avisos 33

Page 38: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Uso comercial

É possível reproduzir, distribuir e exibir estas publicações exclusivamente dentrode sua empresa desde que todos os avisos do proprietário sejam preservados. Vocênão pode criar trabalhos derivativos destas publicações, ou reproduzir, distribuirou exibir estas publicações, ou qualquer parte delas fora de sua empresa, sem oconsentimento expresso da IBM.

Direitos

Exceto como expressamente concedido nesta permissão, nenhuma outra permissão,licença ou direito é concedido, seja expresso ou implícito, para as Publicações oupara quaisquer informações, dados, software ou outra propriedade intelectual nelascontidos.

A IBM reserva-se o direito de retirar as permissões aqui concedidas sempre que, aseu critério, o uso das publicações for prejudicial aos seus interesses ou, conformedeterminado pela IBM, as instruções acima não estiverem sendo seguidascorretamente. corretamente.

Você não deve fazer download destas informações, exportá-las ou reexportá-las,exceto em conformidade total com todas as leis e regulamentos aplicáveis,incluindo todas as leis e regulamentos de exportação dos Estados Unidos.

A IBM NÃO FORNECE GARANTIA QUANTO AO CONTEÚDO DESTASPUBLICAÇÕES. AS PUBLICAÇÕES SÃO FORNECIDAS "NO ESTADO EM QUESE ENCONTRAM" E SEM GARANTIA DE QUALQUER TIPO, SEJA EXPRESSAOU IMPLÍCITA, INCLUINDO, MAS A ELAS NÃO SE LIMITANDO ÀSGARANTIAS IMPLÍCITAS DE COMERCIALIZAÇÃO E DE ADEQUAÇÃO PARAUM PROPÓSITO ESPECÍFICO.

Declaração de privacidade online da IBMOs produtos de Software IBM, incluindo o software como soluções de serviços,(“Ofertas de Software”) podem usar cookies ou outras tecnologias para coletarinformações sobre o uso do produto, para ajudar a melhorar a experiência dousuário final, para customizar interações com o usuário final ou para outrospropósitos. Em muitos casos, as Ofertas de Software não coletam nenhum tipo deinformações de identificação pessoal. Algumas de nossas Ofertas de Softwarepodem ajudar a coletar informações de identificação pessoal. Se as Ofertas deSoftware usarem cookies para coletar informações de identificação pessoal,especifique a informações sobre o uso desta oferta de cookies definidas abaixo.

Esta Oferta de Software não usa cookies ou outras tecnologias para coletarinformações de identificação pessoal.

Se as configurações implementadas para esta Oferta de Software fornecerem avocê, como cliente, a capacidade de coletar informações de identificação pessoaldos usuários finais por meio de cookies e outras tecnologias, deve-se consultar oseu próprio conselho jurídico a respeito de quaisquer leis aplicáveisà coleta dedados, incluindo quaisquer requisitos de aviso e consentimento.

Para obter informações adicionais sobre o uso de diversas tecnologias, incluindocookies, para esses propósitos, consulte a Política de Privacidade da IBM emhttp://www.ibm.com/privacy e a Declaração de Privacidade On-line da IBM emhttp://www.ibm.com/privacy/details na seção intitulada Cookies, Web Beacons e

34 © Copyright IBM Corp. 2014, 2016

Page 39: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

Outras Tecnologias e a "Declaração de Privacidade de Software como Serviço e deProdutos de Software IBM" emhttp://www.ibm.com/software/info/product-privacy/.

Avisos 35

Page 40: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

36 © Copyright IBM Corp. 2014, 2016

Page 41: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas
Page 42: © Copyright IBM Corp. 2014, 2016€¦ · A comunidade do OSLC é um gr upo de desenvolvedor es e or ganizações de softwar e que estão trabalhando para padr onizar como as ferramentas

IBM®

Impresso no Brasil