Serviços do NPS

Os gadgets ou páginas acessados diretamente através de URLs especiais são chamados serviços. Os serviços permitem acesso aos dados de um determinado gadget ou página para realizar uma função. Eles retornam apenas os dados do gadget ou página, e não de todo o NPS. Esse serviço funciona como se você estivesse acessando o NPS diretamente, mas recupera apenas os dados retornados do gadget ou da página específica. Quando os dados são visualizados através de um browser, apenas o gadget ou página são exibidos.

Todos os gadgets e páginas estão disponíveis como serviços.


Autenticação durante o acesso a um serviço

Quando você tenta acessar um gadget ou página como um serviço que não está disponível para usuários desconectados, o NPS automaticamente solicita autenticação. Após digitar suas credenciais, o serviço será exibido se estiver disponível. Caso contrário, será exibido um erro.


Serviços públicos

Os serviços públicos são gadgets ou páginas disponíveis a todos os usuários, estejam conectados ou não. Entre eles estão as páginas e gadgets atribuídos aos usuários públicos e todos os gadgets configurados como serviços públicos no objeto do portal.


Serviços privados

Os serviços privados são gadgets ou páginas disponíveis apenas aos usuários conectados. Tais gadgets e páginas baseiam-se em sua herança de gadgets e páginas atribuídos a containers, grupos e usuários.


Servlets

As versões anteriores do NPS (Novell Portal Services) processavam todas as solicitações através do servlet do portal. Na versão 1.5, o acesso ao NPS e aos serviços requer o uso de diferentes servlets.


Servlet do portal

Esse é o servlet geral do portal e o ponto de entrada normal para o NPS. Os dados completos do portal são retornados para todos os gadgets e páginas herdados. A transformação ou renderização em backend (geralmente em HTML) ocorre quando o estado da sessão indica que o browser não suporta XSL. O servlet do portal então faz todas as solicitações subseqüentes através do portalservice. O portal faz renderização em backend para retornar HTML ou xmlportalservice se o portal retornar XML e XSL. Por exemplo:

http://portalHost/npsservlet/portal

O uso do ponto de entrada do portal para acessar serviços continua sendo aceito, mas é complexo. Por exemplo:

http://portalHost/nps/servlet/portal?NPService=meu_serviço&NPServiceDataType=ServiceAsData&FULLPAGE=branding

Substitua meu_serviço pelo gadget ou página a ser acessada.


Servlet do Portalservice

Este servlet é semelhante ao do portal, exceto pelo fato de sempre transformar ou renderizar em backend os dados retornados (geralmente em HTML) para todo o portal, independente de o cliente suportar ou não transformações XSL. Por exemplo:

http://portalHost/nps/servlet/portalservice

O uso do ponto de entrada do servlet portalservice para acessar serviços é aceito, mas é complexo. Por exemplo:

http://portalHost/nps/servlet/portalservice?NPService=meu_serviço&NPServiceDataType=ServiceAsData&FULLPAGE=branding

Substitua meu_serviço pelo gadget ou página a ser acessada.


Servlet xmlportalservice

Este servlet é semelhante ao do portal, exceto pelo fato de sempre retornar dados XML e XSL para todo o portal, independente de o cliente suportar ou não transformações XSL. Por exemplo:

http://portalHost/nps/servlet/xmlportalservice

O uso do ponto de entrada xmlportalservice para acessar serviços é aceito, mas é complexo. Por exemplo:

http://portalHost/nps/servlet/xmlportalservice?NPService=meu_serviço&NPServiceDataType=ServiceAsData&FULLPAGE=branding

Substitua meu_serviço pelo gadget ou página a ser acessada.


Servlets service e xmlservice

Esses servlets constituem o meio preferencial de acesso aos gadgets como serviços. Eles retornam os dados transformados (geralmente HTML) apenas ao serviço, e não ao portal inteiro. Por exemplo:

http://portalHost/nps/servlet/xmlservice?NPSservice=meu_serviço

Substitua meu_serviço pelo gadget ou página a ser acessada.


Servlet fullpageservice

Este servlet é usado para fazer um gadget usar temporariamente uma página inteira dentro do portal. Ele se comporta como o servlet service, exceto que todas as solicitações subseqüentes são enviadas ao normalfullpageservice para determinar quando sair da página inteira e voltar a exibir todo o portal. Seu uso pelos serviços é raro. Por exemplo:

http://portalHost/nps/servlet/fullpageservice?NPService=meu_serviço

Substitua meu_serviço pelo gadget ou página a ser acessada.


Servlet normalfullpageservice

Este servlet permite ao gadget permanecer no modo de página inteira, como é o normal, e só volta a exibir todo o portal dependendo do estado do serviço/gadget (usando a chamada getFullPageMode em GadgetInstance). Excetuando isso, ele é idêntico ao servlet fullpageservice. Seu uso é raro. Por exemplo:

http://portalHost/nps/servlet/normalfullpageservice?NPservice=meu_serviço

Substitua meu_serviço pelo gadget ou página a ser acessada.


Servlet xmlmormalfullpageservice

Este servlet mantém o gadget no modo de página inteira, como é o normal, e só volta a exibir todo o portal dependendo do estado do serviço/gadget (usando a chamada getFullPageMode em GadgetInstance). Excetuando isso, ele é idêntico ao servlet fullpageservice. Seu uso é raro. Por exemplo:

http://portalHost/nps/servlet/normalfullpageservice?NPservice=meu_serviço

Substitua meu_serviço pelo gadget ou página a ser acessada.


Servlets pageservice e xmlpageservice

Estes servlets são os melhores meios para acessar páginas como serviços e promover a interação com os gadgets na página, pois retornam os dados transformados (geralmente HTML) só para a página e seus gadgets, e não para todo o portal. Eles contêm um parâmetro adicional, NPPage={page service iD}. Por exemplo:

http://portalHost/nps/servlet/service?=minha_página

Substitua minha_página pela página a ser acessada.

http://portalHost/nps/servlet/service?NPPage=minha_página&NPService=meu_serviço

Substitua minha_página pela página a ser acessada e meu_serviço pelo gadget usado para a interação em curso.


Servlet xmldataservice

Este servlet retorna os dados XML brutos apenas para o serviço selecionado, sem incluir entre eles dados do portal ou indicadores de gadget algum. Ele é um meio de obter apenas os dados XML de um serviço. Por exemplo:

http://portalHost/nps/servletxmldataservice?NPService=meu_serviço

Substitua meu_serviço pelo gadget ou página a ser acessada.


Servlet customcontentservice

Este servlet retorna o conteúdo determinado pelo serviço. Ele é semelhante ao parâmetro CustomContentType usado nas versões anteriores do NPS. Por exemplo:

http://portalHost/nps/servlet/xmldataservice?NPService=meu_serviço

Substitua meu_serviço pelo gadget ou página a ser acessada.


Novas variáveis de folhas de estilo

Para facilitar o desenvolvimento de folhas de estilo, o NPS 1.5 inclui os pontos de entrada mais comuns como variáveis nas folhas de estilo. O próprio servlet usado pelas folhas de estilo pode mudar dependendo do comportamento do servlet que processa a solicitação.

Para obter mais informações sobre folhas de estilo e variáveis, consulte Folhas de estilo do portal.


$Portal.Sevlets.Normal

O gadget mantém seu atual estado (serviço, página inteira, parte do portal etc.). Esta é a variável que deve ser usada para todos os gadgets nas folhas de estilo, a menos que você queira forçar um estado diferente daquele que a variável está usando atualmente.


$Portal.Servlets.FullPage

Esta variável é usada para os gadgets que exigem página inteira. Ela não é necessária aos serviços que já se encontram nesse estado.


$Portal.Servlets.CustomContent

O gadget retorna conteúdo personalizado e necessita substituir o comportamento do portal.


Autenticação do servlet

O NPS (Novell Portal Services) oferece a opção de autenticar no URL durante seu acesso a qualquer dos URLs de servlet. Isso é possível: